목차
역사서문
서문
제1장 소개 = 1
1.1 개요 = 1
1.2 사용등록 = 1
1.3 화일(File)과 화일명부(Directory) = 3
1.4 입력과 출력 = 7
1.5 프로그램과 프로세스(Process) = 10
1.6 ANSI C특징 = 13
1.7 에러 다루기(Error Handing) = 15
1.8 사용자 식별(User ldentification) = 17
1.9 신호(Signals) = 18
1.10 유닉스 시간값 = 20
1.11 시스템 호출(System Call)과 모음(library)함수 = 22
1.12 요약 = 25
연습문제 = 25
제2장 유닉스 표준화와 구현 = 27
2.1 개요 = 27
2.2 유닉스 표준화 = 27
2.3 유닉스 구현 = 30
2.4 표준과 구현의 관계 = 32
2.5 제한값(Limits) = 33
2.6 기능시험 매크로(Feature Test Macros) = 47
2.7 기본 시스템 데이타형(Primitive System Data Types) = 48
2.8 표준간의 불일치 = 49
2.9 요약 = 49
연습문제 = 50
제3장 화일입출력(File I/O) = 51
3.1 개요 = 51
3.2 화일 지정번호(File Descriptors) = 51
3.3 open 함수 = 52
3.4 creat 함수 = 54
3.5 close 함수 = 55
3.6 lseek 함수 = 55
3.7 read 함수 = 59
3.8 write 함수 = 60
3.9 입출력 효율성 = 60
3.10 화일 공유 = 61
3.11 최소단위적 연산(Atomic Operations) = 65
3.12 dup와 dup2 함수 = 67
3.13 fcntl 함수 = 69
3.14 ioctl 함수 = 73
3.15 /dev/fd = 75
3.16 요약 = 76
연습문제 = 76
제4장 화일과 화일명부 = 79
4.1 개요 = 79
4.2 stat, fstat와 lstat 함수 = 79
4.3 화일 형(File types) = 80
4.4 Set-User-ID와 Set-Group-ID = 83
4.5 화일 접근 허가사항(File Access Permission) = 85
4.6 새로운 화일과 화일명부의 소유권 = 87
4.7 access 함수 = 88
4.8 umask 함수 = 90
4.9 chmod와 fchmod 함수 = 92
4.10 Sticky 비트 = 95
4.11 chown, fchown, 그리고 lchown 함수 = 96
4.12 화일크기 = 97
4.13 화일 절단(truncation) = 99
4.14 화일시스템(Filesystems) = 100
4.15 link, unlink, remove 및 rename 함수 = 103
4.16 상징적 연결 = 107
4.17 symlink와 readlink 함수 = 110
4.18 화일 시간 = 110
4.19 utime 함수 = 111
4.20 mkdir과 rmdir 함수 = 114
4.21 화일명부 읽기 = 116
4.22 chdir, fchdir 및 getcwd 함수 = 121
4.23 특수한 기기 화일(Special Davice Files) = 123
4.24 sync와 fsync 함수 = 126
4.25 화일 접근 허가사항 비트의 요약 = 126
4.26 요약 = 127
연습문제 = 127
제5장 표준 I/O 모음 = 131
5.1 개요 = 131
5.2 연속처리(stream)와 FILE 객체(objects) = 131
5.3 표준 입력, 표준 출력, 및 표준 에러 = 132
5.4 일시저장(Buffering) = 132
5.5 연속처리 열기 = 135
5.6 연속처리 읽기와 쓰기 = 138
5.7 줄 단위 I/O = 141
5.8 표준 I/O 효율 = 142
5.9 이진 I/O = 144
5.10 연속처리에서 위치 정하기 = 146
5.11 형식화된(Formatted)I/O = 147
5.12 구현 상세내용 = 149
5.13 임시 화일 = 151
5.14 표준 I/O에 대한 대안 = 155
5.15 요약 = 155
연습문제 = 156
제6장 시스템 데이타 화일과 정보 = 157
6.1 개요 = 157
6.2 암호 화일 = 157
6.3 그림자 암호 = 160
6.4 집단 화일 = 161
6.5 부가 집단 ID = 162
6.6 이외의 데이타 화일들 = 164
6.7 사용등록 회계 = 165
6.8 시스템 식별 = 166
6.9 시관과 날짜 처리부 = 168
6.10 요약 = 172
연습문제 = 172
제7장 유닉스 프로세서 환경 = 173
7.1 개요 = 173
7.2 main 함수 = 173
7.3 프로세스 종료 = 174
7.4 명령어 줄 독립 변수들 = 178
7.5 환경 목록 = 179
7.6 C프로그램에서의 기억장소 배치 = 180
7.7 공유 모음 = 181
7.8 기억장소 할당 = 182
7.9 환경 변수 = 185
7.10 setjmp와 longjmp 함수 = 188
7.11 getrlimit와 setrlimit 함수들 = 194
7.12 요약 = 198
연습문제 = 198
제8장 프로세스 제어 = 201
8.1 개요 = 201
8.2 프로세스 식별자 = 201
8.3 fork 함수 = 202
8.4 vfork 함수 = 207
8.5 exit 함수들 = 209
8.6 wait와 waitpid 함수 = 211
8.7 wait3와 wait4 함수 = 217
8.8 경쟁 조건들 = 218
8.9 exec 함수들 = 222
8.10 사용자ID와 집단 ID바꾸기 = 228
8.11 해석기 화일들 = 233
8.12 system 함수 = 238
8.13 프로세스 회계 = 242
8.14 사용자 식별 = 248
8.15 프로세스 시간들 = 249
8.16 요약 = 252
연습문제 = 252
제9장 프로세스 관계 = 255
9.1 개요 = 255
9.2 단말기 사용 등록 = 255
9.3 망 사용 등록 = 259
9.4 프로세스 집단 = 261
9.5 회기(sessions) = 263
9.6 제어 단말기(Controlling Terminal) = 264
9.7 tcgetpgrp와 tchstpgrp 함수 = 266
9.8 작업 제어(Job Control) = 267
9.9 프로그램의 껍데기 실행 = 271
9.10 고아 프로세스 집단 = 275
9.11 4.3+BSD 구현 = 278
9.12 요약 = 280
연습문제 = 281
제10장 신호(Signals) = 283
10.1 개요 = 283
10.2 신호 개념 = 283
10.3 Signal 함수 = 292
10.4 불안정한 신호들 = 296
10.5 일시중단된 시스템 호출 = 297
10.6 재입가능한(Reentrant) 함수 = 300
10.7 SIGCLD의미론(Sementics) = 302
10.8 안정된 신호 용어와 의미론 = 305
10.9 Kill과 raise 함수 = 306
10.10 alarm과 pause 함수 = 308
10.11 신호집합 = 314
10.12 sigprocmask 함수 = 316
10.13 sigpending 함수 = 317
10.14 sigaction 함수 = 320
10.15 sigsetjmp와 siglongjmp 함수 = 323
10.16 sigsuspend 함수 = 327
10.17 abort 함수 = 333
10.18 system 함수 = 335
10.19 Sleep 함수 = 341
10.20 작업 제어 신호 = 344
10.21 추가 특징 = 347
10.22 요약 = 348
연습문제 = 348
제11장 단말기 I/O = 351
11.1 개요 = 351
11.2 개관 = 351
11.3 특수 입력 문자들 = 357
11.4 단말기 속성의 획득과 지정 = 362
11.5 단말기 선택사항 표시기 = 363
11.6 stty 명령어 = 370
11.7 보드율(boud rate)함수들 = 371
11.8 줄 제어 함수들 = 371
11.9 단말기 식별 = 373
11.10 정규방식 = 376
11.11 비정규방식 = 380
11.12 단말기 창 크기 = 386
11.13 termcap, terminfo, 그리고 curses = 388
11.14 요약 = 389
연습문제 = 389
제12장 고급 입출력(Advanced I/O) = 391
12.1 개요 = 391
12.2 비봉쇄 입출력 = 391
12.3 레코드 잠금(Record Locking) = 395
12.4 연속처리 = 412
12.5 입출력 다중화(I/O Multiplexing) = 425
12.6 비동기 입출력(Asynchronous I/O) = 434
12.7 readv와 writev 함수 = 436
12.8 readn과 writen 함수 = 439
12.9 기억장소 대응 입출력(memory mapped I/O) = 441
12.10 요약 = 446
연습문제 = 446
제13장 파수꾼 프로세스(Daemon Processes) = 449
13.1 개요 = 449
13.2 파수꾼의 특징 = 449
13.3 coding 규칙들 = 451
13.4 에러 기록 = 453
13.5 고객-일꾼 모델 = 458
13.6 요약 = 459
연습문제 = 459
제14장 프로세스간 통신 = 461
14.1 개요 = 461
14.2 파이프 = 462
14.3 popen과 pclose 함수 = 469
14.4 동등프로세스(coprocess) = 475
14.5 FIFOs = 480
14.6 System V IPC = 484
14.7 소식 대롱(Message Queues) = 488
14.8 차단 표시기(Semaphores) = 493
14.9 공유 기억장소 = 499
14.10 고객- 일꾼 성질 = 506
14.11 요약 = 508
연습문제 = 509
제15장 고급 프로세스간 통신 = 511
15.1 개요 = 511
15.2 연속처리 파이프(Stream Pipes) = 511
15.3 화일 지정번호 전달 = 515
15.4 개방 일꾼, 1판 = 526
15.5 고객-일꾼 연결 함수 = 533
15.6 개방 일꾼, 2판 = 542
15.7 요약 = 551
연습문제 = 551
제16장 데이타베이스 모음 = 553
16.1 개요 = 553
16.2 역사 = 553
16.3 모음 = 554
16.4 구현의 개관 = 556
16.5 집중적 또는 분산적? = 560
16.6 동시성(Concurrency) = 561
16.7 원시 코드(Source Code) = 562
16.8 성능(Performance) = 584
16.9 요약 = 589
연습문제 = 589
제17장 포스트스크립트 인쇄기와의 통신 = 591
17.1 개요 = 591
17.2 포스트스크립트 역학 = 591
17.3 인쇄기 스폴링(Spooling) = 594
17.4 원시 코드 = 597
17.5 요약 = 619
연습문제 = 619
제18장 모뎀 전화 걸기(A Modem Dialer) = 621
18.1 개요 = 621
18.2 역사 = 621
18.3 프로그램설계 = 622
18.4 데이타 화일들 = 624
18.5 일꾼 구현 = 627
18.6 일꾼 원시 코드 = 628
18.7 고객 설계 = 658
18.8 고객 원시 코드 = 661
18.9 요약 = 673
연습문제 = 674
제19장 의사 단말기 = 675
19.1 개요 = 675
19.2 개관 = 675
19.3 의사-단말기기 열기 = 681
19.4 pty_fork 함수 = 686
19.5 pty 프로그램 = 688
19.6 pty 프로그램 사용 = 693
19.7 고급기능 = 700
19.8 요약 = 702
연습문제 = 702
부록A 규정 함수(Function prototype) = 705
부록B 잡동사니 원시코드 = 725
부록C 연습문제 해답 = 733
참고문헌 = 763
찾아보기 = 769