您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 计算机操作系统教案_第05章 设备管理
第五章设备管理1计算机操作系统教案第5章设备管理郭霞2010•中山第五章设备管理2第五章设备管理•教学要求:•1、掌握:设备、控制器和通道三者之间的关系,四种I/O控制方式与设备、控制器和通道三者之间的联系,缓冲的概念,单缓冲、双缓冲、循环缓冲和缓冲池的缓冲管理方式,SPOOLing技术,5种磁盘调度算法及相互之间的联系与区别。•2、理解:I/O设备的类型、设备控制器和通道等概念,四种I/O控制方式及相互之间的区别,设备分配中的数据结构,设备独立性和独占设备的分配,设备驱动程序的功能和特点,设备驱动程序的处理过程及与设备驱动程序的功能之间的关系,磁盘高速缓存和提高磁盘I/O速度的常见方法。•3、了解:总线系统,设备分配时应考虑的因素,中断处理程序的处理过程,磁盘相关概念,RAID。第五章设备管理3Outline•I/O系统•I/O控制方式•缓冲管理•设备分配•设备处理•磁盘存储器管理第五章设备管理4第五章设备管理5.1I/O系统5.2I/O控制方式5.3缓冲管理5.4设备分配5.5设备处理5.6磁盘存储器管理第五章设备管理5计算机外围设备•输入设备:键盘、鼠标器、扫描仪、数码相机、数字化仪、IC卡读写设备、手写输入系统、语音输入设备•输出设备:显示设备:显示器打印设备:点阵针式打印机、激光打印机、喷墨打印机绘图仪:滚筒式绘图仪、平台式绘图仪、矢量绘图仪外存储设备:软盘、硬盘、磁带机多媒体设备:CD-ROM、光盘刻录机、DVD-ROM、DVD-RW刻录机、声卡、音箱、视频卡、摄像头网络设备:调制解调器、网卡、集线器、交换机、中继器、网桥、路由器、网关•其他设备:机箱、电源、不间断电源系统UPS第五章设备管理65.1I/O系统5.1.1I/O设备1.I/O设备的类型1)•低速设备:几-几百字节/秒,如:键盘、鼠标器、语音的输入和输出等设备•中速设备:几-几百字节/秒,行式打印机、激光打印机•高速设备:传输速率在数百千个字节至数十兆字节磁带机、磁盘机、光盘机第五章设备管理72)•块设备:信息的存取以数据块为单位,属于结构化设备。这类设备用于存储信息,如磁盘(传输速率较高几M/s,可寻址,DMA)•字符设备:以字符为单位输入和输出。无结构设备。交互式终端、打印机。传输速率较低(几个-几K个字节/s,不可寻址,采用中断驱动方式)第五章设备管理83)这种分类方式可将I/O(1)独占设备.(2)共享设备。(3)虚拟设备。第五章设备管理92.I/O设备的差异性•数据传输率•应用程序:该设备究竟做什么,对软件、操作系统策略以及支持实用程序都有影响,磁盘(文件系统)。•控制的复杂度:打印机、磁盘•传送单位:字节(中断I/O)、块(磁盘)•数据表示:不同数据的编码方案、奇偶约定•错误条件第五章设备管理103.I/O控制的发展1)处理器直接控制外围设备2)增加了控制器或者I/O模块。CPU开始从外部设备接口的细节中分离出来。3)采用中断。处理器不再需要花费时间等待执行一个I/O操作。4)I/O模块通过DMA直接控制存储器。主存可以在没有CPU的参与下完成主存数据的移入或者移出,只有开始和结束有CPU处理。第五章设备管理115)I/O模块增强为一个单独的处理器,有专门的I/O设计指令集。CPU执行一个操作,其余的动作由I/O取指令并执行,完成后才被中断。6)I/O有自己的局部存储器。可以认为设备本身就是一个计算机。这种结构大多用于控制与交互终端的通信。目标:CPU从I/O任务中解脱出来,以提高CPU的性能。第五章设备管理124.I/O控制器p164数据寄存器控制/状态寄存器数据线I/O逻辑…控制器与设备接口1控制器与设备接口i数据状态控制数据状态控制…地址线控制线CPU与控制器接口控制器与设备接口第五章设备管理135.设备与控制器之间的接口缓冲转换器控制逻辑信号数据数据信号线状态信号线控制信号线至设备控制器I/O设备第五章设备管理145.2I/O控制方式5.2.1程序I/O方式基本思想:CPU向I/O发送I/O指令,CPU将不做其它事情而是不停检查设备I/O是否就绪,如果就绪在CPU的干预下完成数据的输入或者输出。第五章设备管理15图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方式第五章设备管理165.2.2中断驱动I/O控制方式基本思想:CPU向I/O发送I/O指令,CPU将继续做其他事情;当I/O模块准备好,将会通过中断告知CPU,然后CPU参与完成输入和输出工作。第五章设备管理175.2.3直接存储器访问DMAI/O控制方式1.DMA(DirectMemoryAccess)控制方式的引入该方式的特点是:①数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块;②所传送的数据是从设备直接送入内存的,或者相反;③仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。第五章设备管理182.DMA控制器的组成图5-8DMA控制器的组成DRMARDCCRI/O控制逻辑…主机—控制器接口控制器与块设备接口count内存CPU命令系统总线DMA控制器第五章设备管理19为了实现在主机与控制器之间成块数据的直接交换,必须在DMA(1)命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息,或设备的状态。(2)内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。(3)数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。(4)数据计数器DC。存放本次CPU要读或写的字(节)数。第五章设备管理203.DMA工作过程图5-9DMA方式的工作流程设置AR和DC初值启动DMA传送命令挪用存储器周期传送数据字存储器地址增1字计数寄存器减1DC=0?请求中断在继续执行用户程序的同时,准备又一次传送否是第五章设备管理214、I/O通道1).I/O通道(I/OChannel)设备的引入I/O通道基本思想:扩展DMA只能处理一块数据的局限,通过I/O通道的简单指令实现CPU不用参与多块数据的输入或者输入。通道指令:一是其指令类型单一,这是由于通道硬件比较简单,其所能执行的命令,主要局限于与I/O操作有关的指令;再就是通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的,换言之,是通道与CPU共享内存。第五章设备管理222)通道类型(1)字节多路通道(ByteMultiplexorChannel):通道含有多个子通道,子通道按照时间片分别占用通道进行数据的传输。每个一次只能传输一个字节的数据图5-3字节多路通道的工作原理控制器A控制器B控制器C控制器D控制器N…A1A2A3…子通道AB1B2B3…子通道BC1C2C3…子通道CN1N2N3…子通道NA1B1C1…A2B2C2…设备第五章设备管理23(2)数组选择通道(BlockSelectorChannel)基本思想:这种通道虽然可以连接多台高速设备,但由于它只含有一个分配型子通道,在一段时间内只能执行一道通道程序,控制一台设备进行数据传送,致使当某台设备占用了该通道后,便一直由它独占,即使是它无数据传送,通道被闲置,也不允许其它设备使用该通道,直至该设备传送完毕释放该通道。可见,这种通道的利用率很低。第五章设备管理24(3)数组多路通道(BlockMultiplexorChannel)基本技术:它含有多个非分配型子通道,因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率。也正因此,才使该通道能被广泛地用于连接多台高、中速的外围设备,其数据传送是按数组方式进行的。第五章设备管理253).“瓶颈”问题图5-4单通路I/O系统设备1设备2设备3设备4设备5设备6设备7控制器1控制器2控制器3控制器4通道1通道2存储器第五章设备管理26图5-5多通路I/O系统I/O设备控制器1控制器2通道1通道2存储器I/O设备I/O设备I/O设备第五章设备管理275)通道程序是由一系列通道指令(通道命令)的所构成的。通道指令包括:(1)操作码。(2)内存地址。(3)计数。(4)通道程序结束位P。(5)记录结束标志R。第五章设备管理28操作PR计数内存地址WRITE0080813WRITE001401034WRITE01605830WRITE013002000WRITE002501850WRITE11250720第五章设备管理295.3缓冲管理5.3.1缓冲的引入(1)缓和CPU与I/O设备间速度不匹配的矛盾。(2)减少对CPU的中断频率,放宽对CPU中断响应时间的限制。(3)提高CPU和I/O设备之间的并行性。缓冲技术:发送请求发出一段时间后才执行输出传送;输入请求发出之前就执行输入传送。第五章设备管理30图5-10利用缓冲寄存器实现缓冲1位缓冲9.6Kb/s8位缓冲寄存器送内存9.6Kb/s8位缓冲寄存器9.6Kb/s送内存(b)(a)(c)0.1ms0.8ms0.8ms第五章设备管理315.3.2单缓冲和双缓冲1.单缓冲(SingleBuffer)工作区处理(C)缓冲区传送(M)输入(T)I/O设备(a)T1M1C1T2M2C2T3M3C3T4t(b)用户进程图5-11单缓冲工作示意图Max(C,T)+M第五章设备管理322.双缓冲(DoubleBuffer)工作区用户进程缓冲区1缓冲区2I/O设备T1(缓冲1)M1C1M2C2M3C3T2(缓冲2)T3(缓冲3)M4C4T4(缓冲4)(a)(b)图5-12双缓冲工作示意图Max(C,T)第五章设备管理33图5-13双机通信时缓冲区的设置缓冲区缓冲区A机B机(a)单缓冲发送缓冲区接收缓冲区接收缓冲区发送缓冲区A机B机(b)双缓冲第五章设备管理345.3.3循环缓冲1.循环缓冲的组成图5-14循环缓冲RGGGRG165423NextiNextgRGGGRC165423NextiNextgcurrent第五章设备管理352.(1)Getbuf过程。(2)Releasebuf过程。第五章设备管理363.进程同步(1)Nexti指针追赶上Nextg指针。(2)Nextg指针追赶上Nexti指针。第五章设备管理375.3.4公用缓冲池(BufferPool)1.对于既可用于输入又可用于输出的公用缓冲池,其中至少应含有以下三种类型的缓冲区:①空(闲)缓冲区;②装满输入数据的缓冲区;③装满输出数据的缓冲区。为了管理上的方便,可将相同类型的缓冲区链成一个队列,于是可形成以下三个队列:(1)空缓冲队列emq。(2)输入队列inq。(3)输出队列outq。第五章设备管理382.Getbuf过程和Putbuf过程ProcedureGetbuf(type)beginWait(RS(type));Wait(MS(type));B(number)∶=Takebuf(type);Signal(MS(type));endProcedurePutbuf(type,number)beginWait(MS(type));Addbuf(type,number);Signal(MS(type));Signal(RS(type));end第五章设备管理393.缓冲区的工作方式图5-15缓冲区的工作方式hinsoutsinhout收容输
本文标题:计算机操作系统教案_第05章 设备管理
链接地址:https://www.777doc.com/doc-4106578 .html