저자/역자/감수자 소개 = 4 역자 머리말 = 5 저자 머리말 = 6 이 책의 구성 요소 = 8 강의 계획표 = 10 워밍업 = 11 학습 로드맵 = 14 강의보조자료와 참고자료 = 15 Part 01 하드웨어, 소프트웨어, 운영체제 소개 Chapter 01 운영체제 소개 = 33 01 소개 = 35 02 운영체제란 무엇인가 = 35 03 초기 역사: 1940, 1950년대 = 37 04 1960년대 = 38 05 1970년대 = 43 06 1980년대 = 44 07 인터넷과 월드 와이드 웹의 역사 = 46 08 1990년대 = 49 09 2000년 이후 = 53 10 응용 프로그램 기반 = 55 11 운영체제 환경 = 56 12 운영체제의 구성 요소와 목표 = 59 13 운영체제 아키텍처 = 64 요약 = 71 연습문제 = 77 핵심용어 = 80 Chapter 02 하드웨어와 소프트웨어 개념 = 83 01 소개 = 85 02 하드웨어 장치의 발전 = 85 03 하드웨어 구성 요소 = 88 04 하드웨어의 운영체제 지원 = 103 05 캐싱과 버퍼링 = 109 06 소프트웨어 개관 = 111 07 응용 프로그래밍 인터페이스 = 117 08 컴파일링, 링킹, 로딩 = 118 09 펌웨어 = 126 10 미들웨어 = 127 요약 = 128 연습문제 = 131 핵심용어 = 134 Part 02 프로세스와 스레드 Chapter 03 프로세스 개념 = 141 01 소개 = 143 02 프로세스 상태: 프로세스 생명 주기 = 146 03 프로세스 관리 = 147 04 인터럽트 = 157 05 프로세스 간 통신 = 163 06 사례 연구: 유닉스 프로세스 = 167 요약 = 170 연습문제 = 173 핵심용어 = 177 Chapter 04 스레드 개념 = 179 01 소개 = 181 02 스레드 정의 = 182 03 스레드 사용 동기 = 184 04 스레드 상태: 스레드 생명 주기 = 186 05 스레드 연산 = 188 06 스레딩 모델 = 190 07 스레드 구현 시 고려 사항 = 197 08 POSIX와 Pthread = 201 09 리눅스 스레드 = 203 10 윈도우 XP 스레드 = 205 11 자바 멀티스레딩 사례 연구 1: 자바 스레드 소개 = 209 요약 = 214 연습문제 = 218 핵심용어 = 220 Chapter 05 비동기식 병행 실행 = 223 01 소개 = 225 02 상호 배제 = 225 03 상호 배제 프리미티브 구현 = 238 04 상호 배제 문제에 대한 소프트웨어 해결책 = 239 05 상호 배제 문제에 대한 하드웨어 해결책 = 263 06 세마포어 = 269 요약 = 277 연습문제 = 280 핵심용어 = 286 Chapter 06 병행 프로그래밍 = 289 01 소개 = 291 02 모니터 = 293 03 자바 모니터 = 305 04 자바 멀티스레딩 사례 연구 3: 자바 생산자/소비자 관계 = 307 05 자바 멀티스레딩 사례 연구 4: 자바 원형 버퍼 = 316 요약 = 326 연습문제 = 329 핵심용어 = 331 Chapter 07 교착 상태와 무기한 연기 = 333 01 소개 = 335 02 교착 상태의 예 = 336 03 관련 문제: 무기한 연기 = 342 04 자원의 개념 = 343 05 교착 상태가 성립되기 위한 네 가지 필요조건 = 344 06 교착 상태 해결책 = 345 07 교착 상태 방지 = 346 08 다익스트라의 은행원 알고리즘을 사용한 교착 상태 회피 = 352 09 교착 상태 탐지 = 359 10 교착 상태 복구 = 363 11 현재와 미래 시스템의 교착 상태 전략 = 365 Chapter 08 프로세서 스케줄링 = 383 01 소개 = 385 02 스케줄링 수준 = 385 03 선점형/비선점형 스케줄링 = 388 04 우선선위 = 390 05 스케줄링 목적 = 391 06 스케줄링 기준 = 393 07 스케줄링 알고리즘 = 395 08 데드라인 스케줄링 = 409 09 실시간 스케줄링 = 410 10 자바 스레드 스케줄링 = 414 Part 03 물리 메모리와 가상 메모리 Chapter 09 실제 메모리 구성과 관리 = 433 01 소개 = 435 02 메모리 구성 = 435 03 메모리 관리 = 437 04 메모리 계층 = 438 05 메모리 관리 전략 = 440 06 연속/불연속 메모리 할당 = 441 07 단일 사용자 연속 메모리 할당 = 442 08 고정 파티션 멀티프로그래밍 = 447 09 가변 파티션 멀티프로그래밍 = 453 10. 메모리 스왑핑을 사용한 멀티프로그래밍 = 459 요약 = 461 연습문제 = 464 핵심용어 = 470 Chapter 10 가상 메모리 구성 = 473 01 소개 = 475 02 가상 메모리: 기본 개념 = 478 03 블록 맵핑 = 482 04 페이징 = 484 05 세그먼테이션 = 503 06 세그먼테이션/페이징 시스템 = 512 07 사례 연구: IA-32 인텔 아키텍처 가상 메모리 = 518 요약 = 525 연습문제 = 531 핵심용어 = 536 Chapter 11 가상 메모리 관리 = 539 01 소개 = 541 02 지역성 = 542 03 요구 페이징 = 543 04 예측 페이징 = 546 05 페이지 교 체 = 547 06 페이지 교체 전략 = 549 07 작업 집합 모델 = 560 08 페이지 폴트 빈도 페이지 교체 = 565 09 페이지 해제 = 566 10 페이지 크기 = 567 11 페이징에서의 프로그램 동작 = 570 12 전역 대 지역 페이지 교체 = 572 13 사례 연구: 리눅스 페이지 교체 = 573 요약 = 575 연습문제 = 579 핵심용어 = 586 Part 04 2차 저장소, 파일, 데이터베이스 Chapter 12 디스크 성능 최적화 = 591 01 소개 = 593 02 2차 저장소의 발전 = 593 03 무빙 헤드 디스크 저장소의 특징 = 594 04 디스크 스케줄링이 필요한 이유 = 597 05 디스크 스케줄링 전략 = 599 06 회전 최적화 = 609 07 시스템 고려 사항 = 613 08 캐싱과 버퍼링 = 615 09 기타 디스크 성능 기술 = 617 10 RAID = 620 요약 = 635 연습문제 = 644 핵심용어 = 649 Chapter 13 파일과 데이터베이스 시스템 = 653 01 소개 = 655 02 데이터 게층 = 655 03 파일 = 657 04 파일 시스템 = 658 05 파일 구성 = 669 06 파일 할당 = 670 07 여유 공간 관리 = 681 08 파일 접근 제어 = 683 09 데이터 접근 기술 = 685 10 데이터 무결성 보호 = 687 11 파일 서버와 분산 시스템 = 693 12 데이터베이스 시스템 = 694 요약 = 699 연습문제 = 707 핵심용어 = 712 Part 05 분산 컴퓨팅 Chapter 14 분산 시스템 소개 = 719 01 소개 = 721 02 분산 시스템의 속성 = 722 03 분산 시스템에서의 통신 = 727 04 분산 시스템에서의 동기화 = 734 05 분산 시스템에서의 상호 배제 = 735 06 분산 시스템에서의 교착 상태 = 738 07 사례 연구: 스프라이트 분산 운영체제 = 744 08 사례 연구: 아메바 분한 운영체제 = 745 요약 = 747 연습문제 = 752 핵심용어 = 753 Part 06 보안 Chapter 15 보안 = 759 01 소개 = 761 02 암호기법 = 762 03 이증 = 770 04 접근 제어 = 777 05 보안 공격 = 783 06 공격 예방과 보안 해결책 = 790 07 보안 통신 = 801 08 키 합의 프로토콜 = 802 09 공개키 기반 구조, 인증서, 인증기관 = 806 10 보안 통신 프로토콜 = 808 11 스테가노그라피 = 813 12 독점 소스와 오픈 소스 보안 = 814 13 사례 연구 : 유닉스 시스템 보안 = 816 요약 = 819 연습문제 = 823 핵심용어 = 826 찾아보기 = 830 Part 07 운영체제 사레 연구 Chapter 16 리눅스 사례 연구 = 5 01 소개 = 7 02 역사 = 7 03 리눅스 개관 = 10 04 커널 아키텍처 = 14 05 프로세스 관리 = 19 06 메모리 관리 = 28 07 파일 시스템 = 40 08 입출력 관리 = 54 09 커널 동기화 = 68 10 프로세스 간 통신 = 73 11 네트워킹 = 81 12 규모 확장성 = 84 13 보안 = 89 연습문제 = 93 핵심용어 = 96 Appendix A 용어해설 = 100 Appendix B 웹 자료 = 169 Appendix C 인용 자료 = 183