목차

목차
Chapter 00 독자 안내 = 25
 0.1 이 책의 개요 = 26
 0.2 독자와 강사를 위한 로드 맵 = 27
 0.3 인터넷과 웹 자원 = 28
PART 1 배경
 Chapter 01 컴퓨터 시스템 개요 = 33
  1.1 기본 구성요소 = 34
  1.2 처리기 레지스터 = 35
  1.3 명령어 수행 = 38
  1.4 인터럽트 = 42
  1.5 메모리 계층구조 = 53
  1.6 캐시 메모리 = 57
  1.7 입출력 통신 기술 = 61
  1.8 추천 문헌 및 웹 사이트 = 65
  1.9 주요 용어, 복습문제, 연습문제 = 66
  부록 1A 2단계 메모리의 성능 특성 = 69
  부록 1B 프로시저 제어 = 77
 Chapter 02 운영체제 개요 = 83
  2.1 운영체제의 목적 및 기능 = 84
  2.2 운영체제의 발전 = 89
  2.3 주요 성과 = 100
  2.4 최근 운영체제로의 발전 = 115
  2.5 Microsoft Windows 개요 = 118
  2.6 전통적인 UNIX 시스템 = 130
  2.7 최근의 UNIX 시스템 = 133
  2.8 Linux = 135
  2.9 추천 문헌 및 웹 사이트 = 143
  2.10 주요 용어, 복습문제, 연습문제 = 145
PART 2 프로세스
 Chapter 03 프로세스 기술과 제어 = 151
  3.1 프로세스란? = 153
  3.2 프로세스 상태 = 156
  3.3 프로세스 기술(Process Description) = 173
  3.4 프로세스 제어 = 183
  3.5 운영체제의 수행 = 190
  3.6 보안 이슈 = 193
  3.7 UNIX SVR4의 프로세스 관리 = 198
  3.8 요약 = 204
  3.9 추천 문헌 = 205
  3.10 주요 용어, 복습문제, 연습문제 = 206
  프로그래밍 프로젝트 01 : 쉘의 작성 = 211
 Chapter 4 쓰레드, SMP, 그리고 마이크로커널 = 215
  4.1 프로세스와 쓰레드 = 216
  4.2 대칭적 다중처리 = 232
  4.3 마이크로커널 = 237
  4.4 Windows쓰레드와 SMP관리 = 244
  4.5 Solaris 쓰레드와 SMP관리 = 251
  4.6 Linux 프로세스와 쓰레드 관리 = 256
  4.7 요약 = 261
  4.8 추천 문헌 = 261
  4.9 주요 용어, 복습문제, 연습문제 = 262
 Chapter 05 병행성: 상호 배제와 동기화 = 269
  5.1 병행성의 원리 = 272
  5.2 상호 배제: 하드웨어 지원 = 283
  5.3 세마포어 = 288
  5.4 모니터 = 303
  5.5 메시지 전달 = 311
  5.6 판독자/기록자 문제 = 319
  5.7 요약 = 324
  5.8 추천 문헌 = 325
  5.9 주요 용어, 복습문제, 연습문제 = 326
 Chapter 06 병행성: 교착상태와 기아상태 = 341
  6.1 교착상태 원리 = 342
  6.2 교착상태 예방 = 353
  6.3 교착상태 회피 = 355
  6.4 교착상태 발견 = 362
  6.5 교착상태에 대한 통합적인 전략 = 364
  6.6 식사하는 철학자 문제 = 365
  6.7 UNIX의 병행성 기법 = 370
  6.8 LINUX커널의 병행성 기법 = 373
  6.9 Solaris쓰레드 동기화 프리미티브 = 382
  6.10 Windows 병행성 기법 = 385
  6.11 요약 = 389
  6.12 추천 문헌 = 390
  6.13 주요 용어, 복습문제, 연습문제 = 391
PART 3 메모리
 Chapter 07 메모리 관리 = 401
  7.1 메모리 관리 요구조건 = 402
  7.2 메모리 분할 = 406
  7.3 페이징(Paging) = 419
  7.4 세그먼테이션 = 423
  7.5 보안 이슈 = 424
  7.6 요약 = 429
  7.7 추천 문헌 = 429
  7.8 주요 용어, 복습문제, 연습문제 = 430
  부록 7A 로딩과 링킹 = 434
 Chapter 08 가상 메모리 = 443
  8.1 하드웨어와 제어 구조 = 444
  8.2 운영체제 소프트웨어 = 465
  8.3 Unix와 Solaris의 메모리 관리 = 487
  8.4 Linux의 메모리 관리 = 493
  8.5 Windows의 메모리 관리 = 496
  8.6 요약 = 500
  8.7 추천 문헌 및 웹 사이트 = 501
  8.8 주요 용어, 복습문제, 연습문제 = 502
  부록 8A 해시 테이블 = 507
