顶部
收藏

分布计算系统


作者:
徐高潮等
定价:
33.80元
ISBN:
978-7-04-013309-7
版面字数:
530千字
开本:
特殊
全书页数:
422页
装帧形式:
平装
重点项目:
暂无
出版时间:
2004-01-30
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机科学与技术专业课程

本书介绍由计算机网络构成的分布计算系统的结构和实现技术,侧重于基本概念、基本原理和基本方法的讲授。全书共分为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的存储器
    • 习题
    • 参考文献

相关图书