目录 1
第一章 并行性的概念及其发展 1
第一节 计算机系统结构中的并行性概念 1
第二节 并行算法 10
第三节 并发程序设计的发展 17
习题 23
第二章 并发问题及其语言的描述 24
第一节 并发的例子 24
第二节 并发执行的语言描述 29
第三节 程序临界段 32
第四节 实现互斥和同步的方法 38
第五节 并发活动之间的信息传递 47
第六节 管程的概念 50
习题 53
第三章 并发程序设计语言:CSP/K 55
第一节 顺序程序设计语言SP/K 55
第二节 并发的指定 62
第三节 管程的设计方法 64
第四节 并发程序设计实例 71
习题 98
第四章 操作系统设计范例 100
第一节 硬件设备的模拟 100
第二节 输入输出假脱机 114
第三节 执行程序的设计 120
第四节 内核的实现 133
第五节 作业流的执行 148
习题 158
第一节 ADA语言概述 159
第五章 ADA语言的并发设计能力 159
第二节 任务(task) 166
第三节 任务簇 170
第四节 读写问题 173
第五节 例外处理 179
习题 183
第六章 数据库的并发操作 187
第一节 并发操作的可串行化 187
第二节 LOCK/UNLOCK的两段式规程 189
第三节 RLOCK/WLOCK规程 195
第四节 树式规程 198
第五节 分布式事务的处理 202
第六节 分布式事务调度的可串行性 207
第七节 分布式事务的两段式规程 209
第八节 时戳 213
习题 223
第七章 Petri网 226
第一节 Petri网的定义 226
第二节 Petri网的模型 229
第三节 向量替换系统VRS 232
第四节 数据链路规程的模拟 235
习题 245
第八章 并发程序的正确性证明 247
第一节 程序正确性的定义 248
第二节 循环不变式 250
第三节 并发执行公理 252
第四节 ADA任务的正确性验证 256
习题 259
参考文献 261