1、课程主要内容,分布式系统概述 体系结构 进程管理 通信 命名系统 同步 一致性和复制 容错性 分布式安全 分布式文件系统,第一章 分布式系统概述,什么是操作系统? 什么是分布式系统? 分布式系统的目标 分布式系统的类型,什么是操作系统?,操作系统概念:操作系统是一种管理计算机系统资源,控制系统工作流程,方便用户使用计算机的系统软件。,操作系统的作用(1),作为用户与计算机硬件系统之间的接口,OS作为接口的层状示意图,计算机硬件,操作系统,系统程序,应用程序,操作系统设计者,程序员,一般用户,命令,系统调用,操作系统的作用(2),作为计算机系统资源的管理者 处理机管理:分配和控制处理机 存储器管
2、理:分配及回收内存 I/O (Input/Output)设备管理:I/O设备分配与操作 文件管理:文件存取、共享和保护,操作系统的发展历史,手工操作 批处理系统(batch processing) 分时系统(time-sharing system) 实时系统(real-time system) 个人计算机操作系统(personal computer system ),手工操作的计算机,世界上第一台数字式电子计算机 ENIAC,运算速度:5000次/每秒, 18000个真空管, 占地182平方米,重量130吨,功耗140kW,卡片,批处理系统,IBM1401,IBM7094,IBM1401,输入
3、磁带,磁带机,卡片阅读机,输出磁带,打印机,主机,终端,分时系统,实时操作系统,硬实时:实时过程控制工业控制,军事控制,. 软实时:实时通信(信息)处理虚拟现实、银行、飞机订票、股市行情,实时操作系统,主要追求目标: 对外部请求在严格时间范围内作出反应 高可靠性 安全性实时系统必须和先进的技术装备相结合,个人计算机操作系统 (单用户多任务),计算机在某一时间内为单用户服务, 其追求目标是界面友好,使用方便,丰富的应用软件,操作系统发展方向,两大发展方向-宏观应用和微观应用 微型系统:嵌入式操作系统 大型系统:分布式操作系统,嵌入式操作系统,美国加州伯克利大学研制:微型智能传感器,安装TinyO
4、S,嵌入式操作系统的应用,常见的操作系统,MS OS: MS DOS, Windows 95, Windows NT, Windows 2000,Windows XP, Windows 2003 UNIX: BSD, SRV4, OSF1, SCO UNIX, AIX, Solaris, Linux 嵌入式OS: Linux、VxWorks、Windows CE.net 、Smart Phone、Pocket PC、Symbian 分布式操作系统:Amoeba、Mach、Chorus和DCE,分布式系统的定义(1),技术领域的两项进步 高性能微处理器的开发 高速计算机网络的发明 定义:分布式系
5、统是若干独立计算机的集合,它们对于用户来说就像一个系统。,分布式系统的定义(2),作为中间件存在的分布式系统,分布式系统屏蔽系统中种类各异的计算机和网络,常常通过一个软件层(中间件)组织起来。,分布式系统实例,大学或公司的工作站网络 用户工作站 处理器池 单一的文件系统 命令的分布式处理 支持订单自动处理的工作流系统 订单处理流程对用户透明 万维网:分布式文档模型,分布式系统的优缺点,优点: 与高性能的大型主机(Main Frame)系统相比 经济较高的性能价格比 对固有分布性问题求解的适应性 可扩充性比较松散的构成,使得节点的增减很容易 可靠性自动降级运行保障,故障时不停机 与分散系统(每人
6、一台微机或者工作站)相比 共享资源、加强通信、通过负载平衡提高系统的效率 扩充了系统能力 缺点: 控制比较复杂,尤其是在资源管理上 要附加许多协调操作资源属于局部工作站 性能、可靠性对网络的依赖性强,分布式系统的关键目标,让用户连接到资源 共享资源:降低经济成本 方便协作和信息交换:互联网、群件、电子商务 透明性 开放性 可扩展性,分布式系统的透明性,分布式系统的重要目标之一是透明性,即将它的进程和资源实际上分布在多台计算机上这一事实隐藏起来。,透明性 描述 访问 隐藏数据表示形式以及访问方式的不同 位置 隐藏数据所在位置 迁移 隐藏资源是否已移动到另一个位置 重定位 隐藏资源是否在使用中已移
7、动到另一个位置 复制 隐藏资源是否已被复制 并发 隐藏资源是否由若干相互竞争的用户共享 故障 隐藏资源的故障和恢复 持久性 隐藏资源(软件)位于内存里或在磁盘上,透明度,透明性受到限制 位置透明性 必须将透明性与其他因素(如性能)结合起来考虑。,分布式系统的开放性,开放性定义:根据一系列准则来提供服务,这些准则描述了所提供服务的语法和语义 分布式系统中,服务通常通过接口指定,接口定义了可用函数的名称、参数类型、返回值以及可能出现的异常,良好的接口规范说明应具有: 完整性 中立性 互操作性:不同厂商组件的共存和协同工作程度 可移植性 灵活性:方便的组合不同组件,添加、替换组件 灵活性的关键:策略
8、与机制分离,分布式系统的可扩展性,规模上的扩展:更多的用户和资源 地域上的扩展:用户和资源相隔更远 管理上的扩展:跨越多个管理机构,规模上扩展的限制,可扩展性限制的实例,地域上扩展的限制,难以扩充为局域网设计的分布式系统的原因: 局域网的分布式系统是基于同步通信的,难以适用于广域系统 局域网提供高度可靠的基于广播的通信方式,而广域网的通信本质上是不可靠的,而且是点对点的;服务定位问题 存在集中式组件产生的性能和可靠性问题,管理上扩展的限制,在资源使用(以及付费)、管理和安全问题上各域存在相互冲突的策略 单域中的分布式组件得到同域用户的信任,而无法自动拓展到域外 分布式系统必须保护自己免受新域的
9、恶意攻击 新域必须保护自己免受分布式系统的恶意攻击,扩展技术,隐藏通信等待时间 异步通信 减少通信量 分布技术:分割组件,分散到系统中,如DNS和WWW 复制技术: 多拷贝,扩展技术 -减少通信量,1.4,由服务器检查表单 由客户端检查表单,扩展技术 -分布技术,1.5,将DNS名字空间划分为区的例子,扩展技术 -复制技术,复制:增加可用性,有助于负载均衡 缓存:在访问资源的客户周围制作资源备份 一致性问题,分布式系统的类型,分布式计算系统 分布式信息系统 分布式普适系统,分布式计算系统,集群计算系统 网格计算系统,集群计算系统,一组工作站通过高速局域网连接,运行并行程序 同构性:相同的硬件和
10、操作系统 基于Linux的Beowulf集群,网格计算系统,网格利用互联网把分散在不同地理位置的电脑组织成一个“虚拟的超级计算机”,其中每一台参与计算的计算机就是一个“节点”,而整个计算是由成千上万个“节点” 组成的“一张网格。这样组织起来的“虚拟的超级计算机”有两个优势,一个是数据处理能力超强;另一个是能充分利用网上的闲置处理能力。 高度异构性:硬件和操作系统、网络、管理域和安全策略 虚拟组织:具有相同的访问资源权限,网格分层体系结构,光纤层:在特定节点提供使用局部资源的接口 连接层:支持网格事务处理的通信协议、安全协议 资源层:负责管理单个资源:访问控制 汇集层:负责多个资源的管理,分配、
11、调度、数据复制 应用层:运行在虚拟组织中,可以充分利用网格计算资源,分布式信息系统,事务处理系统:支持多个请求的事务处理 企业应用集成: 应用程序组件之间可以直接通信,而不仅限于请求/回复,事务处理系统,事务模型 事务分类,事务模型 (1),更新一个主库存磁带是具有容错性的,事务模型 (2),事务原语示例,事务模型 (3),预定三个航班的事务得以提交 当订不到第三个航班时,事务中止,事务属性,事务属性ACID: 原子性(atomic):事务的执行不可分割 一致性(consistent):事务不能破坏系统的恒定性 独立性(isolated,串行性):并发的事务不会互相干扰 持久性(durable
12、):一旦事务被执行,所作的修改就永远生效,事务分类,单层事务(A flat transaction ):不允许提交或取消部分结果 嵌套事务(A nested transaction):按逻辑关系分成独立的许多子事务(可分布到不同机器上并发运行,以获得更好的性能);子事务提交结果对父事务和后续子事务是可见的;父事务中止会导致所有子事务的中止,TP监视器,企业应用集成,通信中间件:远程过程调用、远程对象调用、面向消息的通信,分布式普适系统 (Distributed Pervasive Systems),随着移动和嵌入式计算设备的引入,出现了以不稳定行为特征的分布式系统-分布式普适系统 普适计算是指
13、无所不在的、随时随地可以进行计算的一种方式;主要针对移动设备,比如信息家电或某种嵌入式设备,如掌上电脑、车载智能设备、笔记本计算机、手表、智能卡、智能手机(具有掌上电脑的一部分功能)、机顶盒、POS销售机、屏幕电话等新一代智能设备。普适计算设备可以一直或间断地连接着网络。与Internet、Intranet及Extranet连接,使用户能够随时随地获取相关的各种信息,并做出回应。 普适应用程序的三种需求: 接受上下文的变化(Embrace contextual changes):设备知道其环境总在变化 促进自主合成(Encourage ad hoc compositon):容易配置设备上的应用
14、程序族 以共享为默认行为(Recognize sharing as the default):要求有容易读取、存储、管理和共享信息的方法。 具体实例: 家庭系统 电子保健系统 传感器网络,家庭系统,数字家庭能通过家庭网关将宽带网络接入家庭,家庭内部的网络可以是无线或有线的。 在家庭内部,手持设备、PC或者家用电器通过有线或者无线的方式连接到网络,从而提供了一个无缝、交互和普适计算的环境。 人们能在任何地点、任何时候访问社区服务网络,比如在社区里预定一场比赛的门票, 通过远程监控器监控家庭的情况,使生活更安全, 电子家庭解决方案通过高级的设备与电器诊断、自动定时、集中和远程控制等功能,令生活更方
15、便舒适, 空调系统 白色家电:电子维护、物品识别、远程访问和控制,需要解决的问题 自我配置和自我管理:通用即插即用技术(UPnP):自动获得IP,相互识别设备 个人空间的管理:分布式存储导致的一致性问题,电子保健系统,(a) 使用本地网络集线器 (b) 使用无线连接,配有各种传感器,构成身体局域网 功能:医疗监护、远程诊断和会诊,电子保健系统,电子保健系统要解决的问题: 监视数据如何保存? 如何防止关键数据的丢失? 生成和广播警告信息需要什么基础设施? 医生如何提供在线反馈? 如何实现监视系统的健壮性? 会有哪些安全问题?如何采取正确的策略?,传感器网络,在操作员结点存储和处理数据,通常用于测量和检测应用- “一号高速公路上往北方向上车流量如何?”,在传感器结点存储和处理数据,小 结,分布式系统的定义 分布式系统的目标 分布式系统的类型,