게시글
질문&답변
2024.05.15
캐시의 친화적인 코드
캐시에 친화적인 코드는 캐시 히트를 높힐 수 있습니다. 3가지 예시만 들어보겠습니다. 1> 특정 프로세스가 자주 실행되면 특정 core(예시: CPU1, CPU2)에서만 실행되도록 설정할 수 있습니다. 만약 프로세스가 CPU1 코어에서 자주 실행되면 해당 프로세스가 실행했던 코드나 데이터가 L1 캐시에 남아 있을 가능성이 높기 때문입니다. 그 결과 캐시 히트율을 높힐 수 있습니다. 2> 되도록 어떤 메모리 데이터에 접근할 때 되도록 근접한 원소에 접근하거나 순차적으로 처리하면 캐시 히트율을 높힐 수 있습니다. 캐시에 데이터나 코드를 로딩할 때 캐시 라인의 크기 만큼 로딩하기 때문입니다. 3> 버퍼에 되도록 접근하려는 데이터를 많이 로딩하고 접근하면 또한 캐시 히트율을 높힐 수 있습니다. 감사합니다.
- 0
- 1
- 31
질문&답변
2024.05.12
EL1 IRQ??
질문 주신 내용에 대해 답신 드립니다. (1) IRQ를 EL2에서 후킹 여기서 말하는 IRQ는 외부 페리퍼럴 디바이스에서 유발되는 인터럽트를 뜻합니다. IRQ를 EL2에서 후킹하는 동작이 비활성화된 상태와 활성화된 상태를 비교해서 설명드리면 다음과 같습니다. [비활성화] 1. EL1(리눅스 커널: 게스트 OS)에서 코드가 실행 2. 외부 페리퍼럴에서 인터럽트가 유발 3. EL1에 있는 익셉션 핸들러에서 인터럽트를 핸들링 [활성화] 1. EL1(리눅스 커널: 게스트 OS)에서 코드가 실행 2. 외부 페리퍼럴에서 인터럽트가 유발 3. EL1 대신 EL2(하이퍼바이저)에 있는 익셉션 핸들러에서 인터럽트를 핸들링 (2) irq마다 EL1 irq EL2 irq와 같이 처리해야하는 EL이 정해져있나 시스템에서 각각 인터럽트는 프로젝트의 스펙에 따라 각각 다른 방식으로 설정할 수 있습니다. 만약 휴대폰에 터치 인터럽트, 조도 센서 인터럽트, 지문 센서 인터럽트 그리고 카메라 인터럽트가 있으면, 각기 다른 방식으로 설정할 수 있습니다. 예시는 다음과 같습니다. 터치 인터럽트, 조도 센서: EL1, 지문 센서 인터럽트: EL3, 카메라 인터럽트: EL2 설명드린 내용을 조금 더 일반화해서 다음과 같이 정리할 수 있습니다. A) 일반적으로 인터럽트가 유발되면 EL1에서 받아서 처리한다. B) 특정 인터럽트를 EL2나 EL3에서 처리하고 싶으면 관련 레지스터 HCR_EL2, SCR_EL3를 설정해야 한다. 추가로 궁금한 점이 있으면 언제든 질문 남겨주세요. 감사합니다.
- 0
- 2
- 31
질문&답변
2024.05.08
강의자료 요청
강의 커리큘럼에 아래 강의 자료를 올렸습니다. - 첨부 파일: Arm아키텍처_2부_강의자료(0505-2024).zip '2부 저자 직강-강의 자료' 섹션에 '수업 0 : 수업 자료'에 가시면 강의 문서를 내려 받을 수 있습니다. 감사합니다.
- 0
- 2
- 52
질문&답변
2024.05.07
T32 맥북 사용
강의 소개에도 명시됐지만, 이번 강의에 업로드된 TRACE32 버전은 윈도우를 제외한 다른 OS에서는 실행되지 않습니다. 이 점 양해 부탁드립니다.
- 0
- 2
- 66
질문&답변
2024.05.07
라즈베리 OS
x86기반의 Virtual Box(우분투 실행)에서도 실습 실행이 가능합니다만, 되도록 라즈베리 파이(Armv8 지원)에서 실습하시는 것을 권장드립니다.
- 0
- 2
- 50
질문&답변
2024.05.07
시스템 반도체 개발 생태계에서의 고객, 산업
삼성전자의 경우 '가전을 담당하는 사업부', '휴대폰을 제조하는 사업부'가 고객사(OEM)가 될 수 있습니다. 만약 시스템 반도체를 사용해 완제품을 개발하는 중국이나 미국 업체가 있다면 또한 고객사(OEM)가 될 수 있습니다. 다른 궁금한 점이 있으면 또 문의 주세요. 감사합니다.
- 0
- 1
- 26
질문&답변
2024.05.07
강의자료 요청
2부 강의 자료는 5일 이내에 업로드해서 공유드리겠습니다. 감사합니다.
- 0
- 2
- 52
질문&답변
2024.04.14
[문의] Trace32 download 위치
'리눅스 소개와 리눅스 커널 Overview [저자직강 1부-1]' 강의는 무료 강의로 업로드했는데, 어떻게 유료로 들으셨는지 궁금합니다. 만약에 유료로 들으셨다면 환불 처리 진행 부탁드립니다. '리눅스 소개와 리눅스 커널 Overview [저자직강 1부-1]'에는 TRACE32 프로그램을 직접 내려 받아 실습할 수 있다는 어떤 내용도 포함되어 있지 않습니다. 대신 아래 강의에는 분명히 명시되어 있습니다. 리눅스 커널의 구조와 원리: 디버깅 - Advanced 실전 [저자 직강 1부-3] 리눅스 커널의 구조와 원리: 프로세스 [저자 직강 1부-4] 리눅스 커널의 구조와 원리: 인터럽트 [저자 직강 1부-5] 수강생님께서 혼돈이 될 수 있도록 강의의 소개를 올린 점 양해 부탁드립니다. (문구는 수정했습니다.)
- 0
- 3
- 146
질문&답변
2024.04.13
[문의] Trace32 download 위치
아래 강의(유료) 중 하나를 수강하시면 강의 리소스 메뉴에서 T32 프로그램(교육용)을 내려받아 직접 실습을 하실 수 있습니다. 이 점 참고하세요. 리눅스 커널의 구조와 원리: 디버깅 - Advanced 실전 [저자 직강 1부-3] 리눅스 커널의 구조와 원리: 프로세스 [저자 직강 1부-4] 리눅스 커널의 구조와 원리: 인터럽트 [저자 직강 1부-5] 감사합니다.
- 0
- 3
- 146
질문&답변
2024.04.13
실습에 사용되는 코드 스크립트를 받을 수 있나요?
'섹션 5 : ftrace 디버깅 실습 (with 라즈베리 파이)'의 '수업 0'으로 ftrace를 설정하는 셸 스크립트와 ftrace 로그 파일을 업로드했습니다. 아래 스틸컷을 참고하셔서 실습 파일을 내려 받아 주세요. (사진)
- 0
- 3
- 121