第9章设备管理_2

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

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

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

资源描述

操作系统原理第9章设备管理2005.11本章教学目标熟悉设备管理的主要功能掌握输入输出控制的四种方式掌握缓冲技术和SPOOLing技术掌握设备的分配熟悉设备的处理本章教学内容设备管理概述输入输出系统设备分配与回收设备处理设备管理采用的技术设备管理概述设备管理的任务设备管理的主要功能设备的分类设备的分类按设备的从属关系分类–可以把设备分为系统设备和用户设备按操作特性分类–可以把设备分为存储设备和I/O设备按设备共享属性分类–可以把设备分为独享设备、共享设备和虚拟设备。按信息交换单位分类–可以把设备分为块设备和字符设备。设备管理的任务是完成用户提出的I/O请求,为用户分配I/O设备,提高CPU与I/O设备的利用率,提高I/O设备的速度,方便用户使用I/O设备。设备管理的主要功能缓冲管理–是管理好各种类型的缓冲区,协调各类设备的工作速度,提高系统的使用效率。其实现机制是采用不同类型的缓冲区机制。设备分配–是根据用户提出的I/O请求,为其分配所需要的设备。其实现机制是配置设备控制表、控制器控制表等数据结构。设备处理–是实现CPU和设备控制器之间的通信。其实现机制是通过相应的处理程序来实现。虚拟设备是把每次只允许一个进程使用的物理设备,改造为能同时供多个进程共享的设备。设备独立性也称设备无关性,是指用户在编制程序时所使用的设备与实际使用的设备无关。其特点是,在用户程序中仅使用逻辑设备名,而系统执行时使用物理设备名。独立与同类设备的具体设备号;独立与设备类型。I/O设备控制器设备控制器的概念设备控制器是CPU与外围设备之间的接口,是一个可编址设备,每一个地址对应一个设备。设备控制器的功能接收和识别来自CPU的各种命令实现CPU与控制器、控制器与设备之间的数据交换设备状态的了解和报告地址识别设备控制器的组成(含以下三部分):设备控制器与处理器的接口实现CPU和设备控制器之间的通信;设备控制器与设备的接口实现设备与控制器之间的通信;I/O逻辑。负责对接收到的I/O命令进行译码,再根据所译出的命令对所选的设备进行控制。数据寄存器控制/状态寄存器I/O逻辑控制器与设备接口n控制器与设备接口1CPU与控制器接口控制器与设备接口数据状态控制数据状态控制……数据线地址线控制线设备控制器的组成I/O通道I/O通道的概念I/O通道是指专门负责输入输出工作的处理机。和CPU一样,有运算和控制逻辑,有自己的指令系统,通过通道程序控制数据传输工作。与CPU共享内存。I/O通道的分类字节多路通道:以字节交叉方式工作。含有若干个非分配型子通道,以时间片方式轮流使用主通道。用来连接低速或中速设备。数据选择通道:含有一个分配型子通道,在一段时间内只能执行一道通道程序、控制一台设备进行数据传送,致使但某台设备占用了该通道后,便一直占用,即使无数据传送,通道空闲时也不允许其他设备利用该通道,直至设备数据传输结束后才释放该通道。数组多路通道:将数据选择通道传输速率高和字节多路通道能使子通道分时并行操作的优点相结合,以分时方式执行几个通道程序,并行执行多个通道程序。这种通道广泛的用于连接高中速设备。I/O系统的结构微机I/O系统微机的I/O系统一般采用总线I/O系统结构。主机I/O系统具有通道的I/O系统结构。其中,I/O系统共分为4级:最低级为I/O设备,次低级为设备控制器,次高级为I/O通道,最高级是主机。CPU存储器磁盘控制器打印机控制器…其它控制器磁盘驱动器打印机系统总线存储器通道1通道2控制器1控制器2设备2设备1设备3设备4设备5设备6设备7控制器4控制器3单通路I/O系统瓶颈存储器通道1通道2控制器1控制器2设备1设备2设备3设备4多通路I/O系统I/O系统的控制方式程序直接控制方式中断控制方式直接存储器存取控制方式通道控制方式程序直接控制方式特点:工作过程简单,CPU的利用率低。概念:程序直接控制方式也称为“忙—等待”方式,即在一个设备的操作没有完成时,控制程序一直检测设备的状态,直到该操作完成,才能进行下一个操作。步骤:①当用户需要输入数据时,由处理机向设备控制器发出一条I/O指令,启动设备进行输入。在设备输入数据期间,处理机通过循环执行测试指令不间断地检测设备状态寄存器的值,当状态寄存器的值显示设备输入完成时,处理机将数据寄存器中的数据取出,送入内存指定的存储单元,然后再启动设备去读取下一个数据。②当用户进程需要向设备输出数据时,也必须同样发出启动命令启动设备输出,并等待输出操作完成。中断控制方式概念中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。中断控制方式①需要输入数据的进程,通过CPU发出启动指令,启动外设输入数据。该指令同时还将状态寄存器中的中断屏蔽位打开。②在进程发出指令启动设备之后,该进程放弃处理机,等待输入完成。从而,进程调度程序调度其他就绪进程占据处理机。③当输入完成时,I/O控制器通过中断请求线向CPU发出中断信号。CPU在接收到中断信号后,转向设备中断处理程序。设备中断处理程序将输入数据寄存器中的数据传输到某一特定内存单元中,以便供要求输入的进程使用。同时,还把等待输入完成的那个进程唤醒,再返回到被中断的进程继续执行。④在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从约定的内存单元中取出数据做进一步处理。中断控制方式中断控制方式的特点–中断控制方式比程序直接控制方式提高了CPU的利用率。–每输入输出一个数据都发生中断,传输一次数据需要多次中断,浪费了CPU的处理时间。直接存储器存取(DMA)控制方式概念是指对I/O设备的控制由DMA控制器完成,在DMA控制器的作用下,设备和主存之间可以成批地进行数据交换,而不用CPU的干涉。countDRMARDCCRI/O控制逻辑命令系统总线DMA控制器DMA控制器组成及作用为了实现在主机与控制器之间成块数据的直接交换,必须在DMA(1)命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息,或设备的状态。(2)内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。(3)数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。(4)数据计数器DC。存放本次CPU要读或写的字(节)数。DMA控制方式②发出数据要求的进程进入等待状态,进程调度程序调度其他进程占据CPU。③输入设备不断地挪用CPU工作周期,将数据寄存器中的数据源源不断地写入内存,直到所要求的字节全部传送完毕。④DMA控制器在传送字节数完成时,通过中断请求线发出中断信号,CPU收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断的程序。⑤在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存始址取出数据做进一步处理。①当进程要求设备输入一批数据时,CPU将设备存放输入数据的内存始址以及要传送的字节数分别送入DMA控制器中的地址寄存器和传送字节计数器;另外,还要将中断位和启动位置为1,以启动设备开始进行数据输入并允许中断。DMA控制方式直接存储器存取控制方式的特点:–I/O数据传输速度快,CPU负担少。–在DMA方式下,数据的传送方向、存放数据的内存始址及传送数据的长度等都由CPU控制。每台设备需要配一个DMA控制器。通道控制方式概念:是一种以内存为中心,是设备与内存直接交换数据的控制方式。CPU只需要发出启动指令,指出通道相应的操作和I/O设备,该指令就可以启动通道并使该通道从内存中调出相应的通道指令执行。通道控制方式通道控制方式的步骤:①当进程要求输入数据时,CPU发启动指令指明I/O操作、设备号和对应通道。②对应通道接收到CPU发来的启动指令后,把存放在内存中的通道指令程序读出,并执行通道程序,控制设备将数据传送到内存中指定的区域。③若数据传输结束,则向CPU发出中断请求。CPU收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断的程序。④在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存始址取出数据做进一步处理。通道控制方式通道控制方式的特点:–通道所需要的CPU干预更少。–一个通道可以控制多台设备。–CPU的利用效率高。缓冲技术引入缓冲的主要原因:–缓和CPU与I/O设备间速度不匹配的矛盾–减少对CPU的中断频率,放宽对中断响应时间的限制–提高CPU与I/O设备间的并行性缓冲技术②凡是数据来到速度和离去速度不同的地方都可以使用缓冲区。如CPU与外存之间有高速缓存(CacheMemory),主存与显示器之间有显示缓存,主存与打印机之间有打印缓存等等。③缓冲的实现方式有两种:1.采用硬件缓冲器实现;2.在内存划出一块区域,专门用来存放临时输入输出的数据,这个区域称为缓冲区。①缓冲是提高CPU与外设并行程度的一种技术。④根据系统设置缓冲区的个数,将缓冲技术分为:单缓冲、双缓冲、循环缓冲、缓冲池。缓冲技术缓冲技术分类–单缓冲–双缓冲–循环缓冲–缓冲池T1T2T3T4M1M2C1M3C2C3处理(C)工作区缓冲区传送(M)输入(T)I/O设备用户进程处理(C)工作区缓冲区2I/O设备用户进程缓冲区1M1C1T1T2T3T4M2M3C2C3M4C41.如果数据到达率与离去率相差很大,则可采用单缓冲方式;2.如果信息的输入和输出率相同(或相差不大)时,则可用双缓冲区;3.对于阵发性的输入、输出,可以设立多个缓冲区。4.系统内进程很多时,将会有许多这样的缓冲,需要消耗大量的内存,利用率也不高。此时,可采用可公用的缓冲池。GGRGGRnextgnexti165234GGRGGRcurrentnexti165234nextg循环缓冲缓冲池缓冲池既能用于输入也能用于输出,可被多个进程共享。缓冲区被组织在3个队列中:空缓冲队列、输入缓冲队列、输出缓冲队列;同时还存在4种工作缓冲区:用于收容输入数据的工作缓冲区;用于提取输入数据的工作缓冲区;用于收容输出数据的工作缓冲区;用于提取输出数据的工作缓冲区。设备分配与回收设备分配中的数据结构设备分配应考虑的因素设备分配设备回收对设备分配程序的改进设备分配中的数据结构系统设备表(SDT)它记录已被连接到系统中的所有物理设备的情况,每个物理设备占一个表目。整个系统配置一张。通道控制表(CHCT)为每个通道配置一张表,它反映通道的使用状态。控制器控制表(COCT)每个控制器配置一张表,它反映控制器的使用状态以及和通道的连接状况等。设备控制表(DCT)系统为每个设备配置一张设备控制表,用于记录设备的特性及I/O控制器连接的情况。设备类型type设备标识符:deviceid设备状态:等待/不等待忙/闲指向控制器表的指针重复执行次数或时间设备队列的队首指针DCT1DCT2DCTn设备控制表集合设备控制表2.控制器控制表、通道控制表和系统设备表COCT、CHCT和SDT表(c)系统设备表SDT控制器标识符:controllerid控制器状态:忙/闲与控制器连接的通道表指针控制器队列的队首指针控制器队列的队尾指针通道标识符:channelid通道状态:忙/闲与通道连接的控制器表首址通道队列的队首指针通道队列的队尾指针(a)控制器表COCT(b)通道表CHCT表目1…表目i…设备类设备标识符DCT驱动程序入口设备分配应考虑的因素设备的使用性质设备的分配算法设备分配的安全性设备的独立性设备分配设备分配应该考虑的因素:设备独立性:应用程序独立于具体使用的物理设备。在应用程序中仅是用逻辑设备名,有系统负责将其解释为具体的物理设备。优点:1.设备分配时具有灵活性;2.易于实现I/O重定向。设备分配的安全性:安全分配方式、不安全分配方式设备分配算法:FCFS、HPF设备的固有属

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

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

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

×
保存成功