1、分布式系统介绍,中国科技大学软件学院丁箐,2,1.1 分布式系统概念1.2 分布式系统的特点1.3 硬件概念1.4 软件概念1.5 分布式系统设计问题,主要内容,3,1.1 分布式系统概念1.2 分布式系统的特点1.3 硬件概念1.4 软件概念1.5 分布式系统设计问题,主要内容,4,What is a Distributed System? “一个分布式系统是若干个独立的计算机的集合,但是对该系统的用户来说,系统就像一台计算机一样。” 两个方面的含义: 硬件方面:各个计算机都是自治的 软件方面:用户将整个系统看作是一台计算机,1.1 分布式系统概念,5,集中式系统,6,Sun ULTRA5
2、with 32GB disk6 Units,Eathernet Switch100M,Sun ULTRA1032GB diskOne unit,NOW(Network of Workstations),7,The Grid,8,分布式系统定义,一个分布式系统组织成中间件形式,中间件层分布在多台机器上。,1.1,9,应用举例 银行“一卡通”系统电信“神州行”系统 SETIHome从集中式系统到分布式系统高性能微型计算机(PC)的普及高速计算机网络(LAN、WAN)的普及,10,1.1 分布式系统概念1.2 分布式系统的特点1.3 硬件概念1.4 软件概念1.5 分布式系统设计问题,主要内容,11
3、,优点 - 与集中式系统相比较1、经济性:高的性能/价格比 GroschLaw: Power Price2 NOPC vs. 大型机(mainframe),1.2 分布式系统的特点,12,2、性能:能产生单个大型主机不能达到的绝对性能 10,000 X 50MIPS 500,000MIPS(5千亿次)= 0.002ns/次=0.7mm,优点 - 与集中式系统相比较,13,3、应用的固有的分布性, 例如: CSCW 工作流4、可靠性高 多工系统的容错能力5、可扩充性强 系统演进能力(evolution),优点 - 与集中式系统相比较,14,总结:,优点 - 与集中式系统相比较,15,1、支持数据
4、共享 文件 数据库2、支持设备共享 高档打印机 海量磁盘,优点 -与独立PC机比较,16,3、P2P通信 email BBS4、灵活性负载分配,优点 -与独立PC机比较,17,总结:,优点 -与独立PC机比较,18,存在的问题,19,1.1 分布式系统概念1.2 分布式系统的特点1.3 硬件概念1.4 软件概念1.5 分布式系统设计问题,主要内容,20,Flynn分类:(1972)SISD(单指令流、单数据流 ):(PC机)SIMD (单指令流、多数据流 ) :矩阵计算机MISD (多指令流、单数据流 ) :无MIMD (多指令流、多数据流 ) :分布式系统,1.3 硬件概念:多台计算机是如何
5、联结在一起 ?,21,存储器使用:共享式、私有式多处理器系统(multi-processor)多计算机系统(multi-computer),MIMD分类,具有共享存储器的通常称为多处理机(multiprocessor)或多处理器;而不具有共享存储器的则称为多计算机(multicomputer),22,连接方式:总线式交换式关联程度:紧耦合式:多用于并行系统 松耦合式 :多用于分布式系统,MIMD分类,23,MIMD系统分类,sequent 超级计算机 LAN工作站 超立方 Encor RP3 Transputer,24,(1)总线型多处理机,解决总线过载:高速缓存(cache): 命中率(hi
6、t rate) 缓存一致性(coherency)直写(Write-through)监听( Snoopy),控制线、数据线、地址线,SMP?,25,(2)交换型多处理机,交叉开关线:n2个交叉开关点Omega开关网:2 2开关点,共n (log2n) /2个NUMA(NonUniform Memory Access):分层存储,26,(3)总线型多计算机,本地内存 局域网络(10M 1000M)只用于CPU和CPU之间的通信,27,网格(grid):二维平面(n2个节点)。超立方(hypercube):n维立方(2n个节点),(4)交换型多计算机,28,Intel 单核CPU芯片,29,Inte
7、l多核结构,Replicate multiple processor cores on a single die.,30,多核处理器是一类特殊的多处理机,所有处理器在同一个芯片上多核处理器是MIMD: 不同的核执行不同的指令,操作内存的不同位置 多核是一个共享内存的多处理机:所有核共享同一个内存,31,2 Processors vs. 2 Cores,2 CoresTwo cores on same die connected directlyMultiple threads and processes automatically processed in parallelOnly a sma
8、ll increase in power consumption,2 ProcessorsTwo separate chips connected externally by a system busRequires explicit software supportMuch greater power consumption,32,Inter-Core Bus Interface,Pentium D with 975X Chipset,Memory ControllerHub,I/O Controller Hub,DDR2 Memory,PCI Express x16,6 PCI,4 Ser
9、ial ATA Ports,6 PCI Express x1,High-Definition Audio,2 PCI Express x8,or,DMI (2 GB/s),1066 / 800 MHz FSB,Core 1L2 Cache(for Core 1),Core 0L2 Cache(for Core 0),6 USB 2.0,Intel Matrix Storage,BIOS Support,Intel Pro 1000 LAN,33,1.1 分布式系统概念1.2 分布式系统的特点1.3 硬件概念1.4 软件概念1.5 分布式系统设计问题,主要内容,34,分类: 紧耦合式、 松耦合式
10、,1.4 软件相关概念,紧耦合 松耦合 软件,硬件松耦合紧耦合,分布式OS,多处理机分时OS,网络OS,35,软件相关概念,An overview of DOS (Distributed Operating Systems)NOS (Network Operating Systems)Middleware,36,网络操作系统(NOS),网络操作系统的一般结构,37,网络操作系统(NOS),远程登录telnetrlogin,38,网络操作系统(NOS),网络文件NFSmount磁盘映射,39,真正的分布式系统,单一的、全局的进程间通信机制协议、位置全局进程管理创建、启动、挂起、撤销全局文件系统文
11、件名、目录、操作统一的系统调用接口,40,多处理机分时系统(MPOS),具有一个运行队列的多处理机系统,41,多处理机分时系统(MPOS),存在一个唯一的运行队列 文件系统的结构不同,特点:,42,多计算机操作系统,多件算机操作系统的一般结构,1.14,43,多计算机操作系统,消息传递的阻塞和缓冲,1.15,44,多计算机操作系统,Relation between blocking, buffering, and reliable communications.,45,分布式共享内存系统,Pages of address space distributed among four machine
12、sSituation after CPU 1 references page 10Situation if page 10 is read only and replication is used,46,分布式共享内存系统,False sharing of a page between two independent processes.,47,中间件,分布式系统作为中间件的一般结构,1-22,48,中间件和开放性,In an open middleware-based distributed system, the protocols used by each middleware laye
13、r should be the same, as well as the interfaces they offer to applications.,1.23,49,三种操作系统比较,50,1.1 分布式系统概念1.2 分布式系统的特点1.3 硬件概念1.4 软件概念1.5 分布式系统设计问题,主要内容,51,透明性(Transparency)(对用户、对程序),1.5 分布式系统设计中的关键问题,52,灵活性,单内核基本上是目前的集中式操作系统,增加了网络功能和远程服务集合。 微内核的四种基本服务:(1)进程间通信机制(2)少量内存管理功能(3)必要的低层进程管理和调度(4)低层输入输出服务,53,可靠性,可用性(availability):系统可用时间的比例 “或“相关性、”与”相关性备份保持一致性 安全性:资源不被非法用户使用 身份认证、入侵监测 容错性硬软件冗余恢复和接管,54,性 能,响应时间 吞吐量系统的利用率网络容量消耗程度 并行性 细粒度并行性 粗粒度并行性,55,可伸缩性(scalability),避免: 集中式硬件 集中式算法 集中式的数据结构,56,可扩性技术,没有一台机器上存放着关于系统状态的全部信息机器只是基于本地信息做出决定一个机器出故障不会破坏算法不一定存在全局时钟。,57,可扩性示例,