新华书店直发 全新正版 急速发货 开票联系客服
¥ 87.06 5.2折 ¥ 169 全新
库存13件
作者[美] W. 理查德·史蒂文斯(W. Richard Stevens)史蒂芬·A
出版社人民邮电出版社
ISBN9787115515919
出版时间2019-10
装帧平装
开本16开
定价169元
货号27942446
上书时间2024-10-19
本书是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据新的标准对内容进行了修订和增补,反映了新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了众多应用实例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。 本书内容权威,概念清晰,阐述精辟,对于所有层次UNIX/Linux程序员都是一本不可或缺的参考书。
W. 理查德·史蒂文斯(W. Richard Stevens),国际知名的UNIX 和网络专家,备受赞誉的技术作家。生前著有多部经典的传世之作,包括《UNIX 网络编程》(两卷本)、《TCP/IP 详解》(三卷本)和本书首版。 史蒂芬·A. 拉戈(Stephen A. Rago),资深UNIX 程序员,目前任NEC 美国实验室存储系统研究组研究员。之前是贝尔实验室的UNIX 系统V 版本4 的开发人员之一。著有《UNIX 系统V 网络编程》,是本书第1版的技术审校和第2 版的共同作者。
目录
Chapter 1. UNIX System Overview / UNIX基础知识 1
1.1 Introduction / 引言 1
1.2 UNIX Architecture / UNIX体系结构 1
1.3 Logging In / 登录 2
1.4 Files and Directories / 文件和目录 4
1.5 Input and Output / 输入和输出 8
1.6 Programs and Processes / 程序和进程 10
1.7 Error Handling / 出错处理 14
1.8 User Identification / 用户标识 16
1.9 Signals / 信号 18
1.10 Time Values / 时间值 20
1.11 System Calls and Library Functions / 系统调用和库函数 21
1.12 Summary / 小结 23
Exercises / 习题 24
Chapter 2. UNIX Standardization and Implementations / UNIX标准及实现 25
2.1 Introduction / 引言 25
2.2 UNIX Standardization / UNIX标准化 25
2.2.1 ISO C 25
2.2.2 IEEE POSIX 26
2.2.3 The Single UNIX Specification 30
2.2.4 FIPS 32
2.3 UNIX System Implementations / UNIX系统实现 33
2.3.1 UNIX System V Release 4 / SVR4 33
2.3.2 4.4BSD 34
2.3.3 FreeBSD 34
2.3.4 Linux 35
2.3.5 Mac OS X 35
2.3.6 Solaris 35
2.3.7 Other UNIX Systems / 其他UNIX系统 35
2.4 Relationship of Standards and Implementations / 标准和实现的关系 36
2.5 Limits / 限制 36
2.5.1 ISO C Limits / ISO C限制 37
2.5.2 POSIX Limits / POSIX限制 38
2.5.3 XSI Limits / XSI限制 41
2.5.4 sysconf, pathconf, and fpathconf Functions / 函数sysconf、pathconf和fpathconf 42
2.5.5 Indeterminate Runtime Limits / 不确定的运行时限制 49
2.6 Options / 选项 53
2.7 Feature Test Macros / 功能测试宏 57
2.8 Primitive System Data Types / 基本系统数据类型 58
2.9 Differences Between Standards / 标准之间的冲突 58
2.10 Summary / 小结 60
Exercises / 习题 60
Chapter 3. File I/O / 文件I/O 61
3.1 Introduction / 引言 61
3.2 File Descriptors / 文件描述符 61
3.3 open and openat Functions / 函数open和openat 62
3.4 creat Function / 函数creat 66
3.5 close Function / 函数close 66
3.6 lseek Function / 函数lseek 66
3.7 read Function / 函数read 71
3.8 write Function / 函数write 72
3.9 I/O Efficiency / I/O的效率 72
3.10 File Sharing / 文件共享 74
3.11 Atomic Operations / 原子操作 77
3.12 dup and dup2 Functions / 函数dup和dup2 79
3.13 sync, fsync, and fdatasync Functions / 函数sync、fsync和fdatasync 81
3.14 fcntl Function / 函数fcntl 82
3.15 ioctl Function / 函数ioctl 87
3.16 /dev/fd 88
3.17 Summary / 小结 90
Exercises / 习题 90
Chapter 4. Files and Directories / 文件和目录 93
4.1 Introduction / 引言 93
4.2 stat, fstat, fstatat, and lstat Functions / 函数stat、fstat、fstatat和lstat 93
4.3 File Types / 文件类型 95
4.4 Set-User-ID and Set-Group-ID / 设置用户ID和设置组ID 98
4.5 File Access Permissions / 文件访问权限 99
4.6 Ownership of New Files and Directories / 新文件和目录的所有权 101
4.7 access and faccessat Functions / 函数access和faccessat 102
4.8 umask Function / 函数umask 104
4.9 chmod, fchmod, and fchmodat Functions / 函数chmod、fchmod和fchmodat 106
4.10 Sticky Bit / 粘着位 108
4.11 chown, fchown, fchownat, and lchown Functions / 函数chown、fchown、fchownat和lchown 109
4.12 File Size / 文件长度 111
4.13 File Truncation / 文件截断 112
4.14 File Systems / 文件系统 113
4.15 link, linkat, unlink, unlinkat, and remove Functions / 函数link、linkat、unlink、unlinkat和remove 116
4.16 rename and renameat Functions / 函数rename和renameat 119
4.17 Symbolic Links / 符号链接 120
4.18 Creating and Reading Symbolic Links / 创建和读取符号链接 123
4.19 File Times / 文件的时间 124
4.20 futimens, utimensat, and utimes Functions / 函数futimens、utimensat和utimes 126
4.21 mkdir, mkdirat, and rmdir Functions / 函数mkdir、mkdirat和rmdir 129
4.22 Reading Directories / 读目录 130
4.23 chdir, fchdir, and getcwd Functions / 函数chdir、fchdir和getcwd 135
4.24 Device Special Files / 设备特殊文件 137
4.25 Summary of File Access Permission Bits / 文件访问权限位小结 140
4.26 Summary / 小结 140
Exercises / 习题 141
Chapter 5. Standard I/O Library / 标准I/O库 143
5.1 Introduction / 引言 143
5.2 Streams and FILE Objects / 流和FILE对象 143
5.3 Standard Input, Standard Output, and Standard Error / 标准输入、标准输出和标准错误 145
5.4 Buffering / 缓冲 145
5.5 Opening a Stream / 打开流 148
5.6 Reading and Writing a Stream / 读和写流 150
5.7 Line-at-a-Time I/O / 每次一行I/O 152
5.8 Standard I/O Efficiency / 标准I/O的效率 153
5.9 Binary I/O / 二进制I/O 156
5.10 Positioning a Stream / 定位流 157
5.11 Formatted I/O / 格式化I/O 159
5.12 Implementation Details / 实现细节 164
5.13 Temporary Files / 临时文件 167
5.14 Memory Streams / 内存流 171
5.15 Alternatives to Standard I/O / 标准I/O的替代软件 174
5.16 Summary / 小结 175
Exercises / 习题 175
Chapter 6. System Data Files and Information / 系统数据文件和信息 177
6.1 Introduction / 引言 177
6.2 Password File / 口令文件 177
6.3 Shadow Passwords / 阴影口令 181
6.4 Group File / 组文件 182
6.5 Supplementary Group IDs / 附属组ID 183
6.6 Implementation Differences / 实现区别 184
6.7 Other Data Files / 其他数据文件 185
6.8 Login Accounting / 登录账户记录 186
6.9 System Identification / 系统标识 187
6.10 Time and Date Routines / 时间和日期例程 189
6.11 Summary / 小结 196
Exercises / 习题 196
Chapter 7. Process Environment / 进程环境 197
7.1 Introduction / 引言 197
7.2 main Function / main函数 197
7.3 Process Termination / 进程终止 198
7.4 Command-Line Arguments / 命令行参数 203
7.5 Environment List / 环境表 203
7.6 Memory Layout of a C Program / C程序的存储空间布局 204
7.7 Shared Libraries / 共享库 206
7.8 Memory Allocation / 存储空间分配 207
7.9 Environment Variables / 环境变量 210
7.10 setjmp and longjmp Functions / 函数setjmp和longjmp 213
7.11 getrlimit and setrlimit Functions / 函数getrlimit和setrlimit 220
7.12 Summary / 小结 225
Exercises / 习题 226
Chapter 8. Process Control / 进程控制 227
8.1 Introduction / 引言 227
8.2 Process Identifiers / 进程标识 227
8.3 fork Function / 函数fork 229
8.4 vfork Function / 函数vfork 234
8.5 exit Functions / 函数exit 236
8.6 wait and waitpid Functions / 函数wait和waitpid 238
8.7 waitid Function / 函数waitid 244
8.8 wait3 and wait4 Functions / 函数wait3和wait4 245
8.9 Race Conditions / 竞争条件 245
8.10 exec Functions / 函数exec 249
8.11 Changing User IDs and Group IDs / 更改用户ID和更改组ID 255
8.12 Interpreter Files / 解释器文件 260
8.13 system Function / 函数system 264
8.14 Process Accounting / 进程会计 269
8.15 User Identification / 用户标识 275
8.16 Process Scheduling / 进程调度 276
8.17 Process Times / 进程时间 280
8.18 Summary / 小结 282
Exercises / 习题 283
Chapter 9. Process Relationships / 进程关系 285
9.1 Introduction / 引言 285
9.2 Terminal Logins / 终端登录 285
9.3 Network Logins / 网络登录 290
9.4 Process Groups / 进程组 293
9.5 Sessions / 会话 295
9.6 Controlling Terminal / 控制终端 296
9.7 tcgetpgrp, tcsetpgrp, and tcgetsid Functions / 函数tcgetpgrp、tcsetpgrp和tcgetsid 298
9.8 Job Control / 作业控制 299
9.9 Shell Execution of Programs / Shell执行程序 303
9.10 Orphaned Process Groups / 孤儿进程组 307
9.11 FreeBSD Implementation / FreeBSD实现 310
9.12 Summary / 小结 312
Exercises / 习题 312
Chapter 10. Signals / 信号 313
10.1 Introduction / 引言 313
10.2 Signal Concepts / 信号概念 313
10.3 signal Function / 函数signal 323
10.4 Unreliable Signals / 不可靠的信号 326
10.5 Interrupted System Calls / 中断的系统调用 327
10.6 Reentrant Functions / 可重入函数 330
10.7 SIGCLD Semantics / SIGCLD语义 332
10.8 Reliable-Signal Terminology and Semantics / 可靠信号术语和语义 335
10.9 kill and raise Functions / 函数kill和raise 336
10.10 alarm and pause Functions / 函数alarm和pause 338
10.11 Signal Sets / 信号集 344
10.12 sigprocmask Function / 函数sigprocmask 346
10.13 sigpending Function / 函数sigpending 347
10.14 sigaction Function / 函数sigaction 349
10.15 sigsetjmp and siglongjmp Functions / 函数sigsetjmp和siglongjmp 355
10.16 sigsuspend Function / 函数sigsuspend 359
10.17 abort Function / 函数abort 365
10.18 system Function / 函数system 367
10.19 sleep, nanosleep, and clock_nanosleep Functions / 函数sleep、nanosleep和clock_nanosleep 373
10.20 sigqueue Function / 函数sigqueue 376
10.21 Job-Control Signals / 作业控制信号 377
10.22 Signal Names and Numbers / 信号名和编号 379
10.23 Su
— 没有更多了 —
以下为对购买帮助不大的评价