디버깅으로 배우는 RISC-V 아키텍처 -2부
₩121,000
40%
₩72,600
초급 / cpu-architecture, cpu, riscv
오픈 소스 기반의 최신 CPU 아키텍처인 RISC-V의 핵심 개념과 실용적인 팁을 쉽고 상세하게 설명합니다.
초급
cpu-architecture, cpu, riscv
국내 시스템 소프트웨어 분야에서 전무후무한! 'Arm 아키텍처(Armv8-A, Armv7-A)'와 '리눅스 커널' 책을 쓴 저자(2권의 책 모두 대한민국 학술원 우수도서에 선정)이며, 최신 시스템 소프트웨어 트렌드(전기자동차, 시스템 반도체- 시스템 소프트웨어)를 가장 잘 알고 있는 현업 개발자입니다. 또한 시스템 소프트웨어 분야에서 가장 지식 전파 활동을 활발하게 하는 교육자입니다.
'시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리'(2024년, 대한민국 학술원 우수도서상) 저자
'디버깅을 통해 배우는 리눅스 커널의 구조와 원리' (2021년, 대한민국 학술원 우수도서상) 저자
'프로그래머스 데브 코스: 리눅스 시스템 및 커널 전문가' 메인 강사
2022년 6월, 한국컴퓨터종합학술대회 (KCC2022) - 튜토리얼 발표 [ftrace를 이용해 리눅스 커널 정복하기]
LG전자 '리눅스 커널' 및 'Armv8 아키텍처' 사내 강사(국내 및 해외 개발자 포함) - (2020년~현재)
국내에서 어느 누구보다 리눅스 커널과 Arm 아키텍처(Armv8-A, Armv7-A)를 잘 설명할 수 있는 교육자라고 자신있게 말씀드릴 수 있습니다.
'시스템 소프트웨어 개발자를 위한 Arm - basic course'
'시스템 소프트웨어 개발자를 위한 Arm - advanced course'
시스템 소프트웨어 개발자를 위한 Linux kernel - basic course
체계적으로 Arm 아키텍처(Armv8-A, Armv7-A)와 리눅스 커널을 배우시려는 분은 로드맵(전체 강의 30% 할인)을 활용하시면 좋습니다.
디버깅으로 배우는 RISC-V 아키텍처 -2부
₩121,000
40%
₩72,600
초급 / cpu-architecture, cpu, riscv
오픈 소스 기반의 최신 CPU 아키텍처인 RISC-V의 핵심 개념과 실용적인 팁을 쉽고 상세하게 설명합니다.
초급
cpu-architecture, cpu, riscv
신입 개발자를 위한 Armv7-A Architecture Overview (저자 직강)
₩55,000
4일만
30%
₩38,500
입문 / ARM Architecture, armv7, cpu-architecture
시스템 소프트웨어의 기본 중의 기본, 최신 Arm 아키텍처(Armv7-A)의 핵심을 "시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리"의 저자가 제대로 잡아드립니다!
입문
ARM Architecture, armv7, cpu-architecture
신입 개발자를 위한 Armv8-A Architecture Overview (저자 직강)
₩55,000
4일만
30%
₩38,500
입문 / ARM Architecture, 임베디드, armv8, cpu-architecture
5.0
(1)
시스템 소프트웨어의 기본 중의 기본, 최신 Arm 아키텍처(Armv8-A)의 핵심을 "시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리"의 저자가 제대로 잡아드립니다!
입문
ARM Architecture, 임베디드, armv8
디버깅으로 배우는 RISC-V 아키텍처 -1부
₩121,000
4일만
30%
₩84,700
초급 / cpu, cpu-architecture, riscv
5.0
(4)
오픈 소스 기반의 최신 CPU 아키텍처인 RISC-V의 핵심 개념과 실용적인 팁을 쉽고 상세하게 설명합니다.
초급
cpu, cpu-architecture, riscv
리눅스 커널의 구조와 원리: 인터럽트 후반부 [저자 직강 1부-6]
₩55,000
4일만
30%
₩38,500
초급 / 운영체제, Linux, linux-kernel, ARM Architecture, interrupt
5.0
(1)
시스템 소프트웨어에서 가장 많이 쓰이는, 최신 리눅스 커널(v6.1)의 '인터럽트 후반부'의 핵심 개념을 "디버깅을 통해 배우는 리눅스 커널의 구조와 원리"의 저자가 제대로 설명합니다.
초급
운영체제, Linux, linux-kernel
리눅스 커널의 구조와 원리: 인터럽트 [저자 직강 1부-5]
₩55,000
4일만
30%
₩38,500
초급 / 운영체제, Linux, linux-kernel, ARM Architecture, interrupt, irq
5.0
(2)
시스템 소프트웨어에서 가장 많이 쓰이는, 최신 리눅스 커널(v6.1)의 인터럽트 핵심 개념을 "디버깅을 통해 배우는 리눅스 커널의 구조와 원리"의 저자가 제대로 설명합니다.
초급
운영체제, Linux, linux-kernel
질문&답변
MMU와 캐시의 관계
부트로더는 부팅할 때 실행되며 다음과 같은 특징을 지닙니다:1. 부팅할 때 한번 만 실행된다.2. 칩셋이나 하드웨어 리소스(UART, 파워 콘트롤)를 초기화한다.3. 커널이나 RTOS 이미지를 파티션 테이블에서 읽어서 실행 시킨다.4. 물리 주소 공간에서 실행된다.일반적으로는 물리 주소 기반으로 실행되는 시스템에서, 캐시를 사용하기 위해서 반드시 MMU를 활성화할 필요는 없습니다. 감사합니다.
질문&답변
TEE OS뭔가요?
트러스티드 커널은 시큐어 월드에서 실행되는 RTOS입니다.TEE OS는 포괄적인 개념인데요. TEE OS는 시큐어 월드에서 실행되는 소프트웨어를 의미합니다. 혹시 추가로 궁금한 점이 있으면 질문 남겨주세요.감사합니다.
질문&답변
리눅스-프로세스 강의 교재 자료
강의 자료는 정리해서 2/12까지 업로드할 예정입니다. 질문 주셔서 감사합니다.
질문&답변
강의안 공유 요청
강의 자료를 업로드했습니다. (일정보다 늦게 올린 점 양해 부탁드립니다.)'섹션 1- 강의 소개'를 확인하시면 아래 메뉴에서 강의 문서를 내려 받을 수 있습니다.강의 자료 (전체 강의 슬라이드 문서)감사합니다.
질문&답변
스택공간에 데이터를 저장할 떄
일반적으로 스택공간에 데이터를 저장하면 다음과 같은 동작이 수행됩니다:우선 캐시에 먼저 데이터를 써줍니다.캐시에 써준 데이터를 RAM에 저장할 시점(짧은 시간)에 캐시 데이터를 RAM에 써줍니다. (이를 캐시 정책이라고 하며 write-back이라고도 합니다.)참고로, Arm 프로세서의 스펙에 따라 캐시 정책이 다른 방식으로 적용될 수도 있습니다.감사합니다.
질문&답변
MMU의 Page Table과 관련된 질문이 있습니다.
1. TTBR1_EL1, TTBR0_EL1 레지스터에 저장된 주소는 물리 주소입니다.2. 추가로 설명드립니다.각 PGD, PMD 그리고 PTE는 다음과 같습니다:PGD는 1st 룩업 페이지 테이블PMD는 2nd 레벨 페이지 테이블PTE는 3rd 레벨 페이지 테이블 페이지 변환 과정은 구체적으로 아래와 같은 과정으로 수행됩니다:PGD에 접근하기 위해서는 TTBR1_EL1(커널 공간) 혹은 TTBR0_EL1(유저 공간) 레지스터를 사용합니다. TTBRn_EL1을 1st 룩업 페이지 테이블이라고 합니다. PGD에는 2nd 레벨 페이지 테이블의 엔트리 주소(물리)를 담고 있습니다.PMD는 2nd 페이지 테이블로써 물리 주소를 담고 있는 페이지 테이블은 아닙니다. PTE의 엔트리 주소를 담고 있죠.PTE에 접근하면 실제 물리 주소를 확인할 수 있습니다. Armv8-A 에서는 가상 주소를 멀티 레벨 페이지로 변환하는데, TTBRn_EL1을 1st 룩업 페이지 테이블이라고 합니다.3. 네, 제대로 이해하셨습니다. 만약 EL1에서는 MMU를 활성화하고, EL2에서는 MMU를 활성화하지 않게 되면 EL1에서 접근하는 주소는 가상 주소인 반면, EL2에서 접근하는 주소는 실제 물리주소에 접근할 수 있습니다. 대부분 EL0, EL1, EL2까지 MMU를 활성화해서 사용합니다.EL0/EL1에서 MMU를 활성화하기 위해서는 TCR_EL1, SCTLR_EL1를 설정해야 합니다. 만약 EL2에서도 MMU를 활성화하려면 TCR_EL2, SCTLR_EL2를 활성화해야 합니다. 감사합니다.
질문&답변
crash utility build 오류
지금 사용 중인 라즈베리 파이 4는 64비트 기반의 Armv8-A 아키텍처로 보입니다.따라서 아래와 같은 명령어를 사용해서 빌드 부탁드립니다.$ make(주의 사항) 에러가 발생한 상태의, 내려 받은 crash-utility 소스를 모두 지워주세요. 그래서 다시 crash-utility 소스를 새롭게 내려 받으신 후 빌드를 해주세요.
질문&답변
하이퍼바이져
네, 이해하신 부분이 맞습니다. 관련 동작은 성능에 영향을 끼칠 정도는 아닙니다.
질문&답변
device memory
일반적으로 실제 프로젝트(하이퍼바이저)에서는 device memory region은 가상화해서 처리하지는 않습니다. 구현 복잡도가 늘어나기 때문입니다.
질문&답변
mmu table 위치
네, 이해하신 부분이 맞습니다. MMU의 page walk와 관련된 동작은 Hardware 적으로 처리됩니다.
김동현 (Austin Kim)님의 소개 - 인프런