操作系统第五章分析解析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第五章设备管理第五章设备管理5.1I/O系统5.2I/O控制方式5.3缓冲管理5.4设备分配5.5设备处理5.6磁盘存储器管理第五章设备管理存储设备:磁带、磁盘(软盘、硬盘)、光盘、其它(磁鼓等)。输入输出设备:键盘、打印机、显示器、图形输入输出设备、图像输入输出设备、绘图仪、声音输入输出设备、网卡、其它。交互设备:集成上述两类设备5.1I/O系统5.1.1I/O设备1.I/O设备的类型1)按设备的使用特性分类第五章设备管理2)按传输速度的高低,可将I/O设备分为三类。第一类是低速设备,这是指其传输速率仅为每秒钟几个字节至数百个字节的一类设备。属于低速设备的典型设备有键盘、鼠标器、语音的输入和输出等设备。第二类是中速设备,这是指其传输速率在每秒钟数千个字节至数万个字节的一类设备。典型的中速设备有行式打印机、激光打印机等。第三类是高速设备,这是指其传输速率在数百千个字节至数十兆字节的一类设备。典型的高速设备有磁带机、磁盘机、光盘机等。第五章设备管理3)可将I/O设备分成两类。第一类是块设备(BlockDevice),这类设备用于存储信息。由于信息的存取总是以数据块为单位,故而得名。它属于有结构设备。典型的块设备是磁盘,每个盘块的大小为512B~4KB。磁盘设备的基本特征是其传输速率较高,通常每秒钟为几兆位;另一特征是可寻址,即对它可随机地读/写任一块;此外,磁盘设备的I/O常采用DMA方式。第二类是字符设备(CharacterDevice),用于数据的输入和输出。其基本单位是字符,故称为字符设备。第五章设备管理4)这种分类方式可将I/O(1)独占设备。临界资源(2)共享设备。多个进程可同时访问,但每一时刻只能一个进程访问(3)虚拟设备。将一台设备变换成多台逻辑设备第五章设备管理2.设备与控制器之间的接口图5-1设备与控制器间的接口缓冲转换器控制逻辑信号数据数据信号线状态信号线控制信号线至设备控制器I/O设备第五章设备管理数据信号线:在设备和设备控制器之间传送数据信号。控制信号线:设备控制器向I/O设备发送控制信号时的通路。状态信号线:传送指示设备当前状态的信号。第五章设备管理5.1.2设备控制器1.设备控制器的基本功能1)接收和识别命令CPU可以向控制器发送多种不同命令,设备控制器应能接收并识别这些命令。设有相应的控制寄存器,用来存放接收的命令和参数。2)数据交换CPU与控制器之间、控制器与设备之间的数据交换,对于前者,是通过数据总线。对于后者是设备将数据输入到控制器,或从控制器传送给设备。设备控制器:主要职责是控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。它是CPU与I/O设备之间的接口。第五章设备管理3)标识和报告设备的状态控制器应记下设备的状态供CPU了解。在控制器中应设置一状态寄存器,用其中的每一位来反映设备的某一种状态。4)地址识别系统中的每一个设备也都有一个地址,而设备控制器又必须能够识别它所控制的每个设备的地址。5)数据缓冲用来暂存数据,以匹配高速的CPU和内存与慢速的I/O设备之间的数据传输。6)差错控制对I/O设备传输给CPU的数据进行差错检测。第五章设备管理2.设备控制器的组成图5-2设备控制器的组成数据寄存器控制/状态寄存器数据线I/O逻辑…控制器与设备接口1控制器与设备接口i数据状态控制数据状态控制…地址线控制线CPU与控制器接口控制器与设备接口第五章设备管理由于设备控制器处于CPU与设备之间,它既要与CPU通信,又要与设备通信,还应具有按照CPU所发来的命令去控制设备的工作功能。因此,现有的大多数控制器都是由以下三部分组成的:(1)设备控制器与处理机的接口CPU与设备控制器之间的通信。共有三类信号线:数据线、地址线和控制线。数据线同常与两类寄存器相连接:①与数据寄存器连接。在控制器中可以有一个或多个数据寄存器,用于存放从设备送来的数据输入,或从CPU送来的数据输出。②与控制/状态寄存器连接。存放从CPU送来的控制信息或设备的状态信息。(2)设备控制器与设备的接口在一个设备控制器上,可以连接一个或多个设备。一个接口连接一台设备。在每个接口中都存在数据、控制和状态三种类型的信号。(3)I/O逻辑I/O逻辑用于实现对设备的控制,通过一组控制线与处理机交互,逻辑向控制器发送I/O命令;I/O逻辑对收到的命令进行译码。第五章设备管理5.1.3I/O通道1.I/O通道(I/OChannel)设备的引入实际上,I/O通道是一种特殊的处理机。它具有执行I/O指令的能力,并通过执行通道(I/O)程序来控制I/O操作。但I/O通道又与一般的处理机不同,主要表现在以下两个方面:一是其指令类型单一,这是由于通道硬件比较简单,其所能执行的命令,主要局限于与I/O操作有关的指令;再就是通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的,换言之,是通道与CPU共享内存。第五章设备管理2.通道类型1)字节多路通道(ByteMultiplexorChannel)控制器A控制器B控制器C控制器D控制器N…A1A2A3…子通道AB1B2B3…子通道BC1C2C3…子通道CN1N2N3…子通道NA1B1C1…A2B2C2…设备这些通道按时间片轮转方式共享主通道。当所有子通道轮转一周后,重又返回来由第一个子通道去使用。通过字节多路通道来连接低速或中速设备时,便不致丢失信息。第五章设备管理2)数组选择通道(BlockSelectorChannel)字节多路通道不适于连接高速设备,这推动了按数组方式进行数据传送的数组选择通道的形成。这种通道虽然可以连接多台高速设备,但由于它只含有一个分配型子通道,在一段时间内只能执行一道通道程序,控制一台设备进行数据传送,致使当某台设备占用了该通道后,便一直由它独占,即使是它无数据传送,通道被闲置,也不允许其它设备使用该通道,直至该设备传送完毕释放该通道。可见,这种通道的利用率很低。第五章设备管理3)数组多路通道(BlockMultiplexorChannel)数组选择通道虽有很高的传输速率,但它却每次只允许一个设备传输数据。数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道(设备)分时并行操作的优点相结合而形成的一种新通道。它含有多个非分配型子通道,因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率。也正因此,才使该通道能被广泛地用于连接多台高、中速的外围设备,其数据传送是按数组方式进行的。第五章设备管理3.“瓶颈”问题图5-4单通路I/O系统设备1设备2设备3设备4设备5设备6设备7控制器1控制器2控制器3控制器4通道1通道2存储器第五章设备管理通道价格昂贵,通道数量势较少,往往使它成为I/O的瓶颈,进而造成整个系统吞吐量的下降。解决瓶颈问题的最有效的方法,便是增加设备到主机间的通路,而不增加通道。如图,把一个设备连接到多个控制器上;而一个控制器又连接到多个通道上。解决办法:增加通路,采用多通路方式。第五章设备管理图5-5多通路I/O系统I/O设备控制器1控制器2通道1通道2存储器I/O设备I/O设备I/O设备第五章设备管理5.1.4总线系统图5-6总线型I/O系统结构CPU存储器磁盘控制器打印机控制器…其它控制器磁盘驱动器打印机系统总线计算机中各部件之间的通信都是通过总线来实现的。总线的性能用总线的时钟频率,带宽和相应的总线传输速率等指标来衡量的。第五章设备管理1.ISA和EISA总线1)ISA(IndustryStandardArchitecture)这是为了1984年推出的80286型微机而设计的总线结构。其总线的带宽为8位,最高传输速率为2Mb/s。之后不久又推出了16位的(EISA)总线,其最高传输速率为8Mb/s,后又升至16Mb/s,能连接12台设备。2)EISA(ExtendedISA)到80年代末期,ISA总线已难于满足带宽和传输速率的要求,于是人们又开发出扩展ISA(EISA)总线,其带宽为32位,总线的传输速率高达32Mb/s,同样可以连接12台外部设备。第五章设备管理2.局部总线(LocalBus)1)VESA(VideoElectronicStandardAssociation)总线2)PCI(PeripheralComponentInterface)指将多媒体卡,高速LAN网卡,高性能图形板等,从ISA总线上卸下来,再通过局部总线控制器直接接到CPU总线上,使之与高速CPU总线相匹配。典型的有VESA总线和PCI总线。第五章设备管理第五章设备管理第五章设备管理规格总线宽度工作时脉传输速率PCI2.332位元33/66MHz133/266MiB/sPCI-X1.064位元66/100/133MHz533/800/1066MiB/sPCI-X2.0(DDR)64位元133MHz2.1GiB/sPCI-X2.0(QDR)64位元133MHz4.2GiB/sAGP2X32位元66MHz532MiB/sAGP4X32位元66MHz1.0GiB/sAGP8X32位元66MHz2.1GiB/sPCI-E1X8位元2.5GHz512MiB/s(双工)PCI-E2X8位元2.5GHz1.0GiB/s(双工)PCI-E4X8位元2.5GHz2.0GiB/s(双工)PCI-E8X8位元2.5GHz4.0GiB/s(双工)PCI-E16X8位元2.5GHz8.0GiB/s(双工)第五章设备管理5.2I/O控制方式5.2.1程序I/O方式在程序I/O方式中,由于CPU的高速性和I/O设备的低速性,致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中,造成对CPU的极大浪费。在该方式中,CPU之所以要不断地测试I/O设备的状态,就是因为在CPU中无中断机构,使I/O设备无法向CPU报告它已完成了一个字符的输入操作。第五章设备管理图5-7程序I/O和中断驱动方式的流程向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器中读入字向存储器中写字传送完成?未就绪就绪出错CPU→I/OI/O→CPUI/O→CPUCPU→内存下条指令完成未完向I/O控制器发读命令读I/O控制器的状态检查状态?从I/O控制器中读字向内存中写字传送完成?就绪出错CPU→I/OI/O→CPUI/O→CPUCPU→内存下条指令完成未完中断CPU做其它事向I/O控制器发布读块命令CPU→DMACPU做其它事读DMA控制器的状态中断DMA→CPU下条指令(a)程序I/O方式(b)中断驱动方式(c)DMA方式第五章设备管理5.2.2中断驱动I/O控制方式在I/O设备输入每个数据的过程中,由于无须CPU干预,因而可使CPU与I/O设备并行工作。仅当输完一个数据时,才需CPU花费极短的时间去做些中断处理。可见,这样可使CPU和I/O设备都处于忙碌状态,从而提高了整个系统的资源利用率及吞吐量。例如,从终端输入一个字符的时间约为100ms,而将字符送入终端缓冲区的时间小于0.1ms。若采用程序I/O方式,CPU约有99.9ms的时间处于忙—等待中。采用中断驱动方式后,CPU可利用这99.9ms的时间去做其它事情,而仅用0.1ms的时间来处理由控制器发来的中断请求。可见,中断驱动方式可以成百倍地提高CPU的利用率。第五章设备管理5.2.3直接存储器访问DMAI/O控制方式1.DMA(DirectMemoryAccess)控制方式的引入该方式的特点是:①数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块;②所传送的数据是从设备直接送入内存的,或者相反;③仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。第五章设备管理2.DMA控制器的组成图5-8DMA控制器的组成DRMARDCCRI/O控制逻辑…主机—控制器接口控制器与块设备接口count内存CPU命令系统总线DM

1 / 136
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功