UNIX程序设计教程PDF电子书下载
- 电子书积分:17 积分如何计算积分?
- 作 者:赵克佳等编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2001
- ISBN:7302043418
- 页数:567 页
第1章 UNIX导论 1
1.1 UNIX简史 1
1.1.1 UNIX的诞生 1
前言页 1
1.1.2 UNIX的早期发展 2
1.1.3 BSD UNIX 3
1.1.4 系统V UNIX 4
1.1.5 UNIX的商业化 4
1.2.1 SVID 5
1.2 标准 5
1.2.2 POSIX 6
1.2.3 X/Open 6
1.2.4 C标准 8
1.3 UNIX基本概念 8
1.3.1 程序和进程 8
1.3.2 内核 10
1.3.3 shell 11
1.3.4 特权用户 12
1.3.5 系统调用与库函数 13
1.4 C库 15
1.4.1 头文件 15
1.4.2 保留字 17
1.4.3 特征测试宏 18
1.5 系统信息 19
1.5.1 机器标识 19
1.5.2 硬件/软件类型识别 21
1.6.1 一般能力限制值 22
1.6 系统能力限制 22
1.6.2 系统和文件特征选项 26
1.6.3 sysconf,pathcon和fpathconf函数 28
1.7 错误处理 32
第2章 标准输入输出 37
2.1 输入/输出基本概念 37
2.2 流和FILE对象 39
2.3 打开和关闭流 40
2.4.1 字符I/O 43
2.4 读和写流 43
2.4.2 行I/O 45
2.4.3 读回退 49
2.4.4 块I/O 50
2.5 文件定位 52
2.6 文件结束和错误 57
2.7 流缓冲 58
2.8.1 格式输出 64
2.8 格式I/O 64
2.8.2 格式输入 70
2.9 临时文件 75
第3章 低级输入/输出 79
3.1 文件描述字 79
3.2 open、creat和close函数 80
3.3 文件输入输出 84
3.3.1 read函数 84
3.3.2 write函数 85
3.4 设置描述字的文件位置 87
3.5 dup和dup2函数 90
3.6 fdopen和fileno 91
3.7 文件控制函数fcntl 92
3.7.1 重复文件描述字 93
3.7.2 文件描述字标签 94
3.7.3 文件状态标签 95
3.8 非阻塞I/O 99
第4章 文件与目录 102
4.1 文件 102
4.1.1 stat、fstat、lstat函数 103
4.2 文件类型 105
4.2.1 普通文件 105
4.2.2 目录 106
4.2.3 链接与link函数 106
4.2.4 符号链接与symlink和readlink函数 108
4.2.5 特别文件 110
4.2.6 测试文件的类型 112
4.3 文件的用户和用户组 113
4.3.1 chown、fchown和lchown函数 116
4.4.1 文件访问权限 118
4.4 文件方式 118
4.4.2 调整用户ID和调整组ID 121
4.4.3 sticky位 122
4.4.4 文件方式位小结 123
4.5 确定和改变文件方式 124
4.5.1 umask函数 125
4.5.2 chmod和fchmod函数 126
4.5.3 access函数 128
4.6 文件大小 130
4.6.1 截断文件 132
4.7 文件时间 134
4.7.1 utime和utimes函数 135
4.8 文件的删除与换名 138
4.8.1 删除文件和目录 138
4.8.2 文件改名 140
4.9 目录操作 142
4.9.1 工作目录 142
4.9.2 创建目录 145
4.9.3 读目录流 146
4.9.4 对目录流的随机访问 149
第5章 UNIX进程环境 151
5.1 main函数 151
5.2 命令行参数 151
5.2.1 命令行参数的语法约定 152
5.2.2 扫描命令行参数中的选项 153
5.3 环境变量 156
5.3.1 环境表 156
5.3.2 访问环境 158
5.4 终止进程 160
5.4.1 出口状态 160
5.4.2 终止前的清理 161
5.4.3 流产程序 162
5.5 存储分配 163
5.5.1 进程的地址空间 164
5.5.2 简单存储分配 165
5.5.3 释放分配的存储单元 168
5.5.4 其他存储分配函数 169
5.6 setjmp和longump函数 170
5.7.1 查看与设置资源限制 175
5.7 进程资源 175
5.7.2 资源使用统计 178
5.7.3 进程优先权 179
5.8 用户信息 183
5.8.1 用户名 183
5.8.2 用户数据基 185
5.8.3 组数据基 188
6.1 进程创建 193
第6章 进程控制 193
6.2 执行一个新程序 199
6.3 等待进程完成 204
6.4 进程终止与僵死进程 210
6.5 system函数 214
6.6 进程组 217
6.7 会晤期 219
6.8 控制终端 220
6.9 作业控制 222
6.9.1 作业控制的概念 223
6.9.2 实现作业控制的shell 224
6.9.3 示例shell中用到的数据结构 226
6.9.4 shell的初始化 227
6.9.5 发送作业 228
6.9.6 放置作业于前台或后台 231
6.9.7 暂停的和终止的作业 233
6.9.8 继续被暂停的作业 235
6.10 进程的用户身份 236
6.10.1 调整进程的身份 238
第7章 日期与时间 246
7.1 处理机时间 246
7.1.1 clock函数 246
7.1.2 times函数 248
7.2 定时与睡眠 252
7.2.1 设置定时器 252
7.2.2 睡眠 256
7.3 日历时间 256
7.3.1 取系统时间 257
7.3.2 高分辨率时间函数 258
7.3.3 分解的日历时间 260
7.3.4 格式化日期与时间 263
7.4 时区 267
7.4.1 用TZ环境变量指定时区 267
7.4.2 Tzset函数与相关的变量 269
第8章 信号处理 270
8.1 信号概念 270
8.2 UNIX信号 273
8.2.1 程序错误类信号 274
8.2.2 程序中止类信号 275
8.2.3 闹钟类信号 277
8.2.4 I/O类信号 277
8.2.5 作业控制类信号 277
8.2.6 操作错误类信号 279
8.2.7 其他信号 279
8.2.8 sys-siglist[]数组与psignal函数 280
8.3.1 signal函数 282
8.3 指定和改变信号的动作 282
8.3.2 进程初启时的信号动作 285
8.3.3 不可靠信号 286
8.3.4 sigaction函数 287
8.4 信号句柄 292
8.4.1 正常返回的信号句柄 292
8.4.2 终止进程的句柄 293
8.5 生成信号 294
8.5.1 raise函数 294
8.5.2 kill函数 295
8.6 阻塞信号 297
8.6.1 信号集操作 298
8.6.2 信号屏蔽 299
8.6.3 检查悬挂信号 302
8.7 等待信号 304
8.7.1 pause函数 304
8.7.2 sigsuspend函数 305
8.8 使用分开的信号栈 308
8.9 信号句柄编程技巧 312
8.9.1 句柄内非局部控制转移 313
8.9.2 可重入函数 317
8.9.3 紧相邻的多个信号 319
8.9.4 被信号中断了的系统调用 322
8.9.5 原子数据访问 324
8.10 SA_SIGINFO标志 326
第9章 低级终端I/O 332
9.1 需要改变终端调置的例子 332
9.2.1 终端I/O的历史 335
9.2 低级终端I/O基础 335
9.2.2 终端硬件模式 336
9.2.3 异步串行通信 337
9.2.4 加工和非加工输入方式 339
9.2.5 输入输出队列 339
9.2.6 流控制 341
9.3 POSIX.1 GTI控制界面 341
9.3.1 termios数据结构 341
9.3.2 GTI控制函数 343
9.4.1 输入方式 344
9.4 终端属性标志 344
9.4.2 输出方式 346
9.4.3 控制方式 347
9.4.4 局部方式 348
9.4.5 特殊字符 350
9.4.6 stty命令 353
9.5 终端标识 354
9.6 获取和设置终端属性 358
9.8 非加工方式输入 362
9.7 加工方式输入 362
9.9 设置波特率 369
9.10 行控制函数 370
9.11 串行端口程序设计 373
第10章 高级I/O 377
10.1 文件锁 377
10.1.1 fcntl文件锁操作 378
10.1.2 锁的请求、释放和测试 381
10.1.3 文件锁与进程和文件的关系 389
10.1.4 死锁 390
10.1.5 建议锁与强制锁 392
10.2 流 394
10.2.1 流概貌 394
10.2.2 流消息类型和优先级 397
10.2.3 访问流 399
10.2.4 流控制操作函数ioctl 402
10.3 信号驱动的I/O 404
10.4 多路转接I/O 406
10.4.1 select函数 407
10.4.2 poll 410
10.5 异步I/O 412
10.5.1 异步I/O控制块 413
10.5.2 指定信号 414
10.5.3 异步I/O函数 414
10.5.4 异步I/O之例 417
10.6 I/O方式小结 420
10.7 readv和writev 424
10.8 存储映射I/O 425
11.1 管道 433
第11章 进程间通信 433
11.1.1 创建管道 434
11.1.2 父子进程间管道通信 435
11.1.3 连接标准输入和标准输出的管道 440
11.1.4 popen和pclose函数 441
11.1.5 管道I/O的原子性 443
11.2 FIFL特别文件 443
11.2.1 创建FIFO 444
11.2.2 FIFO操作 446
11.2.3 FIFO用于客户/服务通信 450
11.3 系统V IPC 455
11.3.1 关键字和标识 456
11.3.2 ipc-perm结构 457
11.3.3 ipcs和ipcrm命令 458
11.4 消息队列 459
11.4.1 初始化消息队列 464
11.4.2 控制消息队列 464
11.4.3 发送和接收消息 467
11.5 信号量 471
11.5.1 信号量的初始化 473
11.5.2 信号量控制 475
11.5.3 信号量操作 478
11.6 共享存储 483
11.6.1 共享存储段的访问和控制 484
11.6.2 共享存储段的连接和分离 487
12.1 套接字 493
12.1.1 套接字的域、类型和协议 493
第12章 套接字与网络通信 493
12.1.2 创建套接字 495
12.1.3 关闭套接字 498
12.2 套接字地址 499
12.2.1 主机的IP地址 499
12.2.2 主机名 502
12.2.3 服务与端口号 506
12.2.4 套接字地址数据结构 509
12.3 字节顺序 511
12.4 协议数据库 513
12.5 命名套接字 516
12.6 套接字通信模式 519
12.7 流套接字操作 521
12.7.1 请求连接 522
12.7.2 接收连接 524
12.7.3 多客户 528
12.7.4 getsockname和getpeername 534
12.7.5 send和recv 537
12.8 套接字选项 539
12.9.1 TCP带外数据 541
12.9 带外数据 541
12.9.2 带外数据的发送和接收 543
12.9.3 带外数据标志 547
12.10 数据报套接字操作 550
12.10.1 sendto和recvrfom 551
12.10.2 数据报套接字客户/服务之例 552
12.10.3 使用connect 558
12.11 超时处理 559
附录 函数索引 562
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《英语自学进阶教程全6册 3》爱尔兰迪尔德丽出版社著 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019