您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 18[修改]第五章设备管理
第五章设备管理I/O 硬件原理I/O 软件原理具有通道的I/O系统缓冲技术驱动调度技术设备分配虚拟设备本章要点•设备管理的功能、模型•I/O子系统的组成•I/O控制•设备的分配•设备的类型•I/O缓冲技术•虚拟设备和SPOOLING系统•磁盘的管理5.0引言•计算机的外围设备分为两类:•存储型设备:作为主存的扩充,以存储大量持久性信息和快速检索为目标•I/O型设备:把外界信息输入计算机,把计算结果输出,完成人机交互5.0引言(续)•设备管理的主要功能在于克服设备和CPU速度不匹配•设备中断处理•设备的分配和去配•设备驱动调度•缓冲区管理•虚拟设备及其实现•设备管理的基本手段在于系统将所有设备都定义为文件5.1I/O硬件原理I/O 系统I/O 控制方式设备控制器I/O 系统I/O 控制方式设备控制器5.1.1I/O系统•I/O系统:•I/O设备及其接口线路、控制部件、通道和管理软件的总称•I/O操作:•计算机的主存和外围设备的介质之间的信息传送操作5.1.1:分类•按照I/O特性,I/O设备划分为:•输入型设备•输出型设备•存储型设备•顺序存取存储设备:顺序存取存储设备严格依赖信息的物理位置进行定位和读写,如磁带•直接存取存储设备:直接存取存储设备的重要特性是存取任何一个物理块所需的时间几乎不依赖于此信息的位置,如磁盘5.1.1:分类(续)•按照I/O信息交换的单位可分为:•字符设备•输入型外围设备和输出型外围设备一般为字符设备,与内存进行信息交换的单位是字节•块设备•存储型外围设备一般为块设备I/O 系统I/O 控制方式设备控制器5.1.2I/O控制方式•按照I/O控制器功能的强弱,以及和CPU之间联系方式的不同,对I/O设备的控制方式分类:•轮询方式•中断方式•DMA方式•通道方式•主要差别:中央处理器和外围设备并行工作的方式和程度不同5.1.2轮询方式•轮询方式又称程序直接控制方式,使用查询指令测试设备控制器的忙闲标志位,确定主存和设备是否能交换数据5.1.2:轮询过程设置计数值设置内存缓冲首址启动外设就绪传送一个字修改内存地址修改计数值完是是结束I/O1.如时正运行的程序需从设备读入一批数据,则该程序设置交换字节数和数据读入主存的起始地址,然后向设备发出查询指令,设备控制器便把状态返回给CPU。2.如果I/O操作忙或未就绪,则重复测试过程,继续查询5.1.2:轮询过程设置计数值设置内存缓冲首址启动外设就绪传送一个字修改内存地址修改计数值完是是结束I/O3.否则开始数据传送,CPU从I/O接口(控制器寄存器)读取一个字,再用存储指令保存到主存4.如果传送尚未结束,再次向设备发出查询指令,直到全部数据传送完成5.1.2:轮询指令1.查询指令:查询设备是否就绪2.读写指令:当设备就绪时,执行数据交换3.转移指令:当设备未就绪时,执行转移指令转向查询指令继续查询5.1.2:轮询的弊端•一旦CPU启动I/O设备,便不断查询I/O设备的准备情况,终止原程序的执行,浪费CPU时间•I/O准备就绪后,CPU参与数据传送工作,而不能执行原程序•CPU和I/O设备串行工作,使主机不能充分发挥效率,设备也不能得到合理使用,整个系统效率很低5.1.2:中断方式•硬件要求:•①CPU与设备控制器及设备之间存在中断请求线•②设备控制器的状态寄存器有相应的中断允许位5.1.2:中断过程1.进程发出启动I/O指令后,控制信息加载到设备控制器寄存器后,进程继续执行不涉及本次I/O数据的任务,或放弃CPU等待I/O操作完成2.设备控制器检查寄存器的内容,按照I/O指令的要求执行。一旦传输完成,设备控制器通过中断请求线发出I/O中断信号。5.1.2:中断过程3.CPU收到并响应I/O中断后,转向设备的I/O中断处理程序执行4.中断处理程序执行数据读取操作,将I/O缓冲寄存器的内容写入主存,操作结束后退出5.进程调度程序在适当时刻将得到数据的进程恢复5.1.2:中断过程返回断点CPU读I/O状态有错处理无CPU从I/O接口读一个字CPU等一个字到主存完成未I/O中断处理程序启动I/O(读操作)继续执行第K条指令第K+1条指令现行程序启动命令返回源程序I/O控制器工作I/O设备就绪发I/O中断响应中断123455.1.2:中断过程(续)•CPU启动I/O设备后,不必查询I/O设备是否就绪,继续执行现行程序•直到在启动指令后的某条指令,响应了I/O中断请求,CPU才转至I/O中断处理程序执行5.1.2:中断过程(续)•中断处理程序中,CPU全程参与数据传输操作,它从I/O接口读一个字(字节)并写入主存,如果I/O设备上的数据尚未传送完成,转向现行程序再次启动I/O设备,重复上述过程;否则,中断处理程序结束后,继续从K+1条指令执行•I/O操作直接由CPU控制,每传送一个字符或字,要发生一次中断,仍然消耗大量CPU时间5.1.2:中断过程(续)•中断处理程序中,CPU全程参与数据传输操作,它从I/O接口读一个字(字节)并写入主存,如果I/O设备上的数据尚未传送完成,转向现行程序再次启动I/O设备,重复上述过程;否则,中断处理程序结束后,继续从K+1条指令执行•I/O操作直接由CPU控制,每传送一个字符或字,要发生一次中断,仍然消耗大量CPU时间大小取决于设备控制器的数据缓冲区5.1.2:中断方式的缺陷•如果设备控制器的数据缓冲区较小,则传送过程中发生中断的次数较多,会耗用大量CPU时间。•若系统配备多种设备,都采用中断方式,则有可能由于中断次数过多而造成CPU来不及处理,数据丢失。5.1.2:中断方式的优势•程序中断方式I/O,不必忙于查询I/O准备情况•CPU和I/O设备可实现部分并行•与程序查询的串行工作方式相比,使CPU资源得到较充分利用5.1.2:DMA方式•如果I/O设备能直接与主存交换数据而不占用CPU,CPU的利用率还可提高,这就出现了直接存储器存取DMA(DirectMemoryAccess)方式•需要的逻辑部件1.主存地址寄存器(MARMemoryAddressRegister):存放主存中需要交换的数据的地址.DMA传送前,由程序送入首地址,在DMA传送中,每交换一次数据,把地址寄存器内容加12.字计数器(DC):记录传送数据的总字数,每传送一个字,字计数器减13.数据缓冲寄存器或数据缓冲区(DR):暂存每次传送的数据5.1.2:DMA方式•需要的逻辑部件4.设备地址寄存器:存放I/O设备信息,如磁盘的柱面号、磁道号、块号等5.中断机制和控制逻辑:用于向CPU提出I/O中断请求和保存CPU发送来的I/O命令及管理DMA的传送过程5.1.2:DMA控制器I/O控制逻辑DRMARDCCR...系统总线CPU内存主机-控制器接口控制器-设备接口DMA控制器count驱动器5.1.2:DMA过程I/O中断处理程序处理DMAI/O结束中断现行程序启动I/O(读操作)继续执行第K条指令第K+1条指令启动命令返回原程序响应中断返回断点DMA工作传输准备DMA向内存发出询问挪用内存周期读/写操作修改内存地址和计数块结束发I/O结束未5.1.2:通道方式•为获得CPU和外围设备间更高的并行工作能力,也为了让种类繁多,物理特性各异的外围设备能以标准的接口连接到系统中,计算机系统引入了自成独立体系的通道结构•通道也叫输入输出处理器.通道是独立于CPU的专门负责数据输入/输出传输工作的处理机,对外部设备实现统一管理,代替CPU对输入/输出操作进行控制,从而使输入,输出操作可与CPU并行操作5.1.2:通道方式•通道负责管理设备与内存之间的数据传送的一切工作•能完成主存和外围设备间的信息传送,与CPU并行地执行操作。通道技术解决了I/O操作的独立性和各部件工作的并行性•外围设备和CPU能实现并行操作•通道和通道之间能实现并行操作•各通道上的外围设备也能实现并行操作,达到提高整个系统效率这一根本目的5.1.2:通道I/O过程1.CPU在执行主程序时遇到I/O请求,它启动指定通道上选定的外围设备,一旦启动成功,通道开始控制外围设备进行操作2.CPU就可执行其他任务并与通道并行工作,直到I/O操作完成。通道发出操作结束中断时,CPU才停止当前工作,转向处理I/O操作结束事件处理器内存I/O设备I/O设备I/O设备I/O设备I/O设备轮询或中断处理器内存I/O设备I/O设备I/O设备I/O设备I/O设备控制器控制器控制器DMA处理器内存I/O设备I/O设备I/O设备I/O设备I/O设备通道通道通道通道处理器内存I/O设备I/O设备I/O设备I/O设备I/O设备通道控制器通道控制器控制器控制器三级控制体系5.1.2:通道类型(1)•字节多路通道(慢速设备)以字节为单位传输信息,它可以分时地执行多个通道程序。当一个通道程序控制某台设备传送一个字节后,通道硬件就转去执行另一个通道程序,控制另一台设备传送一个字节信息。一个通道程序相当于一个进程,通道程序之间是顺序执行关系,不是并发执行关系5.1.2:通道类型(2)•选择通道(快速设备)选择通道以分时方式执行多道通道程序,每次执行一个通道程序可以控制一台设备传送一批数据。数据传输完成后,选择通道再执行另一个通道程序,控制另一台设备传输一批数据5.1.2:通道类型(3)•数组多路通道(高速设备)数组多路通道先为一台设备执行通道程序中的一部分通道指令,传输一批数据,然后自动转接,为另一台设备执行一部分通道指令,传输另外一批数据减少外设申请使用通道时的等待时间允许多个设备同时工作,但只允许一个设备进行传输型操作,而其他设备进行控制型操作;I/O 系统I/O 控制方式设备控制器5.1.3设备控制器•I/O设备包括一个机械部件和一个电子部件。为了达到设计的模块性和通用性,一般将其分开•电子部件称为设备控制器或适配器,在PC中,它常常是插入主板扩充槽的印刷电路板•机械部件则是设备本身5.1.3(续)•操作系统基本上与控制器打交道,而非设备本身•多数PC的CPU和控制器之间的通信采用单总线模型,CPU直接控制设备控制器进行I/O•大型主机则采用多总线结构和通道方式,以提高CPU与输入输出的并行程度5.1.3:设备控制器组成•命令寄存器及译码器:接收CPU向设备发来的控制命令•数据寄存器:存放CPU与外设之间交换的数据•状态寄存器:反映外设的工作状态•地址译码器:识别同一控制器连接的不同外设•用于对设备操作进行控制的I/O逻辑5.1.3:接口部分结构数据寄存器控制/状态寄存器数据线I/O逻辑…控制器与设备接口1控制器与设备接口i数据状态控制数据状态控制…地址线控制线CPU与控制器接口¿ØÖÆÆ’ÌëÉè±˙²Ì¿5.1.3:设备控制器功能1.接收和识别CPU或通道发来的命令2.实现数据交换,包括设备和控制器间的数据传输3.发现和记录设备及自身的状态信息,供CPU处理使用4.设备地址识别5.2I/O软件原理I/O 软件的设计目标和原则I/O 中断处理程序I/O设备驱动程序独立于设备的I/O软件用户空间的I/O软件I/O 软件的设计目标和原则I/O 中断处理程序I/O设备驱动程序独立于设备的I/O软件用户空间的I/O软件5.2.1I/O软件设计目标、原则•高效率•通用性•I/O软件总体设计要考虑的问题:•设备无关性•出错处理:屏蔽低层错误•同步(阻塞)—异步(中断驱动)传输•缓冲技术5.2.1:I/O软件组织层次•5.2.2:I/O中断处理程序•5.2.3:设备驱动程序•5.2.4:与设备无关的操作系统I/O软件•5.2.5:用户层I/O软件用户进程进行I/O调用;格式化I/O;SPOOLING设备无关软件命名;保护;阻塞;缓冲;分配设备驱动程序建立设备寄存器;检查状态硬件执行I/O操作中断处理程序当I/O结束时,唤醒驱动程序层次I/O应答I/O功能I/O请求I/O 软件的设计目标和原则I/O 中断处理程序I/O设备驱动程序独立于设备的I/O软件用户空间的I/O软件5.2.2I/O中断处理程序•
本文标题:18[修改]第五章设备管理
链接地址:https://www.777doc.com/doc-1304938 .html