图书介绍
unix环境高级编程 英文版·第2版PDF|Epub|txt|kindle电子书版本网盘下载
- 著
- 出版社:
- ISBN:
- 出版时间:未知
- 标注页数:0页
- 文件大小:133MB
- 文件页数:948页
- 主题词:
PDF下载
下载说明
unix环境高级编程 英文版·第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
Chapter 1.UNIX System Overview1
1.1 Introduction1
1.2 UNIX Architecture1
1.3 Logging In2
1.4 Files and Directories4
1.5 Input and Output8
1.6 Programs and Processes10
1.7 Error Handling14
1.8 User Identification16
1.9 Signals18
1.10 Time Values20
1.11 System Calls and Library Functions21
1.12 Summary23
Chapter 2.UNIX Standardization and Implementations25
2.1 Introduction25
2.2 UNIX Standardization25
2.2.1 ISO C25
2.2.2 IEEE POSIX26
2.2.3 The Single UNIX Specification29
2.2.4 FIPS33
2.3 UNIX System Implementations33
2.3.1 UNIX System V Release 433
2.3.2 4.4BSD34
2.3.3 FreeBSD35
2.3.4 Linux35
2.3.5 Mac OS X35
2.3.6 Solaris35
2.3.7 Other UNIX Systems36
2.4 Relationship of Standards and Implementations36
2.5 Limits36
2.5.1 ISO C Limits38
2.5.2 POSIX Limits38
2.5.3 XSI Limits40
2.5.4 sysconf, pathconf, and fpathconf Functions41
2.5.5 Indeterminate Runtime Limits48
2.6 Options52
2.7 Feature Test Macros55
2.8 Primitive System Data Types56
2.9 Conflicts Between Standards56
2.10 Summary58
Chapter 3. File I/O59
3.1 Introduction59
3.2 File Descriptors59
3.3 open Function60
3.4 creat Function62
3.5 close Function63
3.6 lseek Function63
3.7 read Function67
3.8 write Function68
3.9 I/O Efficiency68
3.10 File Sharing70
3.11 Atomic Operations74
3.12 dup and dup2 Functions76
3.13 sync, fsync, and fdatasync Functions77
3.14 fcntl Function78
3.15 ioctl Function83
3.16 /dev/fd84
3.17 Summary85
Chapter 4. Files and Directories87
4.1 Introduction87
4.2 stat, fstat, and lstat Functions87
4.3 File Types88
4.4 Set-User-ID and Set-Group-ID91
4.5 File Access Permissions92
4.6 Ownership of New Files and Directories95
4.7 access Function95
4.8 umask Function97
4.9 chmod and fchmod Functions99
4.10 Sticky Bit101
4.11 chown, fchown, and lchown Functions102
4.12 File Size103
4.13 File Truncation105
4.14 File Systems105
4.15 link, unlink, remove, and rename Functions108
4.16 Symbolic Links112
4.17 symlink and readlink Functions115
4.18 File Times115
4.19 utime Function116
4.20 mkdir and rmdir Functions119
4.21 Reading Directories120
4.22 chdir, fchdir, and getcwd Functions125
4.23 Device Special Files127
4.24 Summary of File Access Permission Bits130
4.25 Summary130
Chapter 5. Standard I/O Library133
5.1 Introduction133
5.2 Streams and FILE Objects133
5.3 Standard Input, Standard Output, and Standard Error135
5.4 Buffering135
5.5 Opening a Stream138
5.6 Reading and Writing a Stream140
5.7 Line-at-a-Time I/O142
5.8 Standard I/O Efficiency143
5.9 Binary I/O145
5.10 Positioning a Stream147
5.11 Formatted I/O149
5.12 Implementation Details153
5.13 Temporary Files155
5.14 Alternatives to Standard I/O159
5.15 Summary159
Chapter 6. System Data Files and Information161
6.1 Introduction161
6.2 Password File161
6.3 Shadow Passwords165
6.4 Group File166
6.5 Supplementary Group IDs167
6.6 Implementation Differences169
6.7 Other Data Files169
6.8 Login Accounting170
6.9 System Identification171
6.10 Time and Date Routines173
6.11 Summary177
Chapter 7. Process Environment179
7.1 Introduction179
7.2 main Function179
7.3 Process Termination180
7.4 Command-Line Arguments185
7.5 Environment List185
7.6 Memory Layout of a C Program186
7.7 Shared Libraries188
7.8 Memory Allocation189
7.9 Environment Variables192
7.10 setjmp and longjmp Functions195
7.11 getrlimit and setrlimit Functions202
7.12 Summary206
Chapter 8. Process Control209
8.1 Introduction209
8.2 Process Identifiers209
8.3 fork Function211
8.4 vfork Function216
8.5 exit Functions218
8.6 wait and waitpid Functions220
8.7 waitid Function226
8.8 wait3 and wait4 Functions227
8.9 Race Conditions227
8.10 exec Functions231
8.11 Changing User IDs and Group IDs237
8.12 Interpreter Files242
8.13 system Function246
8.14 Process Accounting250
8.15 User Identification256
8.16 Process Times257
8.17 Summary259
Chapter 9. Process Relationships261
9.1 Introduction261
9.2 Terminal Logins261
9.3 Network Logins266
9.4 Process Groups269
9.5 Sessions270
9.6 Controlling Terminal272
9.7 tcgetpgrp, tcsetpgrp, and tcgetsid Functions273
9.8 Job Control274
9.9 Shell Execution of Programs278
9.10 Orphaned Process Groups282
9.11 FreeBSD Implementation285
9.12 Summary287
Chapter 10. Signals289
10.1 Introduction289
10.2 Signal Concepts289
10.3 signal Function298
10.4 Unreliable Signals301
10.5 Interrupted System Calls303
10.6 Reentrant Functions305
10.7 SIGCLD Semantics308
10.8 Reliable-Signal Terminology and Semantics310
10.9 kill and raise Functions311
10.10 alarm and pause Functions313
10.11 Signal Sets318
10.12 sigprocmask Function320
10.13 s igpending Function322
10.14 sigaction Function324
10.15 sigsetjmp and siglongjmp Functions329
10.16 sigsuspend Function333
10.17 abort Function340
10.18 system Function342
10.19 sleep Function347
10.20 Job-Control Signals349
10.21 Additional Features352
10.22 Summary353
Chapter 11. Threads355
11.1 Introduction355
11.2 Thread Concepts355
11.3 Thread Identification356
11.4 Thread Creation357
11.5 Thread Termination360
11.6 Thread Synchronization368
11.7 Summary385
Chapter 12. Thread Control387
12.1 Introduction387
12.2 Thread Limits387
12.3 Thread Attributes388
12.4 Synchronization Attributes393
12.5 Reentrancy401
12.6 Thread-Specific Data406
12.7 Cancel Options410
12.8 Threads and Signals413
12.9 Threads and fork416
12.10 Threads and I/O420
12.11 Summary420
Chapter 13. Daemon Processes423
13.1 Introduction423
13.2 Daemon Characteristics423
13.3 Coding Rules425
13.4 Error Logging428
13.5 Single-Instance Daemons432
13.6 Daemon Conventions434
13.7 Client-Server Model439
13.8 Summary439
Chapter 14. Advanced I/O441
14.1 Introduction441
14.2 Nonblocking I/O441
14.3 Record Locking444
14.4 STREAMS460
14.5 I/O Multiplexing472
14.5.1 select and pselect Functions474
14.5.2 poll Function479
14.6 Asynchronous I/O481
14.6.1 System V Asynchronous I/O481
14.6.2 BSD Asynchronous I/O482
14.7 readv and writev Functions483
14.8 readn and writen Functions485
14.9 Memory-Mapped I/O487
14.10 Summary492
Chapter 15. Interprocess Communication495
15.1 Introduction495
15.2 Pipes496
15.3 popen and pclose Functions503
15.4 Coprocesses510
15.5 FIFOs514
15.6 XSI IPC518
15.6.1 Identifiers and Keys518
15.6.2 Permission Structure520
15.6.3 Configuration Limits521
15.6.4 Advantages and Disadvantages521
15.7 Message Queues522
15.8 Semaphores527
15.9 Shared Memory533
15.10 Client-Server Properties541
15.11 Summary543
Chapter 16. Network IPC: Sockets545
16.1 Introduction545
16.2 Socket Descriptors546
16.3 Addressing549
16.3.1 Byte Ordering549
16.3.2 Address Formats551
16.3.3 Address Lookup553
16.3.4 Associating Addresses with Sockets560
16.4 Connection Establishment561
16.5 Data Transfer565
16.6 Socket Options579
16.7 Out-of-Band Data581
16.8 Nonblocking and Asynchronous I/O582
16.9 Summary583
Chapter 17. Advanced IPC585
17.1 Introduction585
17.2 STREAMS-Based Pipes585
17.2.1 Naming STREAMS Pipes589
17.2.2 Unique Connections590
17.3 UNIX Domain Sockets594
17.3.1 Naming UNIX Domain Sockets595
17.3.2 Unique Connections597
17.4 Passing File Descriptors601
17.4.1 Passing File Descriptors over STREAMS-Based Pipes604
17.4.2 Passing File Descriptors over UNIX Domain Sockets606
17.5 An Open Server, Version 1615
17.6 An Open Server, Version 2620
17.7 Summary629
Chapter 18. Terminal I/O631
18.1 Introduction631
18.2 Overview631
18.3 Special Input Characters638
18.4 Getting and Setting Terminal Attributes643
18.5 Terminal Option Flags643
18.6 stty Command651
18.7 Baud Rate Functions652
18.8 Line Control Functions653
18.9 Terminal Identification654
18.10 Canonical Mode660
18.11 Noncanonical Mode663
18.12 Terminal Window Size670
18.13 termcap, terminfo, and curses672
18.14 Summary673
Chapter 19. Pseudo Terminals675
19.1 Introduction675
19.2 Overview675
19.3 Opening Pseudo-Terminal Devices681
19.3.1 STREAMS-Based Pseudo Terminals683
19.3.2 BSD-Based Pseudo Terminals686
19.3.3 Linux-Based Pseudo Terminals689
19.4 pty_fork Function691
19.5 pty Program694
19.6 Using the pty Program698
19.7 Advanced Features705
19.8 Summary706
Chapter 20. A Database Library709
20.1 Introduction709
20.2 History709
20.3 The Library710
20.4 Implementation Overview712
20.5 Centralized or Decentralized?716
20.6 Concurrency718
20.7 Building the Library719
20.8 Source Code719
20.9 Performance747
20.10 Summary752
Chapter 21. Communicating with a Network Printer753
21.1 Introduction753
21.2 The Internet Printing Protocol753
21.3 The Hypertext Transfer Protocol756
21.4 Printer Spooling757
21.5 Source Code758
21.6 Summary805
Appendix A. Function Prototypes807
Appendix B. Miscellaneous Source Code843
B.1 Our Header File843
B.2 Standard Error Routines846
Appendix C. Solutions to Selected Exercises853
Bibliography885
Index891