
| 目 录 译者序 前言 第一篇 基 础 知 识 第1章 并发1 1.1 多道程序设计和多重任务处理1 1.2 应用层次上的并发4 1.2.1 中断4 1.2.2 信号4 1.2.3 输入和输出5 1.2.4 线程和资源共享5 1.2.5 分布式计算网络6 1.3 unix标准6 1.4 unix中的编程7 1.5 使函数安全14 1.6 练习:参数数组16 1.7 附加读物16 第2章 程序和进程18 2.1 可执行程序的布局18 2.2 静态对象21 .2.3 进程id25 2.4 进程状态26 2.5 进程创建和unix fork28 2.6 wait系统调用31 2.7 exec系统调用35 2.8 后台进程和守护进程39 2.9 进程环境41 2.10 unix中的进程终止44 2.11 临界区45 2.12 练习:进程链46 2.13 练习:进程扇48 2.13.1 runsim的说明48 2.13.2 测试runsim程序48 2.14 练习:简单的biff48 2.15 练习:新闻biff49 2.15.1 biffing一个单个文件50 2.15.2 列表对象的创建50 2.16 附加读物51 第3章 文件52 3.1 目录和路径52 3.1.1 读取目录55 3.1.2 搜索路径57 3.1.3 unix文件系统58 3.2 unix的文件表示58 3.2.1 目录表示61 3.2.2 链接61 3.3 文件句柄表示66 3.3.1 文件描述符66 3.3.2 文件指针和缓冲69 3.3.3 文件描述符的继承70 3.4 过滤程序和重定向73 3.5 管道74 3.6 读和写文件77 3.7 非阻塞的i/o80 3.8 select调用81 3.9 fifo82 3.10 特殊文件——音频设备85 3.11 练习:遍历目录89 3.12 练习:proc文件系统91 3.13 练习:音频93 3.14 练习:终端控制94 3.15 附加读物95 第4章 工程:令牌环96 4.1 形成一个环96 4.2 简单通信103 4.3 令牌的互斥104 4.4 通过投票的互斥105 4.5 匿名环上的领袖选举106 4.6 用于通信的令牌环107 4.7 流水线预处理器109 4.8 并行令牌算法110 4.8.1 图像滤波110 4.8.2 矩阵乘法112 4.9 可伸缩环113 4.10 附加读物114 第二篇 异 步 事 件 第5章 信号115 5.1 发送信号115 5.2 信号屏蔽和信号集合119 5.3 sigaction函数122 5.4 pause函数和sigsuspend函数125 5.5 一个例子——biff127 5.6 系统调用和信号129 5.7 siglongjmp和sigsetjmp函数132 5.8 实时信号133 5.9 异步i/o136 5.10 练习:统计运行时间139 5.11 练习:文件系统二进程139 5.12 练习:假脱机一个“慢”设备141 5.13 附加读物141 第6章 工程:计时器142 6.1 unix中的计时器142 6.2 间隔计时器146 6.2.1 spec 1170的间隔计时器146 6.2.2 posix 的间隔计时器 149 6.3 工程概述151 6.4 简单的计时器152 6.5 设置五个独立计时器中的一个154 6.5.1 mytimers对象155 6.5.2 hardware_timer对象157 6.5.3 主程序的实现158 6.5.4 showall对象158 6.6 多计时器163 6.6.1 设置多计时器164 6.6.2 对多计时器进行测试166 6.7 多处理器的安全执行168 6.8 cron工具169 6.9 posix计时器实现169 6.10 附加读物176 第7章 工程:解剖shell177 7.1 一个简单的shell178 7.2 重定向182 7.3 管道线184 7.4 信号186 7.5 进程组、会议和控制终端190 7.6 在ush中处理后台进程193 7.7 作业控制197 7.8 ush的作业控制199 7.8.1 作业列表对象199 7.8.2 ush的作业列表200 7.8.3 ush中的作业控制201 7.9 附加读物201 第三篇 并 发 第8章 临界区和信号量203 8.1 原子操作204 8.2 信号量207 8.2.1 用testandset实现信号量209 8.2.2 无须“忙等待”信号量211 8.2.3 and同步机制211 8.3 posix信号量213 8.3.1 无名信号量的初始化214 8.3.2 posix信号量操作214 8.3.3 有名信号量216 8.4 系统ⅴ中的信号量217 8.4.1 信号量集218 8.4.2 信号量创建218 8.4.3 系统v信号量操作220 8.4.4 信号量控制225 8.4.5 信号量状态227 8.5 信号量和信号227 8.6 练习:posix无名信号量228 8.7 练习:posix有名信号量228 8.8 练习:许可权管理229 8.9 练习:系统ⅴ共享存储器230 8.9.1 系统ⅴ共享存储器的综述230 8.9.2 软管道实现的规格说明231 8.10 练习:系统ⅴ消息队列233 8.11 附加读物234 第9章 posix线程235 9.1 问题的引出:监视文件描述符236 9.1.1 简单轮询236 9.1.2 消除忙等的异步i/o238 9.1.3 使用select来消除忙等240 9.1.4 使用poll来消除忙等241 9.1.5 多线程242 9.2 posix线程245 9.3 基本线程管理246 9.4 用户线程与内核线程252 9.5 线程属性254 9.6 练习:并行文件拷贝256 9.7 附加读物257 第10章 线程同步258 10.1 互斥259 10.2 信号量263 10.3 条件变量267 10.4 信号处理和线程273 10.5 练习:线程化打印服务280 10.6 附加读物283 第11章 工程:简化的并行虚拟机284 11.1 简化的并行虚拟机285 11.2 ntpvm 工程概貌286 11.2.1 start_task 包288 11.2.2 data包289 11.2.3 done包289 11.3 分派程序的i/o和测试290 11.4 无输入的单任务296 11.5 顺序任务297 11.5.1 版本a:非线程分派程序的实现297 11.5.2 版本b:线程分派程序的实现298 11.6 并发任务300 11.6.1 版本a:用select和poll来实现300 11.6.2 版本b:用线程来实现301 11.7 广播和barrier301 11.8 terminate和signals302 11.9 附加读物302 第四篇 通 信 第12章 客户机/服务器通信303 12.1 客户机/服务器策略303 12.2 通用internet通信接口306 12.2.1 uici服务器308 12.2.2 uici客户机310 12.2.3 uici实现312 12.3 网络通信313 12.4 uici的套接口实现314 12.5 传输层接口319 12.6 流324 12.7 uici的流实现328 12.8 uici的线程安全330 12.9 练习:音频传输333 12.10 练习:ping服务器334 12.11 附加读物335 第13章 工程:internet广播336 13.1 多路传输概述336 13.2 单向通信337 13.3 双向通信338 13.4 传输缓冲区339 13.5 多路传输缓冲区341 13.6 网络接收器342 13.7 收听与关闭343 13.8 网络广播者343 13.9 信号处理344 13.10 附加读物344 第14章 远程过程调用345 14.1 基本操作345 14.2 将简单局域调用转换为rpc349 14.3 改进的远程伪随机数服务357 14.4 服务状态与有效请求361 14.5 远程有效文件服务365 14.6 联编与命名服务368 14.7 失败369 14.8 nfs——网络文件系统370 14.9 线程与远程过程调用374 14.10 练习:无状态文件服务377 14.11 附加读物378 第15章 工程:元组空间379 15.1 linda语言380 15.2 richard:一种简化的linda语言382 15.3 简单的richard元组空间384 15.3.1 元组数据结构384 15.3.2 表示元组空间385 15.3.3 元组空间操作386 15.3.4 转换为远程服务器387 15.4 黑板:一个元组空间应用390 15.4.1 n皇后问题390 15.4.2 贪婪回溯算法393 15.4.3 黑板与agent395 15.5 richard中的活动元组395 15.5.1 简化的设计395 15.5.2 与eval的通信397 15.6 以元组空间作为richard中的元组399 15.7 richard多线程服务器402 15.8 附加读物403 第五篇 附 录 附录a unix基础405 a.1 获得帮助405 a.1.1 系统调用与c库函数407 a.1.2 unix命令与实用程序408 a.1.3 与man相关的命令410 a.2 编译410 a.3 makefiles411 a.4 头文件413 a.5 链接与库414 a.6 调试帮助415 a.7 用户环境417 a.8 附加读物419 附录b uici实现420 b.1 uici原型420 b.2 socket实现420 b.3 tli实现428 b.4 流实现433 b.5 线程安全uici实现438 |
商品评论(0条)