책이름: 리눅스 커널 프로그래밍
저  자: 한동훈
출판사: 한빛미디어
장  수: 1104쪽

리눅스 커널 프로그래밍에 대해 매우 자세하고 이해하기 쉽게 설명되어 있습니다. 커널 프로그래밍을 위해 바로 어려운 내용부터 들어 가는 것이 아니라 VMWare에서 데비안 설치 및 개발환경 구축하는 방법으로 시작해서 리눅스의 내부 처리해 대한 설명과 함께 모듈 프로그램에 대해 설명하고 있어서 처음 커널 프로그래밍을 접하는 조보자도 쉽게 자습할 수 있도록 도와 주는 자습서 및 참고서입니다.

리눅스 커널 프로그래밍을 처음 접하시는 분들께 권하고 싶습니다.

아래는 책의 목차입니다.

chapter 1 리눅스 커널 프로그래밍 환경 구축
01 리눅스 배포판의 종류
02 가상 머신 소프트웨어: VMWare, VirtualPC
03 VMWare 환경 설정
04 데비안 설치하기
05 데비안 패키지 관리
06 ssh 환경 설정하기
07 bash 환경 설정하기
08 커널 프로그래밍 개발 도구 설치하기
09 Hello World 테스트 컴파일
10 부트 로더: LILO, GRUB
참고자료 89

chapter 2 커널 컴파일 및 개발 환경 구축
01 커널 소스 코드 구하기
02 커널 빌드 과정
03 커널 2.4 빌드
04 커널 2.6 빌드
05 리눅스 환경의 커널 분석 도구
06 윈도우 환경의 커널 분석 도구 142
07 윈도우와 VMWare 간에 파일 공유하기 148
참고자료 158

chapter 3 리눅스 시스템 호출
01 사용자 공간과 커널 공간
02 인터럽트 처리
03 IDT와 리눅스 시스템 호출
04 리눅스 시스템 호출
05 나만의 시스템 호출 추가하기
06 매개변수를 이용한 시스템 호출
07 구조체를 이용한 시스템 호출
08 CPU 정보를 보여주는 시스템 호출
09 _syscall# 매크로에서는 무슨 일이?
10 프로세스 주소 공간 매크로
11 시스템 호출, call과 sysenter
참고자료 215

chapter 4 모듈 프로그래밍
01 모듈과 일체형 커널
02 모듈 개발
03 모듈에 대해 알아야 할 것들
04 모듈의 상호참조
05 모듈과 매개변수
06 매개변수 처리의 깊은 곳!
07 시스템 호출 래핑
08 커널 모듈 Hacks
참고자료

chapter 5 문자 디바이스 프로그래밍
01 디바이스의 이해
02 문자 디바이스 관련 커널 구조
03 문자 디바이스 작성
04 kmalloc( ) 함수
05 디바이스 사용 횟수 처리
06 구조체의 함수 포인터 선언 방법
07 IOCTL 프로그래밍
08 cdev를 이용한 문자 디바이스 작성
09 register_chrdev( ) 분석
10 MD5 디바이스 실습
11 문자 디바이스 관련 커널 소스 분석
참고자료

chapter 6 proc 파일시스템
01 proc 파일시스템이란?
02 procfs 함수
03 simple proc 작성
04 adder proc 작성
05 fun proc으로 root되기
06 타이머와 jiffies
07 정교한 시간측정
08 procfs의 동작
참고자료

chapter 7 블록 디바이스 프로그래밍
01 하드디스크의 구조
02 하드디스크의 성능
03 블록 디바이스 구조
04 I/O 관련 기본 자료구조
05 블록 디바이스 드라이버 관련 구조(커널 2.4)
06 가상 램디스크 실습(커널 2.4)
07 블록 디바이스 드라이버 관련 구조(커널 2.6)
08 가상 램디스크 실습(커널 2.6)
참고자료

chapter 8 메모리 관리
01 메모리 모델
02 가상 메모리와 페이지 테이블
03 x86 아키텍처의 메모리 모델
04 리눅스 커널의 메모리 모델
05 프로세스에서 바라본 메모리
06 메모리 존
07 메모리 할당 함수
08 버디 시스템(Buddy System)
09 슬랩 할당자(Slab Allocator)
10 메모리 매핑
11 커널 자료구조: 연결 리스트
12 프로세스 메모리 뷰어 645
13 LRU 정책
참고자료

chapter 9 프로세스 관리
01 프로세스 자료 구조
02 프로세스 생성
03 프로세스 종료
04 프로세스 스케줄링
05 리눅스의 스케줄링
06 SJF 스케줄러 구현
07 O(1) 스케줄러를 커널 2.4에 포팅하기
참고자료

chapter 10 파일시스템
01 가상 파일시스템
02 SFS 파일시스템 구현
참고자료

chapter 11 네트워크
01 OSI 모델
02 TCP/IP 스택
03 네트워크 프로그래밍
04 리눅스의 네트워크 모델
05 net_device 구조체
06 리눅스의 패킷 처리
07 MSN 메신저 차단(커널 2.4)
08 넷필터
09 MSN 메신저 차단(넷필터)
10 패킷 뷰어
11 프로토콜 후킹
참고자료

부록 A 레드햇9 설치
부록 B 페도라 코어6 설치
부록 C 데비안에서 GUI 환경 구축하기
부록 D 커널 변경 사항
부록 E 윈도우 디바이스 드라이버

주요 그림 찾아보기
찾아보기