본문

목차정보

[목차정보]
리눅스 커널과 디바이스 드라이버 실습 
저작권 
저자 소개 
문서 표준 
목차 

제1부 리눅스 커널 이해 및 실습 

제1장 커널 자료구조 
1.1 링크드 리스트(LINKED LISTS) 
1.2 큐(QUEUES) 
1.3 트리(TREES) 
1.4 적절한 자료구조 선택 
1.5 알고리즘 효율성 

제2장 프로세스(PROCESS) 
2.1 프로세스(PROCESS) 이해 
2.2 쓰레드(THREAD) 
2.3 프로세스 문맥 교환(CONTEXT SWITCH) 
2.4 스케쥴링 
2.4.1 스케쥴러 자료구조(DATA STRUCTURES) 
2.4.2 스케쥴링 우선순위값(PRIORITIES) 
2.4.3 스케쥴링 정책(POLICY) 
2.4.4 SCHEDULER CLASSES 
2.4.5 RUN QUEUES 
2.4.6 스케쥴링 개체들(SCHEDULING ENTITIES) 
2.4.7 PERIODIC SCHEDULER 
2.4.8 프로세스 깨움(WAKE UP PROCESS) 
2.4.9 WAIT QUEUES 

제3장 인터럽트(INTERRUPT) 
3.1 INTERRUPTS와 EXCEPTIONS 
3.2 INTERRUPT 문맥교환(CONTEXT SWITCHING) 
3.3 INTERRUPT HANDLER 등록 
3.4 LINUX INTERRUPT 구조체 
3.5 BOTTOM HALVES (SOFTIRQS / TASKLETS / WORK QUEUES) 
3.5.1 SOFTIRQS 
3.5.2 TASKLETS 
3.5.3 WORK QUEUES 

제4장 동기화(SYNCHRONIZATION) 
4.1 보호 영역과 경쟁 조건들 
4.2 LOCKING 
4.3 동기화 방법들 
4.4 동기화 사례 

제5장 시간(TIME) 
5.1 THE TICK RATE: HZ 
5.2 HARDWARE CLOCKS AND TIMERS 
5.3 타이머 인터럽트 핸들러 
5.4 타이머들(TIMERS) 
5.5 지연 실행(DELAYING EXECUTION) 

제6장 메모리 
6.1 메모리 관리 기법들 
6.2 X86 아키텍쳐 메모리 관리 기법 
6.3 페이지 변환 장치(PAGING UNIT) 
6.4 MMU(MEMORY MANAGEMENT UNIT) 이해 
6.5 SLAB/SLOB/SLUB 할당 

제7장 커널 자료구조 실습 
7.1 링크드 리스트(LINKED LIST) 실습 
7.2 큐(QUEUE) 실습 
7.3 RED-BLACK TREE 실습 

제2부 리눅스 디바이스 드라이버 실습 

제8장 커널내부 들여다보기 
2.1 리눅스 커널소스 요약설명 
2.2 부팅 업 
2.3 커널 모드와 사용자 모드 
2.4 프로세스 문맥과 인터럽트 문맥 
2.5 커널 타이머들 
2.6 커널안의 동시성 
2.7 프로세스 파일시스템(PROCESS FILESYSTEM) 
2.8 메모리 할당 
2.9 리눅스 소스 위치 

제9장 커널에 보관된 기능들 
9.1 커널 쓰레드 
9.2 도움 인터페이스들(HELPER INTERFACES) 
9.3 리눅스 소스 위치 

제10장 기본원리 이해 
10.1 커널 모듈 프로그래밍 방법 
10.2 장치들과 드라이버들 소개 
10.3 인터럽트 핸들링 
10.4 리눅스 소스 위치 

제11장 문자 드라이버들 
11.1 문자 드라이버 기초 
11.2 디바이스 예제: 시스템 CMOS 
11.3 데이터 유효성 감지(SENSING DATA AVAILABILITY) 
11.4 병렬 포트에게 이야기하기 
11.5 RTC 서브시스템 
11.6 가상 문자 드라이버들(PSEUDO CHAR DRIVERS) 
11.7 기타 드라이버들(MISC DRIVERS) 
11.8 문자 통고(CHARACTER CAVEATS) 
11.9 리눅스 소스 위치 

제12장 직렬통신 드라이버들(SERIAL DRIVERS) 
12.1 계층적 구조 
12.2 UART DRIVERS 
12.3 TTY DRIVERS 
12.4. 라인 규율(LINE DISCIPLINES) 
12.5 리눅스 소스 위치 

제13장 입력장치 드라이버들 
13.1 입력 이벤트 드라이버들 
13.2 입력 장치 드라이버들 
13.3 리눅스 소스 위치 

제14장 주변장치 연결(PCI) 
14.1 주소와 식별 
14.2 PCI 영역에 접근 
14.3 직접 메모리 접근(DIRECT MEMORY ACCESS) 
14.4 디바이스 예제: 이더넷-모뎀 카드 
14.5 리눅스 소스 위치 

제15장 USB(UNIVERSAL SERIAL BUS) 
15.1 USB 구조 
15.2 USB 드라이버 데이터 구조체 
15.3 USB 드라이버 실습예제 (USB-FT245) 
15.4 리눅스 소스 위치 

제16장 비디오 드라이버들 
16.1 디스플레이 구조 
16.2 리눅스-비디오 서브시스템 
16.3 디스플레이 파라미터들 
12.4 프레임 버퍼 드라이버들 
12.5 콘솔 드라이버들 
12.6 리눅스 소스 위치 
기부금 안내