책소개
리눅스 커널 활용서 개정판. 이 책에서는 파일 버퍼링과 프로세스 스와핑, DMA를 비롯한 메모리 관리, 가상 파일 시스템과 Ext2 파일시스템, 프로세스 생성과 스케줄링, 타이밍, 커널 내 동기화, 프로그램 실행 등을 담고있다.
목차
1장 소개
리눅스와 다른 유닉스 계열 커널 비교
하드웨어 의존성
리눅스 버전
운영체제의 기초 개념
유닉스 파일 시스템 개요
유닉스 커널의 개요
2장 메모리 주소 지정
메모리 주소
하드웨어 세그먼테이션
리눅스에서의 세그먼테이션
하드웨어 페이징
리눅스 페이징
3장 프로세스
프로세스와 경량 프로세스, 스레드
프로세스 디스크립터
프로세스 전환
프로세스 생성
프로세스 끝내기
4장 인터럽트와 예외
인터럽트 신호의 역할
인터럽트와 예외
예외 핸들러와 인터럽트 핸들러의 중첩 실행
인터럽트 디스크립터 테이블 초기화
예외 처리
인터럽트 처리
소프트 IRQ와 소작업
작업 큐
인터럽트와 예외에서 복귀
5장 커널 동기화
커널이 요청을 서비스하는 방법
동기화 원시 기법
커널 자료 구조로의 접근 동기화
경쟁 조건 방지의 예
6장 타이밍 측정
클록와 타이머 회로
리눅스 시간 관리 구조
시간과 날짜 갱신
시스템 통계 갱신
소프트웨어 타이머와 지연 함수
타이밍 측정 관련 시스템 콜
7장 프로세스 스케줄링
스케줄링 정책
스케줄링 알고리즘
스케줄러가 사용하는 자료 구조
스케줄러가 사용하는 함수
멀티프로세서 시스템에서 실행 큐 부하 조절
스케줄링 관련 시스템 콜
8장 메모리 관리
페이지 프레임 관리
CPU별 페이지 프레임 캐시
메모리 영역 관리
불연속적인 메모리 영역 관리
9장 프로세스 주소 공간
프로세스의 주소 공간
메모리 디스크립터
메모리 구역
페이지 폴트 예외 핸들러
프로세스 주소 공간의 생성과 제거
힙 관리
10장 시스템 콜
POSIX API와 시스템 콜
시스템 콜 핸들러와 서비스 루틴
시스템 콜로의 진입과 복귀
매개 변수 확인
커널 래퍼 루틴
11장 시그널
시그널의 역할
시그널 발생
시그널 배달
시그널 처리 관련 시스템 콜
12장 가상파일 시스템
가상 파일 시스템의 역할
VFS 자료 구조
파일 시스템 유형
파일 시스템 다루기
파일 시스템 마운트하기
경로명 탐색
VFS 시스템 콜 구현
파일 락킹
13장 입출력 아키텍처와 디바이스 드라이버
입출력 아키텍처
디바이스 드라이버 모델
장치 파일
디바이스 드라이버
문자 장치 드라이버
14장 블록장치 드라이버
블록 장치 다루기
일반 블록 계층
입출력 스케줄러
블록 장치 드라이버
블록 장치 파일 열기
15장 페이지 캐시
페이지 캐시
페이지 캐시에 블록 저장하기
디스크에 더티 페이지 쓰기
sync( ), fsync( ), fdatasync( ) 시스템 콜
16장 파일 접근
파일 읽기와 쓰기
메모리 매핑
직접 입출력 전송
비동기 입출력
17장 페이지 프레임 회수
페이지 프레임 회수 알고리즘
역 매핑
PFRA 구현
스와핑
스왑 캐시
18장 EXT2, EXT3 파일 시스템
Ext2의 일반적인 특징
Ext2 디스크 자료 구조
Ext2 메모리 자료 구조
Ext2 파일 시스템 생성
Ext2 메소드
Ext2 디스크 공간 관리
Ext3 파일 시스템
19장 프로세스 통신
파이프
FIFO
시스템 V IPC
POSIX 메시지 큐
20장 프로그램 실행
실행 파일
실행 파일 형식
실행 도메인
exec 계열 함수
부록 A 시스템 시작
부록 B 모듈
참고문헌
찾아보기