책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 리눅스/유닉스 프로그래밍
· ISBN : 9788979142952
· 쪽수 : 960쪽
· 출판일 : 2004-12-10
책 소개
목차
Chapter 1. 실습 환경 설정과 준비
01. 시스템과 리눅스 운영체제의 준비
02. 커널 소스의 준비
03. 실습 기자재의 준비
04. 준비된 실습 환경 점검
Chapter 2. 리눅스 커널과 디바이스 드라이버
01. 운영체제로서의 리눅스
02. 리눅스 커널
03. 디바이스 드라이버
Chapter 3. 디바이스 파일과 저수준 파일 입출력
01. 디바이스 파일과 파일 입출력 함수
02. 저수준 파일 입출력 함수
03. 디바이스 파일 관련 함수
04. 저수준 파일 입출력 함수의 사용 예
o mknod 명령과 저수준 파일 입출력 함수 정리
Chapter 4. 간단한 모듈 테스트
01. 모듈 프로그램 맛보기
02. 모듈 소스 준비
03. 모듈 소스의 형식
04. 모듈 컴파일용 Makefile
05. 모듈 매개변수의 지정
06. 커널 메시지의 출력
07 커널과 모듈
Chapter 5장 메모리 할당과 해제
01. 변수
02. 동적 메모리
03. 동적 메모리 예제
04. 메모리 풀
05. 메모리 풀 예제
o 메모리 할당과 해제 함수의 정리
Chapter 6. 디바이스 드라이버의 등록과 해제
01. 디바이스 드라이버 제어 방식
02. struct file_operations
03. 문자 디바이스 드라이버 등록과 해제 및 구성
04. 응용 프로그램과 형 디바이스 드라이버의 호출 관계 예제
o 디바이스 드라이버 등록과 해제 함수 정리
Chapter 7. 디바이스 드라이버의 초기화와 종료
01. 초기화와 종료 처리
02. 모듈 사용 횟수의 관리
03. I/O 영역의 경쟁 처리 함수
o 디바이스 드라이버 초기화와 종료 함수의 정리
Chapter 8. 디바이스 드라이버의 읽기와 쓰기
01. 읽기와 쓰기의 구현
02. I/O 처리
03. 사용자 프로세스 공간과 커널 프로세스 공간
04. 디바이스 드라이버의 읽기와 쓰기 구현 예제
o 디바이스 드라이버 읽기와 쓰기 함수 정리
Chapter 9. 주 번호와 부 번호의 처리
01. 주 번호, 부 번호, 디바이스 타입
02. 부 번호에 의한 파일 처리 방법
03. 부 번호에 의한 파일 처리 예제
04. 예약된 주 번호
Chapter 10. 디바이스의 제어
01. 디바이스 제어
02. ioctl() 함수를 이용한 입출력 구현 예제
o 디바이스 제어 함수의 정리
Chapter 11. 시간 처리와 커널 타이머
01. 시간 처리
02. 커널 타이머
03. 커널 타이머를 이용한 LED 점멸 예제
o 시간 처리와 커널 타이머 함수 정리
Chapter 12. 인터럽트 처리
01. 인터럽트
02. 인터럽트 발생 시간 체크 예제
o 인터럽트 처리 함수 정리
Chapter 13. 블록킹 I/O
01. 프로세스의 사용 효율성과 잠들기(sleep) 구조
02. 블록킹 I/O
03. 인터럽트 발생 시간 체크 예제
04. wait_event_interruptible 매크로
o 블록킹 I/O 함수 정리
Chapter 14. 입출력 다중화
01. 입출력 다중화
02. 다중 입출력의 구현
03. 다중 입출력 처리를 이용한 프린터 포트 예제
o 입출력 다중화 함수 정리
Chapter 15. 태스크 큐와 워크 큐
01. 태스크 큐와 워크 큐의 필요성
02. 태스크 큐
03. 워크 큐
04. 태스크 큐 예
05. 워크 큐 예
06. 태스크 큐를 이용한 LED 점멸
06. 워크 큐를 이용한 키 입력 채터링 방지 예제
o 태스크 큐 함수 정리
o 워크 큐 함수 정리
Chapter 16. BottomHalf
01. TopHalf와 BottomHalf
02. 태스크 큐와 mark_bh() 함수
03. 태스크 큐 처리 수정(2.4-> 2.6)
04. 인터럽트 발생 시간 체크 예제
o 인터럽트 함수 정리
Chapter 17. proc 파일 시스템
01. 시스템 정보의 확인
02. proc 파일 시스템
03. proc 파일 시스템 동작 방식
04. 가산기 예제
o proc 파일 시스템 함수 정리
Chapter 18. 메모리 매핑
01. 물리 주소와 가상 주소
02. 주소 변환 함수
03. 프로세스 메모리 매핑
04. 매개변수 전달값을 보여주는 예제
05. VIDEO I/O 영역 메모리 mmap 구현 예제
06. nopage를 이용한 커널 메모리 mmap 구현 예제
o 메모리 매핑 함수 정리
Chapter 19. 모듈간의 상호 참조
01. 모듈간의 상호 참조와 EXPORT_SYMBOL 매크로
02. 커널 2.4의 /proc/ksyms와 커널 2.6의 /proc/kallsyms
03. 모듈간의 심볼 참조 예제
Chapter 20. 다중 프로세스 환경의 디바이스 드라이버
01. 단일 프로세스를 위한 디바이스 드라이버
02. 프로세스별 관련 관리
03. 비선점형 커널의 디바이스 드라이버
04. 선점형 커널의 디바이스 드라이버
Chapter 21. 디바이스 드라이버를 커널 소스에 포함시키는 방법
01. 사전 고려 사항
02. 커널에서의 커널 컴파일 옵션 파일
03. Makefile 문법 규칙
04. 디바이스 드라이버를 커널에 포함시키는 예
Chapter 22. 블록 디바이스 드라이버
01. 리눅스와 블록 디바이스
02. 하드디스크의 특성
03. 블록 디바이스 드라이버와 요구 큐
04. 버전별 블록 디바이스 처리
05. 커널 2.4의 블록 디바이스 드라이버
06. make_request 방식의 램디스크 예제
07. request 방식의 가상의 하드디스크 예제
08. 커널 2.6의 블록 디바이스 드라이버
09. make_request 방식의 램디스크 예제
10. request 방식의 가상의 하드디스크 예제
o 블록 디바이스 함수 정리
Chapter 23. 네트워크 디바이스 드라이버
01. 리눅스와 네트워크 디바이스 드라이버
02. 네트워크 디바이스 드라이버 등록과 제거
03. 보편적인 초기화 및 등록 처리 절차
04. struct net_device의 이해
05. 네트워크 디바이스의 열기와 닫기
06. 전송과 수신
07. 통계 처리
08. 네트워크 디바이스 제어 ioctl
09. 멀티 캐스트 처리
o 네트워크 디바이스 드라이버 함수 정리
Chapter 24. 디바이스 드라이버 파일 시스템(devfs)
01. devfs 파일 시스템
02. 디바이스 파일 생성 예제
o devfsc 파일 시스템 함수 정리
Chapter 25. 시스템 파일 시스템(sysfs)
01. sysfs 파일 시스템
02. sysfs 파일 시스템의 이용
Chapter 26장. 이기종 시스템으로의 이식, 시그널, 헬퍼
01. 이기종 시스템으로의 디바이스 드라이버 이식
02. ARM용 DIO 디바이스 드라이버 예제
03. 시그널과 SIGIO
04. call_usermodehelper 사용 예제
05. modprobe와 모듈 적재 요청 처리
Chapter 27. DMA와 PCI 디바이스
01. DMA
02. PCI