
Description
신입 리눅스 시스템 개발자부터 5년차 개발자가 실무를 하기 위해 알아야 할
리눅스 커널의 주요 서브시스템을 다룹니다!
리눅스 커널의 주요 서브시스템을 다룹니다!
실전 개발에서 신입 사원 옆에 친절한 선배 개발자가 앉아서 리눅스 커널에 대해 꼼꼼하게 알려주듯, 리눅스 커널을 쉽고 친절하게 설명하는 책입니다. 이 책은 최신 버전(LTS: 4.19)의 리눅스 커널 소스를 함수 흐름을 따라가며 자세히 분석하고 ftrace와 TRACE32 같은 디버깅 툴을 활용해 커널의 동작 원리를 설명합니다. 또한 라즈베리 파이에서 리눅스 커널의 소스코드를 직접 수정해 설치한 다음 커널을 디버깅하는 방법을 다룹니다. 각 장에서 소개하는 커널 디버깅 방법은 실무 개발에 그대로 적용할 수 있습니다.
▣ [1부] 커널 디버깅(ftrace), 프로세스, 인터럽트, 인터럽트 후반부, 워크큐 편
먼저 커널을 디버깅하는 방법과 함께 ftrace 사용법을 소개합니다. 커널을 실행하는 주인공인 프로세스와 인터럽트를 커널이 처리하는 세부 동작 원리를 다룹니다. 인터럽트 후반부를 처리하는 IRQ 스레드(threaded IRQ)와 Soft IRQ 기법과 커널에서 후반부를 처리하는 워크큐에 대해 설명합니다.
▣ [2부] 타이머, 동기화, 스케줄링, 시스템 콜, 시그널, 가상 파일 시스템, 메모리 관리 편
커널이 시간의 흐름을 관리하는 동작 원리와 동기화 기법(스핀락, 뮤텍스)을 다룹니다. 여러 프로세스의 실행 흐름을 관리하는 스케줄링의 세부 구현 방식과 시스템 콜과 시그널을 커널에서 어떤 방식으로 처리하는지 설명합니다. 다양한 파일 시스템을 공존해 실행시킬 수 있는 가상 파일 시스템과 커널의 메모리를 관리하는 방식에 대해 다룹니다.
부록으로 리눅스 커널의 메일링 리스트를 활용하는 방법과 리눅스 커널에 기여하는 방법을 자세히 소개합니다.
▣ [1부] 커널 디버깅(ftrace), 프로세스, 인터럽트, 인터럽트 후반부, 워크큐 편
먼저 커널을 디버깅하는 방법과 함께 ftrace 사용법을 소개합니다. 커널을 실행하는 주인공인 프로세스와 인터럽트를 커널이 처리하는 세부 동작 원리를 다룹니다. 인터럽트 후반부를 처리하는 IRQ 스레드(threaded IRQ)와 Soft IRQ 기법과 커널에서 후반부를 처리하는 워크큐에 대해 설명합니다.
▣ [2부] 타이머, 동기화, 스케줄링, 시스템 콜, 시그널, 가상 파일 시스템, 메모리 관리 편
커널이 시간의 흐름을 관리하는 동작 원리와 동기화 기법(스핀락, 뮤텍스)을 다룹니다. 여러 프로세스의 실행 흐름을 관리하는 스케줄링의 세부 구현 방식과 시스템 콜과 시그널을 커널에서 어떤 방식으로 처리하는지 설명합니다. 다양한 파일 시스템을 공존해 실행시킬 수 있는 가상 파일 시스템과 커널의 메모리를 관리하는 방식에 대해 다룹니다.
부록으로 리눅스 커널의 메일링 리스트를 활용하는 방법과 리눅스 커널에 기여하는 방법을 자세히 소개합니다.


디버깅을 통해 배우는 리눅스 커널의 구조와 원리 1 : 라즈베리 파이로 따라하면서 쉽게 이해할 수 있는 리눅스 커널
$38.61
- Choosing a selection results in a full page refresh.