PART 4 스케줄링
 Chapter 09 단일처리기 스케줄링 = 515
  9.1 처리기 스케줄링의 유형 = 516
  9.2 스케줄링 알고리즘 = 521
  9.3 전통적인 UNIX 시스템에서의 스케줄링 = 551
  9.4 요약 = 554
  9.5 추천 문헌 = 555
  9.6 주요 용어, 복습문제, 연습문제 = 556
  부록 9A 응답시간 = 561
  부록 9B 큐잉 시스템 = 565
  프로그래밍 프로젝트 02 : Host 디스패처 쉘 구현하기 = 573
 Chapter 10 다중처리기와 실시간 스케줄링 = 581
  10.1 다중처리기 스케줄링 = 582
  10.2 실시간 스케줄링 = 601
  10.3 Linux의 스케줄링 = 622
  10.4 UNIX SVR4의 스케줄링 = 628
  10.5 Windows 스케줄링 = 631
  10.6 요약 = 634
  10.7 추천 문헌 = 635
  10.8 주요 용어, 복습문제, 연습문제 = 636
PART 5 입출력과 파일
 Chapter 11 입출력 관리와 디스크 스케줄링 = 643
  11.1 입출력장치 = 644
  11.2 입출력 기능의 구성 = 646
  11.3 운영체제 설계 이슈 = 650
  11.4 입출력 버퍼링 = 653
  11.5 디스크 스케줄링 = 657
  11.6 RAID = 666
  11.7 디스크 캐시 = 676
  11.8 UNIX SVR4의 입출력 = 681
  11.9 Linux의 입출력 = 684
  11.10 Windows의 입출력 = 688
  11.11 요약 = 692
  11.12 추천 문헌 = 693
  11.13 주요 용어, 복습문제, 연습문제 = 694
  부록 11A 디스크 저장장치 = 697
 Chapter 12 파일 관리 = 709
  12.1 개요 = 710
  12.2 파일 구성과 접근 = 717
  12.3 파일 디렉토리 = 723
  12.4 파일 공유 = 727
  12.5 레코드 블록화 기법 = 727
  12.6 보조 저장공간 관리 = 731
  12.7 파일 시스템 보안 = 741
  12.6 보조 저장공간 관리 = 731
  12.7 파일 시스템 보안 = 741
  12.8 UNIX의 파일 관리 = 744
  12.9 Linux의 가상 파일 시스템 = 752
  12.10 Windows의 파일 시스템 = 756
  12.11 요약 = 763
  12.12 추천 문헌 = 764
  12.13 주요 용어, 복습문제, 연습문제 = 765
PART 6 임베디드 시스템
 Chapter 13 임베디드 운영체제 = 771
  13.1 임베디드 시스템 = 772
  13.2 임베디드 운영체제의 특성 = 774
  13.3 eCos = 777
  13.4 TinyOS = 794
  13.5 추천 문헌 및 웹 사이트 = 804
  13.6 주요 용어, 복습문제, 연습문제 = 806
PART 7 보안
 Chapter 14 컴퓨터 보안 위협 = 813
  14.1 컴퓨터 보안의 개념 = 814
  14.2 위협, 공격, 자산 = 816
  14.3 침입자 = 822
  14.4 악성 소프트웨어의 개요 = 827
  14.5 바이러스, 웜, 봇 = 832
  14.6 루트킷 = 844
  14.7 추천 문헌 및 웹 사이트 = 846
  14.8 주요 용어, 복습문제, 연습문제 = 847
 Chapter 15 컴퓨터 보안 기술 = 851
  15.1 인증 = 852
  15.2 접근 제어 = 860
  15.3 침입 탐지 = 867
  15.4 악성 코드 방어 = 873
  15.5 버퍼 오버플로 공격에 대한 대응 = 880
  15.6 Windows Vista의 보안 = 886
  15.7 추천 문헌 및 웹 사이트 = 891
  15.8 주요 용어, 복습문제, 연습문제 = 893
PART 8 분산 시스템
 Chapter 16 분산 처리, 클라이언트/서버, 클러스터 = 903
  16.1 클라이언트/서버 컴퓨팅 = 904
  16.2 분산 메시지 전달 = 916
  16.3 원격 프로시저 호출 = 919
  16.4 클러스터 = 923
  16.5 Windows 클러스터 서버 = 930
  16.6 Sun 클러스터 = 932
  16.7 Beowulf와 Linux 클러스터 = 935
  16.8 요약 = 937
  16.9 추천 문헌 및 웹 사이트 = 938
  16.10 주요 용어, 복습문제, 연습문제 = 940
부록 A 병행성 관련 주제 = 943
 A.1 상호 배제: 소프트웨어 접근법 = 944
 A.2 경쟁 조건과 세마포어 = 951
 A.3 이발소 문제 = 959
 A.4 연습문제 = 965
부록 B 객체 지향 설계 = 967
 B.1 동기 = 968
 B.2 객체 지향 개념 = 969
 B.3 객체 지향 설계의 장점 = 974
 B.4 CORBA = 975
 B.5 추천 문헌 및 웹 사이트 = 979
부록 C 프로그래밍과 운영체제 프로젝트 = 981
 C.1 애니메이션 및 애니메이션 프로젝트 = 982
 C.2 시뮬레이션 = 984
 C.3 프로그래밍 프로젝트 = 985
 C.4 연구 프로젝트 = 987
 C.5 읽기/보고서 과제 = 987
 C.6 쓰기 과제 = 987
 C.7 토론 주제 = 988
 C.8 BACI와 NACHOS = 988
용어해설 = 991
찾아보기 = 1001