《计算机操作系统》(孙雅如版)全套PPT电子课件教案-第7章 高级操作系统.ppt_第1页
《计算机操作系统》(孙雅如版)全套PPT电子课件教案-第7章 高级操作系统.ppt_第2页
《计算机操作系统》(孙雅如版)全套PPT电子课件教案-第7章 高级操作系统.ppt_第3页
《计算机操作系统》(孙雅如版)全套PPT电子课件教案-第7章 高级操作系统.ppt_第4页
《计算机操作系统》(孙雅如版)全套PPT电子课件教案-第7章 高级操作系统.ppt_第5页
已阅读5页,还剩181页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章 高级操作系统 第7章 高级操作系统 7.1 多处理机操作系统 7.2 网络操作系统 7.3 分布式操作系统 第7章 高级操作系统 7.1 多处理机操作系统 7.1.1 多处理机系统的分类 过去几年中,人们已经提出过不同的多cpu计算机系统的分 类方案,但却没有一种方案真正流行或者被广泛采用。在这些 方案中最经常被引用的是flynn的分类方案(见图7-1)。flynn 提出两个他认为十分重要的特征:指令流的数量和数据流的数 量。 第7章 高级操作系统 图7-1 多处理机系统分类法 第7章 高级操作系统 第一类是具有单指令流、单数据流的计算机,它被称为sisd (single instruction stream,single data stream)。所有 传统的单处理机(即只有一个cpu的)计算机,从个人计算机到 大型主机,都属于这一类。 第二类是simd(single instruction stream,multiple data stream),多指令流、多数据流计算机系统有一个指令流 和多个数据流。这种类型是指有一个能取一条指令的指令单元的 处理机阵列结构。在这个结构中,指令单元取出一条指令后,操 纵许多数据单元并行地执行这条指令,而且每个数据单元都有它 自己的数据。这种类型的计算机在用多组数据重复进行同样的计 算时是非常有用的,例如,把有64个独立向量的所有元素累加起 来。一些超级计算机就属于simd型。 第7章 高级操作系统 第三类为misd(multiple instruction stream,single data stream)。此类型计算机有多条指令流,一条数据流。我 们已知的计算机中没有属于这一类的。 最后一类是mimd(multiple instruction stream, multiple data stream),多指令流、多数据流计算机系统在 本质上是一组独立的计算机,每个计算机有自己的程序计数器 、程序和数据。所有的分布式系统都是mimd型。 第7章 高级操作系统 在图7-1中,我们进一步把mimd计算机群分成两类:那些具 有共享存储器的通常称为多处理机(multiprocessor)或多处理 器;而不具有共享存储器的则称为多计算机(multicomputer)。 它们之间的本质区别在于:在多处理机中,所有的cpu共享统一 的虚拟地址空间。相反,在多计算机中,每个计算机有它自己私 有的存储器。由网络连接的个人计算机的集合就是一个多计算机 系统的普通实例。 这两种类型又可以分别根据互连网络的体系结构进一步进行 细分。在图7-1中,我们把这两种分类描述为总线型(bus)和交换 型(switched)。所谓总线型是指只通过单个网络、底板、总线、 电缆或其它介质将所有计算机连接起来。 第7章 高级操作系统 交换型系统并不像总线结构那样有一个共享的网络主干,而 是在机器和机器之间有独立的线路,在实际使用中还有许多不同 的连线方式。信息沿着线路传送,在每一步都需要进行明确的路 由选择以将信息通过某个输出线路发送出去。 另一种方法是按处理机之间的耦合度分类,在一些系统中的 机器是紧耦合型(tightly coupled)的,而在另一些系统中它们 是松耦合型(loosely coupled)的。在紧耦合的系统中,一台计 算机向另一台计算机发送信息的时延很短,数据传输速率高,也 就是说它每秒钟所能够传送的比特数大。而在松耦合的系统中则 正好相反,机器间信息传送延迟大,数据传输速率也低。 第7章 高级操作系统 紧耦合的系统多用于并行系统(共同处理一个问题),而 松耦合系统多用于分布式系统(处理一些不相关的问题)。 总地说来,多处理机的耦合程度要比多计算机高,因为它 们能以存储速率交换数据,但一些基于光纤的多计算机也能以 存储速率交换数据。 下面我们将更详细地介绍图7-1中所示的四个类别,即总线 型多处理机、交换型多处理机、总线型多计算机和交换型多计 算机。我们将会看到,不同类别的计算机系统对操作系统有不 同的要求。 第7章 高级操作系统 7.1.2 多处理机系统的结构 1基于总线的多处理机系统 基于总线的多处理机是由若干个cpu组成的,它们都连接到 一个公共的总线上,并且共享一个存储器模块。只要有一个cpu 和存储器卡插在高速底板或母板上,就可以实现一个简单的结 构配置。典型的总线有32根或64根地址线,32根或64根数据线 ,还有约32根或更多的控制线,它们都是并行操作的。为了要 读取存储器中的一个字,cpu首先将它想要读取的字的地址放到 总线的地址线上,然后给控制线发送一个适当的信号来表明它 想要进行读操作。存储器进行响应,把该地址的内容送到数据 线上以使cpu可以对它进行读取。写操作也以相似的方式进行。 由于存储器只有一个,当cpu a给存储器写入一个字,一微秒后 cpu b在读出该字的内容时会得到cpu a刚写入的那个值。 第7章 高级操作系统 这种实现方案的问题在于,只要有仅仅45个cpu时,总线 就会经常过载,性能也会急剧下降。解决的办法是在cpu和总线 之间增加一个高速缓冲存储器(cache memory),如图7-2所示 。缓冲存储器保留着最近刚存取过的字。所有的内存访问请求 都要经过它。如果请求的字在缓冲存储器中,缓冲存储器就会 直接响应cpu,而不产生总线请求。如果缓冲存储器足够大的话 ,那么成功的可能性(称为命中率)将是很高的,而且每个cpu 的总线通信量也会急剧下降,系统中也就能够容纳更多的cpu。 通常,缓冲存储器的大小从64 kb1 mb,命中率经常可以达到 90%或更高。 第7章 高级操作系统 图7-2 基于总线的多处理机 第7章 高级操作系统 然而,缓冲存储器的引入也带来了一个严重的问题。假定有 两个cpu a和b,它们把同一个字分别读入自己的缓冲存储器内。 在a改写这个字后,当b再读该字时,从它的缓冲存储器中得到的 是原来的旧值,而不是a刚写入的值。这时存储器就是不相关的 ,使得系统难以进行编程。 解决这个问题的办法有多种,其中之一称作通写缓冲存储器 (write-through cache)。这个方法是把缓冲存储器设计成无 论何时在对其写入一个字时,该字就能同时写入存储器中。缓冲 存储器读命中不会引起任何总线负载,但是缓冲器读失败和所有 的写命中和写失败都会引起总线负载。 第7章 高级操作系统 另外,所有的缓冲存储器都不断监听总线。当一个缓冲存储 器发现它所存储的某个地址的字正被进行写操作时,它要么从它 的存储器中去掉那个字,要么把该存储器字更改为新值。这样的 缓冲存储器称为监听缓冲存储器(snoopy cache),因为它总是 在对总线进行“监听”(窃听)。几乎所有基于总线的多处理机 都使用这种或者与之十分类似的体系结构。 第7章 高级操作系统 2交换型多处理机系统 要建立一个拥有64个以上处理机的多处理机系统,就需要采 用一种不同的方法把这些cpu和存储器连接起来。一种可能方案 就是把存储器分成许多存储模块,用纵横开关把它们与cpu相连 ,如图7-3(a)所示。在图中我们可以看出,每个cpu和每个存 储器模块都有一个外部接口同这个交换开关相连。在每个交叉点 上都有一个微小的能够用硬件打开或关闭的电子交叉点开关。当 cpu想要访问一个特定的存储器模块时,连接它们的交叉点就暂 时闭合,允许访问。如果两个cpu想要同时访问同一个存储器模 块,其中的一个必须等待另外一个访问结束之后才能够进行。许 多cpu能够同时访问存储器仍是纵横开关的优点。 第7章 高级操作系统 图7-3 交换型多处理机系统 第7章 高级操作系统 纵横开关的不足之处在于当有n个cpu和n个存储器模块时, 需要n2个纵横开关。如果n值很大的话,那么这个数字就会非常 大。为了避免这种情况的发生,人们已经找出了替代的交换网络 ,它只需要较少的开关。图7-3(b)中的omega网络就是替代这 种网络的一个实例。在这个网络中包括4个(22)纵横开关, 每个纵横开关都有两个输入和两个输出,而且任何一个输入都可 以与任何一个输出相连接。仔细研究图7-3就会发现,只要正确 地设置开关,任何一个cpu都可以访问所有的存储器。而这些纵 横开关的设定工作可以在纳秒级或更少的时间内完成。 第7章 高级操作系统 在通常的情况下,如果有n个cpu和n 个存储器模块,omega 网络就要log2n个交换开关级,每级包括n/2个纵横开关,因此总 共有(nlog2n)/2个纵横开关。虽然当n值很大时,它要比n2 好( 远小于n2 ),但实际数量仍然相当大。 另外还有一个问题就是时延。例如,当n=1024时,从cpu到 存储器有10个纵横开关级,而还有另外的10个纵横开关级用于返 回所请求的字。假定cpu是现代的risc芯片,其速度是100 mips ,也就是执行一条指令的时间是10 ns。如果一个存储器请求及 返回结果必须在10 ns内通过所有的20个纵横开关级(10个用于 传送出请求而另外10个用于传送返回结果),那么纵横开关的交 换时间必须为0.5 ns。根据前面的计算,整个多处理机系统需要 5120个0.5 ns级的纵横开关,这是十分昂贵的。 第7章 高级操作系统 3基于总线的多计算机系统 相对而言,建立一个多计算机系统(即非共享存储器)更 容易。每个cpu都与它自身的存储器直接相连。为了实现cpu间 的通信,也需要一些互连方案,但是由于它只用于cpu和cpu之 间的通信,通信量要比cpu和存储器之间的通信量低几个数量级 。 图7-4是一个基于总线的多计算机。虽然它的拓扑结构看 起来与基于总线的多处理机很相似,但是因为其上的通信量很 少,所以并不需要高速的背板总线。事实上,它可能是更低速 的lan(比如10100 mb/s)。因此,图7-4通常是一个lan上工 作站的集合,而不是插入高速总线的cpu卡的集合。 第7章 高级操作系统 图7-4 由多台工作站组成的局域网多计算机系统 第7章 高级操作系统 4交换型多计算机系统 最后一个类别是交换型多计算机。虽然人们已经提出并建 立了各种互连网络,但是它们都有一个特性,就是每个cpu都直 接且排它地访问自己的私有存储器。图7-5给出了两个流行的拓 扑结构:网格(grids)和超立方体(hypercube)。网格结构很 容易理解,它可以被设计在一块印刷电路板上,最适用于解决 固有特性为两维的问题,例如图像理论或视觉(如机器人的眼 睛或分析照片)。 第7章 高级操作系统 图7-5 交换型多计算机结构 第7章 高级操作系统 超立方体是一种n维立方体。图7-5(b)中的超立方体是四 维的。它可被想像成两个普通的立方体,每个立方体有8个顶点 和12条边。每个顶点都代表一个cpu,每条边代表两个cpu间的 连接。两个立方体中相应的顶点是相连的。 对于一个n维的超立方体,每个cpu都有n个连接与其它cpu 相连。因此,布线的复杂性按cpu数量的对数增加。因为只有相 邻的cpu是互连的,信息在到达终点前必须进行n次跳跃。然而 ,最长的可能路径也是以cpu数量的对数增加的,而不像网格中 按cpu数量的平方根增加。有1024个cpu的超立方体在几年前就 已经在商业上应用了,而具有16 384个cpu的超立方体也开始投 入商业应用。 第7章 高级操作系统 7.1.3 多处理机操作系统 为了协调多个进程同时在共享存储器的紧密耦合的多cpu上 运行,有效管理多个cpu和共享存储器及其它系统资源,需要配 备一个多处理机操作系统。多处理机操作系统最常见的通用型例 子是像unix分时系统一样运行的多处理机系统,只是它有多个 cpu而不是一个cpu。对于一个普通用户而言,一个具有32个cpu ,每个cpu运算速度为30 mips的多处理机非常像一个速度为960 mips的cpu。多处理机操作系统除了具有单机操作系统的五大资 源管理功能,还需要协调多个进程在多cpu上的运行,提供并行 进程之间的通信。 第7章 高级操作系统 1多处理机系统中的进程管理 在多处理机操作系统中设计了一个惟一的运行队列数据结 构,该队列保存在共享存储器中,同时还保存着一个就绪进程 列表。例如,在图7-6所示的系统中,有3个cpu和5个进程。5个 进程都放在共享存储器中,其中的3个正在运行:进程a在cpu 1 上,进程b在cpu 2上,进程c在cpu 3上。另外两个进程d和e在 存储器中等待运行。 第7章 高级操作系统 图7-6 多处理机系统的进程运行队列 第7章 高级操作系统 现在假设进程b因等待i/o或分配给它的时间片用完而阻塞 。一种方法是cpu 2必须挂起b再调度另一个进程运行;这时cpu 2通常将开始执行操作系统代码(存储于共享存储器中)。当已 经保存了进程b的所有寄存器后,它将进入一个临界区,运行调 度程序调度其它进程,使其投入运行。调度程序作为一个临界 区域运行是必要的。这样能够防止两个cpu选择同一进程运行。 通过使用管程、信号量或其它用于单处理机系统的同步机制就 可以获得必要的互斥。 第7章 高级操作系统 一旦cpu 2获得运行队列的独占访问,它就能移去第一个条 目d,退出临界区,然后开始执行d。 因为每个cpu都没有私有的存储器,而且所有的程序都存储 在全局共享存储器中,所以不论在哪一台cpu上执行进程都无关 紧要。一般说来,如果一个运行时间较长的进程在完成之前被 调度了多次,它在每个cpu上运行的时间大致相等。当进程需要 在一个cpu上运行时,在cpu的选择上惟一有影响的因素就是要 选择目前缓冲存储器中正保存着这个进程的数据的cpu,因为这 有利于提高系统运行性能。换句话说,如果所有的cpu都是空闲 的,那么优先将进程安排在它刚使用过的cpu上是较好的选择。 第7章 高级操作系统 2多处理机系统中的文件管理 多处理机系统通常包含了具有一个统一的共享块缓冲存储器 。当一个进程执行系统调用时,通过在操作系统中产生一个陷阱 来执行这个调用,当临界区被执行或存取共享块缓冲存储器时, 用信号量、管程或其它一些等效的机制来锁住其它cpu,防止它们 干扰。通过这种方法,当执行write系统调用时,共享块缓冲存储 器被锁定,向其中写入新的数据,然后开锁。正如在一个单处理 机系统上一样,任何后来的read调用将看到新的数据。总之,这 种文件系统很难与单处理机文件系统进行区分。事实上,在一些 多处理机系统中,一个cpu专用于运行操作系统,其它一些cpu则 运行用户程序。然而,由于运行操作系统的计算机经常是系统的 瓶颈,所以这种情况并不合适。 第7章 高级操作系统 7.2 网络操作系统 7.2.1 计算机网络的诞生和定义 计算机网络是计算机技术与通信技术相结合的产物。随着计 算机的广泛应用,出现了多台计算机互联的需求。现代远程通信 技术的发展为计算机网络的诞生提供了技术保障。 美国国防部的高级研究计划局(arpa)于1968年提出了一个 计算机互连的计划,1969年建立了具有四个结点的以分组交换为 基础的实验网络。1971年2月建成了具有15个结点、23台主机的 网络,这就是著名的arpanet,这是世界上最早出现的计算机网 络之一,现代计算机网络的许多概念和方法都来源于arpanet。 第7章 高级操作系统 从不同的角度对计算机网络有不同的理解,按照资源共享的 观点,可以将计算机网络定义为:用通信设备和传输介质将地理 上分散的多台独立计算机连接起来,并在网络通信协议的控制和 网络操作系统的管理下实现信息传递和资源共享的系统。 可以从以下几个方面理解这个定义: (1) 至少两台计算机才能构成网络,而这些计算机是独立的 ,即它们可以作为单机正常工作;它们可以是在一间办公室内, 也可能分布在地球的不同地方。 第7章 高级操作系统 (2) 这些计算机之间要用通信设备和传输介质连接起来,这 些通信设备即互连设备,传输介质即通信线路。 (3) 要通过相应的软件进行控制和管理。这些软件主要包括 通信协议和网络操作系统。通信协议规定了通信的计算机之间应 当遵守的通信格式和时序方面的规则,这是实现正确通信的基础 。网络操作系统对网络中的软硬件资源进行统一管理,协调使用 。 (4) 连网的目的是数据通信和资源共享。 第7章 高级操作系统 7.2.2 计算机网络的结构与组成 1计算机网络的系统结构 现代计算机网络由通信子网(communication subnet)和资 源子网(resource subnet)两级结构组成,如图7-7所示。通信 控制处理机(ccp)(在arpanet网中,ccp被称为接口信息处理 机imp)用通信介质互连构成了通信子网,实现了主机host之间 的信息传输和存储转发任务。主机通过通信子网互连构成了资源 子网,实现信息处理、运行用户应用程序和向网络用户提供可共 享的软硬件资源。将计算机网络中的纯通信部分的子网与应用部 分的主机分离开来,可以大大简化网络的设计。 第7章 高级操作系统 图7-7 由通信子网和资源子网构成的计算机网络 第7章 高级操作系统 现代计算机网络中存储转发的信息基本单元是分组 (packet),它是将整个要交换的信息报文(message)分成若干信 息分组,对每个分组按存储转发的方式在通信子网上传输,因 此又把这种以存储转发方式传输分组的通信子网称为分组交换 数据网(psdn)。 第7章 高级操作系统 2网络拓扑结构 将连接在网络上的计算机和互连设备可看作一个节点,将设 备之间的通信线路看作线,那么构成一个网络的点和线的连接形 式称为网络的拓扑结构。计算机网络中常见的拓扑结构有总线型 、星型、环型、任意互连型等,如图7-8所示。 总线型、环型、星型拓扑结构常用于局域网,任意互连型拓 扑结构常用于广域网。 第7章 高级操作系统 图7-8 网络拓扑结构 第7章 高级操作系统 3计算机网络的组成 任何一个计算机网络都包括网络硬件和网络软件两大部分。 1) 网络硬件组成 (1) 计算机:称为连网主机,又分为服务器和工作站。网络 服务器是网络的核心设备,负责网络资源管理和用户服务,并使 网上的各工作站能共享软件资源和昂贵的外设(如大容量硬盘、 光盘、高级打印机等)。服务器可分为文件服务器、远程服务器 、数据库服务器、打印服务器等。工作站是具有独立处理能力的 计算机,也称客户机,通过网络接口卡和传输介质连接到网络服 务器上,共享网络系统资源。 第7章 高级操作系统 (2) 网络连接(互连)设备:包括用于网内连接的网络适配 器、中继器、集线器和网间连接的网桥、路由器、网关等。 调制解调器(modem):家庭pc机通过电话线连网应必备 的设备,实现数字/模拟电信号转换,有内置和外挂两种。 网络适配器(network adapter):也称为网卡,插在 微机的扩展槽上,如图7-9(a)所示。它是计算机与计算机之间 通过传输介质互相通信的接口,提供数据发送和接收的功能。 目前,常用的有10 mb/s、100 mb/s和10 /100 mb/s自适应网卡 。 第7章 高级操作系统 图7-9 部分网络连接设备 (a) 网卡 (b) 集线器 (c)交换机 第7章 高级操作系统 中继器(repeater):当总线网的网段已超过最大距离 时,可用中继器来整形、放大信号,延伸电缆。 集线器(hub):又称为多端口中继器,是局域网络的连 网设备(见图7-9(b)。采用hub的lan,各计算机利用双绞线通过 hub互连构成一个星型网络拓扑结构,这样,即使网上的某个节 点发生故障,也不会影响其他节点的正常工作。常见的集线器有 8、12、16、24口几种,按集线器之间的连接方式不同,又分为 独立式、堆叠式和模块化三类。 网桥(bridge):连接两个同类且使用相同网络操作系 统的局域网。网桥具有隔离流量,降低冲突的作用。 第7章 高级操作系统 交换机(switch):用集线器互连的计算机是以共享方式 使用信道带宽的,因此当多个站点同时发送时会造成冲突,网络 中站点越多,冲突现象越严重。解决的方法是网段分割(微网段化 )-减少每个网段中站点的数量以增加网络总体带宽。网络交换机 就是实现网段分割的设备。交换机和网桥属同一类设备,均工作 在数据链路层上。但网络交换机的端口数多,并且速度快(见图7- 9(c)。在这个意义上,网络交换机又称为多端口的高速网桥。 路由器(router):两个以上不同类网络需要互联时,应 使用路由器。路由器不仅有网桥的所有功能,还具有路径的选择 功能。路由器可根据网络上信息拥挤的程度,自动地选择适当的 路径传递信息。 网关(gateway):连接网络操作系统不同的网络,或连接 局域网与广域网,或将局域网连接到远程主机上。 第7章 高级操作系统 (3) 传输介质:网络通信介质分为有线介质和无线介质两 种。有线介质有双绞线、同轴电缆和光纤三种,无线介质又分 为微波、卫星和红外线等多种。 第7章 高级操作系统 2) 网络软件的组成 (1) 网络操作系统(nos)。 一个计算机网络拥有丰富的软硬件资源,为了能使网络用户 共享网络资源、实现通信,需要对网络资源和用户通信过程进行 有效管理,完成这一功能的软件系统称为网络操作系统。常见的 网络操作系统有novell公司的netware,microsoft公司的lan manager、windows nt,以及unix系统等。 第7章 高级操作系统 (2) 计算机网络通讯协议(protocol)。 计算机网络是由多个互连的节点组成的,节点之间要做到 有条不紊地交换数据,必须遵守一些事先约定好的规则。这些 规则明确地规定了所交换数据的格式和时序。这些为网络数据 交换而制定的关于信息顺序、信息格式和信息内容的规则、约 定与标准被称为网络协议(protocol)。目前常见的通信协议 有tcp/ip、spx/ipx、osi和ieee802。其中tcp/ip是任何要连接 到internet上进行通信的计算机必须使用的协议。 第7章 高级操作系统 7.2.3 计算机网络的分类 计算机网络的分类标准很多,比如按拓扑结构、介质访问 方式、交换方式以及数据传输率等,但这些分类标准只给出了 网络某一方面的特征,并不能反映网络技术的本质。事实上, 确实存在一种能反映网络技术本质的网络划分标准,那就是计 算机网络的覆盖范围,因为不同规模的网络将采用不同的技术 。按网络覆盖范围的大小,我们将计算机网络分为局域网lan( local area network)、广域网wan(wide area network)和 城域网man(metropolitan area network)三类,如表7-1所示 。 第7章 高级操作系统 表7-1 计算机网络分类 分布距离覆 盖 范 围网络种类 10 m10 km实验室、建筑物、校园局域网 10 km校园、城市城域网 100 km省、国家广域网 1000 km洲或洲际互联网 第7章 高级操作系统 1局域网 局域网(lan)是指范围在几十米到十公里内办公室至校园 内的计算机相互连接所构成的计算机网络。计算机局域网被广 泛应用于连接校园、工厂以及机关的个人计算机或工作站,以 利于个人计算机或工作站之间共享资源(如打印机)和数据通 信。局域网区别于其它网络的三个主要方面是网络所覆盖的物 理范围,网络所使用的传输技术,网络的拓扑结构。 局域网中经常使用共享信道,即所有的机器都接在同一条 电缆上。传统局域网具有高数据传输率(10 mb/s或100 mb/s) 、低延迟和低误码率的特点。新型局域网的数据传输率可达每 秒千兆位甚至更高。 第7章 高级操作系统 局域网主要采用总线型和环型拓扑结构。在总线型网络中, 任何时刻只允许一台机器发送数据,而所有其它机器都处于接收 状态。当有两台或多台机器想同时发送数据时,必须进行仲裁, 仲裁机制可以是集中式也可以是分布式的。例如ieee802.3,即以 太网,它是基于共享总线技术,采用分布控制机制,数据传输率 为10/100 mb/s的局域网。以太网中的站点机器可以在任意时刻发 送数据,当发生冲突时,每个站点机器立即停止发送数据并等待 一个随机长的时间继续尝试数据发送。 局域网的第二种类型是环型网。在环型网中,数据沿着环单 向流动。同理,在环型网中必须有一种机制用于仲裁不同机器站 点对环的同时访问。ieee802.5(即ibm令牌环)就是一种常用的 数据传输率为4 mb/s或16 mb/s的环型局域网。 第7章 高级操作系统 2城域网 城域网(man)所采用的技术基本上与局域网相类似,只是 规模上要大一些。城域网既可以覆盖相距不远的几栋办公楼,也 可以覆盖一个城市;man连接着多个lan,每一个lan可以属于同 一组织,也可以属于多个不同的组织。城域网既可以支持数据和 话音传输,也可以与有线电视相连。城域网一般只包含12根电 缆,没有交换设备,因而其设计就比较简单。 城域网有其标准,而且已经实现。例如分布式队列双总线( distributed queue dual bus,dqdb),即ieee802.6,以及光 纤分布数据接口(fiber distributed data interface, fddi) 就是典型的城域网协议标准。 第7章 高级操作系统 3广域网 广域网(wan)通常跨接很大的物理范围,如一个国家。广 域网中的主机通过通信子网互连在一起。 在绝大多数广域网中,通信子网包含大量租用线路或专用 线路,每一条线路连着一对通信控制处理机ccp,即路由器(参 见图7.1)。当报文从源结点经过中间ccp发往远方目的结点时, 每个ccp将输入的报文完整地接收下来并储存起来,然后选择一 条空闲的输出线路,继续向前传送,因此这种子网又称为点到 点(point-to-point)子网或存储转发(store and forward) 子网。除了那些使用卫星的广域网外,几乎所有的广域网都采 用存储转发方式。 第7章 高级操作系统 广域网最初只是为使物理上广泛分布的计算机能够进行简单 的数据传输。主要用于交互终端与主机的连接、计算机之间文件 或批处理作业传输以及电子邮件传输等。 广域网中一个重要的设计问题是ccp互连的拓扑结构形式。 一般广域网采用任意互连型拓扑结构。 广域网的第二种可能的组网方式是卫星或地面无线电网。每 个中间ccp都通过天线接收和发送数据。所有的中间站点都能接 收到来自卫星的信息,并能同时听到其相邻站点发往卫星的信息 。 第7章 高级操作系统 4互联网 全球有许多网络,而不同网络的物理结构、协议和所采用 的技术标准可能各不相同。如果连接到不同网络的用户需要进 行相互通信,就需要将这些不兼容的网络通过网关连接起来, 并由网关完成相应的转换功能。多个网络相互连接构成的集合 称为互联网(internetworking)。互联网的最常见的形式是多 个局域网通过广域网连接起来。如何判断一个网络是广域网还 是通信子网取决于网络中是否含有主机。如果一个网络只含有 中间转接站点,即ccp,则该网络仅仅是一个通信子网;反之, 如果网络中既包含ccp,又包含可以运行用户任务的主机,则该 网络是一个广域网。 第7章 高级操作系统 通信子网、网络和互联网这三个概念经常被混淆。通信子 网作为广域网的一个重要组成部分,通常是由ccp和通信线路所 组成。通信子网和主机相结合构成计算机广域网络(对于局域 网来说,它是由电缆和主机构成的,没有通信子网)。而互联 网一般是不同网络的相互连接,如局域网和广域网的连接、两 个局域网的相互连接或多个局域网通过广域网连接起来。 第7章 高级操作系统 7.2.4 网络协议体系结构 1协议分层模型 由于网络通信延迟的不确定性和通信中干扰和差错的存在, 网络通信协议十分复杂。为了减少网络协议设计的复杂性,网络 设计者并不是设计一个单一、复杂的协议来为所有形式的通信规 定完整的细节, 而是采用把通信问题划分为许多个小问题, 然后 为每个小问题设计一个单独的协议的方法。这样做使得每个协议 的设计、分析、编码和测试都比较容易。 分层模型(layering model)是一种用于开发网络协议的设 计方法。本质上,分层模型描述了把复杂的通信问题分为简单问 题(称为层次)的方法,每个简单问题对应于一层。 第7章 高级操作系统 所谓分层设计方法,就是按照信息的流动过程将网络的整体 功能分解为一个个的子功能层,不同机器上的同等功能层之间采 用相同的协议,每一层协议都建立在它的下层之上。不同的网络 ,其协议的层数、各层的名字、内容和功能不尽相同。然而,所 有网络的低层都是向它的上一层提供一定的服务,而屏蔽实现服 务的细节。同一机器上的相邻功能层之间的通信规则称为接口( interface),接口定义了下层向上层提供的服务。总地说来,协 议是不同机器同等层之间的通信约定,而接口是同一机器相邻层 之间的通信约定。 如图7-10所示,主机a和主机b的第n层之间达成的通信规则和 一致约定就是对等的第n层协议,对等层之间的通信是逻辑上的, 必须通过它的低层来实现。不同层协议传送数据的单位可以不同 ,可能是比特、帧、分组或tpdu(传输协议数据单位)等。 第7章 高级操作系统 图7-10 iso/osi七层参考模型 第7章 高级操作系统 2osi参考模型 计算机网络体系结构是网络中分层模型以及各层功能的精确 定义。对网络体系结构的描述必须包括足够的信息,使实现者可 以为每一功能层进行硬件设计或编写程序,并使之符合相关协议 。但要注意的是,网络协议实现的细节不属于网络体系结构的内 容,因为它们隐含在机器内部,对外部说来是不可见的。国际标 准化组织iso于1978年设立了一个分委员会,专门研究网络通信 的体系结构,并经过多年努力于1984年提出了“开放系统互连参 考模型”iso/osi rm,从此开始了有组织有计划地制定一系列网 络国际标准。 第7章 高级操作系统 osi将整个网络的通信功能分成七个层次(见图7-10),包 括低三层物理层、数据链路层和网络层;高四层传输 层、会话层、表示层和应用层。下面简述各层功能。 1) 物理层 物理层是osi/rm的最低层。它在通信介质的基础上,实现 系统和通信介质的物理接口,为数据链路实体之间透明地“位 ”流传输提供服务。 第7章 高级操作系统 为实现数据链路实体之间数据的透明传输,物理层应具有 下述功能: (1) 物理连接的建立和释放; (2) 物理服务数据单元(称为比特)的传输; (3) 物理层管理。 物理层涉及到机械、电气、功能和规程四个特性。 第7章 高级操作系统 2) 数据链路层 数据链路层的主要任务是在相邻两系统的网络实体之间建立 、维持和释放数据链路的连接,以及正确无误地传输数据链路服 务数据单元。 数据链路层具有以下功能: (1) 数据链路连接的建立和释放。在两相邻系统的网络实体 之间,提供一条或多条数据链路连接,该连接可动态建立和释放 ; (2) 数据链路协议数据单元的形成。将数据链路服务数据单 元加上数据链路协议控制信息,形成数据链路协议数据单元(称 为帧); 第7章 高级操作系统 (3) 定界和同步。识别出在物理连接上传送的数据链路服务 数据单元的开始和结束; (4) 顺序和流量控制。用于控制数据单元的传输顺序和流量 ; (5) 差错的检测和恢复。能检测出传输错误、格式错误和操 作错误,并从出错状态中解脱出来。对于不能恢复的差错,同向 网络实体报告。 第7章 高级操作系统 为对所传输的数据单元进行控制,数据链路层提供两种控制 规程: 面向字符的数据链路控制规程。这种规程的主要特点是 利用若干个控制字符对数据传输进行控制; 面向“位”(bit)的数据链路控制规程。该规程的特点是 面向“位”的,即利用特殊的位组合(如“01111110”)作为帧 的开始或结束的标识符,再利用与标识符之间的相对位置来确定 其它信息段。高级数据链路控制规程hdlc就是iso为这一控制规 程制定的国际标准。 第7章 高级操作系统 3) 网络层 网络层的目的是提供建立、维持和释放网络连接的手段, 以实现对等的两个传输实体间的通信。 为了便于主机间的通信,网络层向传输层提供了两类数据 传输服务: 数据报(datagram)服务。在数据报传输方式中,发送 方网络层从传输层接收报文,为它配上完整的目的地址,并作 为一个独立的信息单位传送出去。数据报每经过一个中继节点 时,都要按一定的算法选择一条传输路径。 第7章 高级操作系统 虚电路(virtual circuit)服务。通信时先由源主机发送 呼叫报文分组,其中包括源和目的主机的全网地址。目的主机同 意后,便由其网络在双方建立一条虚电路(虚电路是通过分时复 用一条物理链路后形成的一条逻辑电路)。 第7章 高级操作系统 网络层的主要功能有: (1) 网络连接服务。利用数据链路连接构成传输实体间的网 络连接; (2) 路径选择; (3) 网络连接的多路复用。提供多条网络连接复用一条数据 链路; (4) 分段和组块; (5) 有序传送和流量控制。利用有序传送方法传送网络服务 数据单元,并对网络连接上的信息流量进行控制; (6) 差错检测与恢复。 第7章 高级操作系统 4) 传输层 引入传输层的主要目的是为会话层提供透明数据传输的可能 性。传输层通过屏蔽各类通信子网的差异来保证应用进程能在任 何网络上共享资源和进行通信。传输层处于低三层和高三层之间 ,它能消除osi高层所要求的服务和低层(网络层)所能提供的服 务之间的差异。在osi中根据传输的出错率和建立连接的失效率 把网络提供的服务分为a、b、c三类,传输层能根据不同的网络 服务再增加相应的服务,使之能满足高层的要求。如果通信子网 提供的指标,如数据传输速度、吞吐量、传输时延等不能满足高 层要求,将由传输层采取相应措施给予解决。此外,网络层所传 输的数据单元大小是固定的,而会话层对此没有限制,因而必须 由传输层采取分段/组段的措施,以形成适合于网络连接上的传 输的数据单元。 第7章 高级操作系统 传输层的主要功能有: (1) 把传输地址映射到网络地址。在osi/rm中规定,一个传 输实体可为多个会话实体服务,因此一个网络地址可以和多个传 输地址相对应; (2) 连接的多路复用与分割; (3) 传输连接的建立和释放; (4) 分段和组装。发送方传输实体将一传输服务数据单元分 成多个网络数据单元,接收方传输实体将几个网络服务数据单元 组装成一个传输数据单元。 第7章 高级操作系统 5) 会话层 由于一种网络提供的服务可能不同于另一种网络提供的服务 ,这就需要提供一种有效的方法,用来组织和协调两个表示实体 之间的会话,并管理它们之间的数据交换。会话层提供的服务有 两类:一是在两个表示实体之间建立起一种关系,使它们进行相 互联系,并具有能释放这种联系的功能,这一服务称为会话连接 服务;二是控制两个表示实体之间的数据交换,同步和有限制地 进行数据操作,称为会话服务。 第7章 高级操作系统 会话层的主要功能有: (1) 将会话连接映射到传输连接; (2) 会话连接的数据流控制; (3) 数据交换的管理; (4) 会话连接的建立和释放; (5) 出错的控制和恢复等。 当表示层实体在某一会话服务存取点提出请求时,可在表示 层两实体间建立会话连接。在会话连接存在的整个过程中,表示 层实体利用会话服务来管理它们之间的会话,以保证在会话连接 通路中有条不紊地交换信息。 第7章 高级操作系统 6) 表示层 表示层要对不同的系统的表示方法进行转换,消除不同系 统应用实体间的语言差异,以便实现信息交换。在异构网络中 ,各系统因传输数据的表示方法不同,为使应用实体之间能够 进行通信,要求各系统按相同的规则对数据进行编码。这种共 同的规则称为传送语法。为此,必须进行语法转换,将传送语 法转换为本地语法和将本地语法转换为传送语法。实现语法转 换是表示层的基本功能。此外,表示层还提供其它功能:表示 连接的建立和释放,数据的加密和解密,数据压缩等。 第7章 高级操作系统 7) 应用层 应用层是osi/rm中的最高层(第七层),它为应用进程访问osi 环境提供惟一的手段,并为应用进程服务,其它各层也都通过应 用层向应用进程提供服务。应用层所提供的服务元素分为两类: 公共应用服务元素(case),它提供了应用层中最基本的服 务,其中包含为多个应用实体所提供的服务,为分布式处理的同 步和分布式数据库的更新同步提供保证。 特定的应用服务元素(sase)。它为特定需要提供服务。目 前osi只对已广泛使用的一些特定应用服务元素进行了标准化,例 如文件传送、存取和管理(ftam)、虚拟终端(vt)以及作业传送和 操纵(jtm)等。 第7章 高级操作系统 3tcp/ip参考模型 在osi体系结构之前,以tcp/ip为基础的internet和arpanet 就已经存在了,并且tcp/ip协议族在很大程度上影响了osi参考模 型。表7-2给出了tcp/ip协议族与osi参考模型的对应关系。 tcp/ip协议族有四个层次,其中应用层与osi中的应用层对应,传 输层与osi中的传输层对应,网络层与osi中的网络层对应,物理 链路层与osi中的物理层和数据链路层对应。tcp/ip中没有osi中 的表示层和会话层。在应用层主要有简单邮件传输协议(smtp)、 文件传输协议(ftp)、超文本传输协议(http)和简单网络管理 协议(snmp)等;在传输层主要有传输控制协议(tcp)和用户数 据报协议(udp);在网络层主要有互联网协议(ip)、接口控制 报文协议(icmp)、地址解析协议(arp)和反向地址解析协议( rarp)等。 第7章 高级操作系统 表7-2 tcp/ip参考模型与osi的对应关系 osirm分层描述os分层号tcp/ip分层描述 应用层7smtp、ftp、http、snmp 表示层6 会话层5 传输层4tcp、udp 网络层3ip、icmp、arp、rarp 数据链路层2 物理链路层 物理层1 第7章 高级操作系统 与osi参考模型相比,tcp/ip参考模型具有以下四个特点: 开放的协议标准,可以免费使用,并且独立于特定的计 算机硬件与操作系统。 独立于特定的网络硬件,可以运行在局域网、广域网中 ,更适用于网络互联。 统一的网络地址分配方案,使得网络中的每台主机在网 中都具有惟一的地址。 标准化的高层协议,可以提供多种可靠的用户服务。 因此,tcp/ip协议族已成为目前互联网络协议事实上的工业 标准。 第7章 高级操作系统 7.2.5 网络操作系统 1网络操作系统的概念 在本书第1章中,我们给出了操作系统的定义:操作系统是 管理和控制计算机系统的硬件和软件资源,合理地组织计算机系 统的工作流程以及方便用户的程序集合。这里的计算机系统是指 单机系统。单一计算机系统相对比较简单,可把操作系统视为系 统资源的管理程序。设置操作系统的目的在于提高系统的处理能 力,提高系统资源利用率,方便用户使用。 第7章 高级操作系统 在一个计算机网络系统中,有多台分散的计算机、众多分 散在不同计算机上的文件和外部设备,因此网络操作系统的基 本功能就是管理网络系统的软硬件资源,实现网络范围的资源 共享。此外,计算机网络的另一个重要任务是数据通信。 由此看来,网络操作系统除了具备通常(单机)操作系统所 具备的功能外,还应具有网络支持功能,它由通信服务和网络 的控制模块组成。其主要功能是: (1) 高效而可靠的通信能力。除了支持终端与主机之间的 通信外,还要支持主机与主机之间的通信以及多个“用户对” 之间同时通信的能力,即将一条物理链路虚拟为多条逻辑链路 。在出现异常事件时,还应具有及时进行处理的能力。 第7章 高级操作系统 (2) 供多种网络服务。为方便网络用户进行事务和数据处 理,在计算机网络中常提供以下服务: 以虚拟软盘方式或文件服务方式实现硬盘共享; 以假脱机方式实现打印机共享; 利用电文处理系统mhs(message handle system),提供 电文、语音和图像的加密和传输; 文件的传送、存取和管理(ftam); 作业的传送和操纵(jtm)服务等。 所以我们认为,网络操作系统就是在计算机网络中管理多 台计算机的软硬件资源,支持网络通信,提供网络服务的程序 集合。 第7章 高级操作系统 2网络操作系统的特点 与单机操作系统相比,网络操作系统具有如下特点: 1) 网络操作系统的复杂性 很明显,单机操作系统的主要功能是管理本机的软、硬件 资源。在计算机网络系统中,有多台计算机、终端设备以及其 它网络设备,网络操作系统的主要任务是对全网资源的管理, 以实现整个系统的资源共享。除了资源共享以外,另一个主要 任务是机间通信与同步。 网络操作系统的复杂性表现在各个方面。以下仅以网络上 的文件系统为例进行说明。 第7章 高级操作系统 单机操作系统只管理本机的文件系统,单机上的用户只能对 本机上的文件系统进行操作。在网络上,为了实现资源共享,允 许本地用户访问远程节点的文件系统。 当网络中的一个节点用户要访问另一节点上的文件时,通常 的办法是使用一个专用命令,把远程节点上被访问的文件复制到 本地节点的文件系统中,然后再按本地文件的方式使用。远程打 印输出以及电子邮件系统(如pop协议)也都采用这种文件传输方 式。在这种方式下的文件复制命令,需以参数的形式指明要复制 的文件所在位置、到达的路径以及文件名。 第7章 高级操作系统 2) 并行性 单机多道程序系统的主要目标是为用户建立虚拟处理机来模 拟多机环境,使程序能并发执行,从而改善了资源的利用率并提 高了系统的处理能力。在这种情况下的物理处理机只有一台,并 未实现真正的并行。 网络操作系统在每个节点同样可以为用户建立虚拟处理机, 使程序能并发执行。除此之外,对计算机网络系统来说,各节点 机作业的执行却做到了真正的并行。一个用户作业既可以分配在 自己登录的节点机上,也可以分配到远程节点机上。这种分配可 以是显式的,也可以是隐式的。 第7章 高级操作系统 在显式的作业分配方式中,用户可在创建进程的命令中直接 指明作业将在哪台计算机上执行。 在隐式方式中,用户在创建进程时,不必指明进程将在哪台 计算机上执行,但是系统实际上是隐含地指明了该进程将在哪台 计算机上执行。当然,各个系统的做法也不尽相同。例如,有的 系统是指在最初登录的计算机上执行,也有的系统是指在创建该 进程的那台计算机上执行,还有的系统提供一个系统调用命令 createprocess,其参数中指出该进程的执行节点。 第7章 高级操作系统 3) 进程间的通信与同步 在计算机网络系统中,各节点机之间通过网络相互传送信息 ,以实现进程间的通信与同步。如前所述,国际标准化组织 (iso)的osi/rm,为计算机之间的通信提供了一个很完善标准。 一般说来,osi/rm的七层协议中,从第四层(传输层)到第七层( 应用层)都属于网络操作系统的功能,而低三层(网络层、数据路 层和物理层)提供了网络传输的支持。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论