컨텐츠상세보기

리눅스 커널 내부구조
리눅스 커널 내부구조
  • 저자<백승재>,<최종무> 공저
  • 출판사아티오
  • 출판일2016-03-08
  • 등록일2017-11-06
보유 1, 대출 0, 예약 0, 누적대출 8, 누적예약 0

책소개

이 책은 저자가 아는 내용만큼은 독자가 쉽게 이해 할 수 있는 책을 만들어보자는  생각 하나로 집필을 시작하여 2008년에 초판이 발행된 후 분에 넘칠 정도로 많은 분들에게 사랑을 받았다. 더 많은 유용한 내용과 최신 정보가 반영된 개정판을 꾸준히 만드는 것이 그 분들에게 보답할 수 있는 유일한 방법이라는 것을 너무도 잘 알고 있기에 늦게나마 이렇게 개정판을 출간한다.

이번 개정판은 더 재미있는 실습 예제들과 최근 커널에서 변경된 여러 가지 흥미로운 내용들이 추가되어 있다. 이를 통해 막
연히 이론으로만 배워왔던 운영체제, 그중에서도 리눅스라는 운영체제에 대해 보다 심도 있는 이해가 가능하길 바란다. 또한 부디‘많이 팔린 책’보다는‘좋은 책’으로 기억될 수 있길 바란다.

목차

제0장 운영체제 이야기
1. 운영체제 이야기
2. 운영체제 동작 비유

제1장 리눅스 소개
1. 리눅스의 탄생
2. 유닉스와 리눅스
3. 리눅스의 배포판
4. 리눅스의 장점
5. 쉘(Shell) 사용해보기

제2장 리눅스 커널 구조
1. 리눅스 커널 구조
2. 리눅스 커널 컴파일
실습 문제

제3장 태스트 관리
1. 프로세스와 쓰레드 그리고 태스크
2. 사용자 입장에서 프로세스 구조
3. 프로세스와 쓰레드의 생성과 수행
4. 리눅스의 태스크 모델
5. 태스크 문맥
6. 상태 전이(State Transtion)의 실행 수준 변화
7. 런큐와 스케줄링
8. 문맥 교환
9. 태스크와 시그널
실습 문제

제4장 메모리 관리
1. 메모리 관리 기법과 가상 메모리
2. 물리 메모리 관리 자료 구조
   2-1 node
   2-2 zone
   2-3 page frame
3. Buddy와 Slab
   3-1 버디 할당자(Buddy Allocator)
   3-2 Lazy Buddy
   3-3 슬랩 할당자(Slab Allocator)
4. 가상 메모리 관리 기법
5. 가상 메모리와 물리 메모리의 연결 및 변환
6. 커널 주소 공간
7. Slub, Slob
실습 문제

제5장 파일시스템과 가상 파일시스템
1. 파일 시스템 일반
2. 디스크 구조와 블록 관리 기법
3. FAT 파일시스템
4. inode 구조
5. Ext2 파일시스템
6. Ext3 파일시스템과 Ext4 파일시스템
7. 가상 파일시스템(Virtual File System)
8. 태스크 구조와 VFS 객체
9. 파일시스템 제어 흐름 분석
실습 문제

제6장 인터럽트와 트랩 그리고 시스템 호출
1. 인터럽트 처리 과정
2. 시스템 호출 처리 과정
3. 새로운 시스템 호출 구현
4. 시스템 호출 구현 확장
   4-1 커널 정보 출력
   4-2 인자 전달
   4-3 구조체를 사용한 인자 전달
실습 문제

제7장 리눅스 모듈 프로그래밍
1. 마이크로 커널
2. 모듈 프로그래밍 무작정 따라하기
3. 시스템 호출 hooking
4. 시스템 호출 hooking 모듈 확장
실습 문제

제8장 디바이스 드라이버
1. 디바이스 드라이버 일반
2. 문자 디바이스 드라이버 구조
3. 블록 디바이스 드라이버 구조
실습 문제

제9장 네트워킹
1. 계층 구조
2. 주요 커널 내부 구조
3. 리눅스에서 통신 프로토콜의 제어 흐름
실습 문제

제10장 운영체제 관련 실습
1. 쉘(Shell)
2. 스케줄러와 시뮬레이팅 환경
3. 버디 할당자와 시뮬레이팅 환경
4. FAT 파일시스템과 디스크 에뮬레이팅 환경
   4-1 파일 시스템 마운트
   4-2 파일의 생성 및 쓰기
   4-3 파일의 탐색 및 읽기
   4-4 파일의 삭제

부록A 리눅스와 가상화 그리고 XEN
1. 가상화 기법의 이해
2. 가상화 기술
3. Xen
   3-1 전가상화 기술을 이용한 리눅스 설치
   3-2 전가상화 기술을 이용한 윈도즈 설치

부록B MTD와 YAFFS
1. 플래시 메모리의 이해
2. MTD
3. YAFFS

부록C Map of the Linux