- 高等教育出版社
- 9787040133097
- 1
- 249463
- 平装
- 特殊
- 2004-01-30
- 530
- 422
- 工学
- 计算机科学与技术
本书介绍由计算机网络构成的分布计算系统的结构和实现技术,侧重于基本概念、基本原理和基本方法的讲授。全书共分为12章:分布计算系统的基本概念和体系结构,分布计算系统的进程通信,分布式程序设计语言,命名与保护,分布式同步和互斥机构,死锁问题及其处理技术,容错技术,分布式数据管理,分布式文件系统的设计问题与实现方法,分布式调度,分布式共享存储器技术以及基于对象的分布式系统。
本书比较全面和系统地反映了国际上在这一领域取得的主要成果。特别是最近几年的成果,强调了通信、容错、死锁、同步和互斥、并发控制、分布式调度及分布式对象方面的内容。
本书叙述详细、由浅入深,具有丰富的图示,力求做到既通俗易懂,又具有一定的理论深度。本书可作为高等院校本科高年级学生和研究生教材,也可供有关科技人员参考。
第一章 绪论
1.1 为什么需要分布计算系统
1.2 分布计算系统的相关概念
1.2.1 什么是分布计算系统
1.2.2 松散耦合与紧密耦合分布计算系统
1.2.3 同构型与异构型分布计算系统
1.3 分布计算系统的优点和新问题
1.3.1 分布计算系统的优点
1.3.2 分布计算系统的新问题
1.4 分布计算系统的透明性
1.4.1 透明性的概念
1.4.2 影响透明性的因素
1.5 分布计算系统与计算机网络系统
1.5.1 网络操作系统与分布式操作系统
1.5.2 计算机网络系统与分布计算系统的区别
1.6 分布计算系统的体系结构与设计问题
1.6.1 分布计算系统的分层体系结构
1.6.2 分布计算系统的组成
1.6.3 基于中间件的分布计算系统
1.6.4 分布计算系统的设计问题
习题
参考文献
第二章 进程通信
2.1 同一节点上的进程间通信
2.1.1 管道
2.1.2 消息队列
2.1.3 共享内存
2.2 不同节点上的进程间通信
2.2.1 网络通信分层结构模型
2.2.2 进程通信原语
2.2.3 报文传递实例l:socket进程通信
2.2.4 报文传递实例2:MPI进程通信
2.2.5 RPC实例1:SUNRPC
2.2.6 RPC实例2:DCERPC
2.3 组通信
2.3.1 组通信的概念
2.3.2 组通信的设计问题
2.3.3 ISIS中的组通信
习题
参考文献
第三章 分布式程序设计语言
3.1 分布式程序设计语言概述
3.1.1 分布式应用程序的分类
3.1.2 分布式程序设计与顺序程序设计的区别
3.1.3 分布式程序设计语言的分类
3.2 并行性的支持
3.2.1 并行性的概念
3.2.2 并行性的表示
3.2.3 并行计算到物理处理机的变换
3.3 进程通信与同步的支持
3.3.1 报文传递
3.3.2 共享数据
3.3.3 非确定性的表示和控制
3.4 逻辑上分布地址空间的语言
3.4.1 同步式报文传递语言
3.4.2 异步式报文传递语言
3.4.3 基于会合的语言
3.4.4 基于远程过程调用的语言
3.4.5 多重通信原语
3.4.6 基于对象的语言
3.4.7 基于原子事务处理的语言
3.5 逻辑上共享地址空间的语言
3.5.1 并行函数式语言
3.5.2 并行逻辑语言
3.5.3 基于分布数据结构的语言
3.6 分布式控制描述语言DCDL
3.6.1 DCDL中并行性的表示
3.6.2 选择语句
3.6.3 重复语句
3.6.4 语句并发(或并行)的条件
3.6.5 DCDL中的通信
3.6.6 DCDL中的通信容错
习题
考文献
第四章 命名与保护
4.1 分布式系统中的命名
4.1.1 名字、标识符和地址
4.1.2 分布式系统中的名字
4.1.3 名字的结构
4.1.4 名字空间
4.1.5 名字解析
4.1.6 分布式系统中的名字空间的实现
4.1.7 实例:DNS
4.2 加密技术
4.2.1 传统加密方法
4.2.2 公开密钥加密方法
4.3 保护
4.3.1 保护的目标与要求
4.3.2 公开密钥加密技术实现数字签名
4.3.3 单密钥加密技术实现数字签名
4.3.4 使用报文摘要的数字签名
4.3.5 权能的保护
4.3.6 分布系统中访问位置的控制
4.4 保护的例子:Amoeba
4.4.1 信口
4.4.2 权能
4.4.3 用软件F盒保护
习题
参考文献
第五章 同步和互斥
5.1 分布式系统中的资源管理
5.1.1 资源管理方式
5.1.2 控制空间
5.1.3 分散控制与通信
5.1.4 资源的分配原则
5.2 同步机构
5.2.1 分布式系统中同步机构的作用
5.2.2 分布计算系统中的同步机构
5.2.3 物理时钟
5.2.4 逻辑时钟
5.3 系统的全局状态
5.3.1 全局状态的形式定义
5.3.2 全局状态的获取
5.3.3 一致全局状态的充要条件
5.4 互斥算法
5.4.1 互斥问题
5.4.2 集中式互斥算法
5.4.3 非基于令牌的互斥算法
5.4.4 基于令牌的互斥算法
5.4.5 选举算法
5.4.6 自稳定算法
习题
参考文献
第六章 分布式系统中的死锁
6.1 死锁问题
6.1.1 死锁发生的条件
6.1.2 死锁的图论模型
6.1.3 处理死锁的策略
6.1.4 死锁的AND条件和OR条件
6.2 死锁的预防
6.2.1 预防死锁的一般方法
6.2.2 基于时间戳的预防死锁方法
6.3 死锁的检测
6.3.1 集中式死锁检测
6.3.2 分布式死锁检测
6.3.3 层级式死锁检测
6.3.4 死锁检测的实例
习题
参考文献
第七章 分布式系统中容错技术
7.1 分布式系统中的故障模型
7.1.1 基本概念
7.1.2 基本的故障模型
7.2 容错系统的基本构件
7.2.1 坚固存储器
7.2.2 故障-停止处理器
7.2.3 原子操作
7.3 节点故障的处理
7.3.1 向后式恢复
7.3.2 向前式恢复
7.4 检查点算法
7.4.1 一致性检查点
7.4.2 异步检查点
7.4.3 同步检查点
7.4.4 混合检查点
7.4.5 报文日志
7.5 拜占庭故障的恢复
7.5.1 恢复中的设计问题
7.5.2 错误屏蔽和进程复制
7.5.3 容错系统中的一致性协议
7.6 可靠的组通信
7.6.1 基本的可靠组播方案
7.6.2 可靠的组播通信中的可扩充性
7.6.3 原子组播
习题
参考文献
第八章 分布式数据管理
8.1 一致性模型
8.1.1 严格一致性
8.1.2 顺序一致性和可线性化一致性
8.1.3 相关一致性
8.1.4 FIFO一致性
8.1.5 弱一致性
8.1.6 释放一致性
8.1.7 进入一致性
8.2 并发控制
8.2.1 并发控制的目标与事务处理
8.2.2 可串行化调度
8.2.3 基于锁的并发控制
8.2.4 基于时间戳的并发控制
8.2.5 乐观的并发控制
8.3 原子事务处理
8.3.1 原子事务处理的性质
8.3.2 事务处理的分类
8.3.3 原子事务处理的实现
8.3.4 基于原子事务处理的局部恢复
8.3.5 分布式提交协议
8.4 多副本更新和一致性管理
8.4.1 分布式系统中的系统数据库
8.4.2 兼容可串行化
8.4.3 主站点方法
8.4.4 循环令牌方法
8.4.5 同步表决方法
8.4.6 活动复制控制方法
8.4.7 法定数方法
习题
参考文献
第九章 分布式文件系统
9.1 分布式文件系统的特点和基本要求
9.1.1 分布式文件系统的特点
9.1.2 分布式文件系统的基本要求
9.2 分布式文件系统中的命名
9.2.1 命名方案
9.2.2 命名的实现技术
9.3 共享语义
9.4 缓存
9.4.1 文件的远程访问方法
9.4.2 缓存的粒度和地点
9.4.3 更新策略、缓存有效性检验和一致性
9.4.4 缓存和远程服务的比较
9.5 容错和可扩充性
9.5.1 无状态服务和有状态服务
9.5.2 可用性与文件复制
9.5.3 可扩充性
9.5.4 用线程实现文件服务员
9.6 安全性
9.7 SUN网络文件系统(NFS)
9.7.1 NFS概述
9.7.2 NFS中的通信
9.7.3 NFS服务员
9.7.4 NFS中的命名
9.7.5 NFS中的文件封锁
9.7.6 缓存和复制
9.7.7 NFS中的容错
9.7.8 NFS的安全性
9.8 其他的分布式文件系统及其比较
9.8.1 设计目标
9.8.2 通信和进程
9.8.3 命名
9.8.4 同步
9.8.5 缓存和复制
9.8.6 容错
9.8.7 安全性
习题
参考文献
第十章 分布式调度
10.1 调度算法概述
10.1.1 调度算法的分类
10.1.2 调度算法的目标和有效性评价
10.2 静态调度
10.2.1 任务划分与分配
10.2.2 基于任务优先图的任务调度
10.2.3 两种最优调度算法
10.2.4 基于任务相互关系图的任务调度
10.3 动态调度
10.3.1 动态调度的组成要素
10.3.2 动态负载平衡算法的分类、设计决策和使用的参数
10.4 空闲工作站的调度结构
10.4.1 工作站共享问题
10.4.2 工作环境
10.4.3 集中式调度
10.4.4 分散式调度
10.4.5 混合式调度
10.5 进程转移和远程执行
10.5.1 进程转移和远程执行的目的和方法
10.5.2 Sprite的进程迁移和远程执行设备
10.5.3 V系统中的可抢先的远程执行设备
10.5.4 NEST中的透明的远程执行设备
10.6 空闲工作站共享系统Sidle
10.6.1 Sidle的组成
10.6.2 Sidle的调度
10.6.3 Sidle的透明远程执行设备
习题
参考文献
第十一章 分布式共享存储器
11.1 基本概念
11.1.1 什么是分布式共享存储器系统
11.1.2 为什么需要分布式共享存储器
11.1.3 共享存储器中缓存一致性方法
11.1.4 DSM的设计与实现问题
11.1.5 一致性语义
11.2 实现DSM的算法
11.2.1 算法使用的模型和环境
11.2.2 中央服务员算法
11.2.3 迁移算法
11.2.4 读复制算法
11.2.5 全复制算法
11.2.6 算法性能
11.2.7 算法比较
11.3 使用目录的DSM
11.3.1 目录方案的分类
11.3.2 全映像目录
11.3.3 有限目录
11.3.4 链式目录
11.3.5 只对专用数据进行缓存的方案
11.3.6 性能比较
11.4 DSM系统的实现
11.4.1 实现DSM的基本方法
11.4.2 结构和粒度
11.4.3 数据定位和访问
11.4.4 一致性协议
11.4.5 替换策略
11.4.6 颠簸
11.4.7 可扩充性
11.4.8 异构性
11.4.9 其他有关算法
11.5 DSM实例:Ivy和MemNet
11.5.1 Ivy——软件实现的DSM
11.5.2 Ivy一致性协议
11.5.3 Ivy存储器管理
11.5.4 Ivy中的进程同步
11.5.5 MemNet——硬件实现的DSM
11.5.6 MemNet缓存一致性协议
11.5.7 Ivy与MemNet的比较
习题
参考文献
第十二章 基于对象的分布式系统
12.1 分布式对象
12.1.1 对象的概念
12.1.2 对象的类型
12.2 CORBA
12.2.1 CORBA的总体结构
12.2.2 CORBA的对象模型
12.2.3 接口库和实现库
12.2.4 CORBA的服务
12.2.5 CORBA的通信
12.2.6 CORBA的POA
12.3 DOOM
12.3.l COM和DCOM
12.3.2 DCOM的对象模型
12.3.3 DCOM的类型库和注册
12.3.4 DCOM的服务
12.3.5 DCOM的通信
12.3.6 DCOM的Moniker
12.4 Clouds系统
12.4.1 Clouds的对象
12.4.2 Clouds的线程
12.4.3 Clouds的存储器
习题
参考文献