第九章设备管理..

上传人:今*** 文档编号:107375692 上传时间:2019-10-19 格式:PPT 页数:88 大小:875KB
返回 下载 相关 举报
第九章设备管理.._第1页
第1页 / 共88页
第九章设备管理.._第2页
第2页 / 共88页
第九章设备管理.._第3页
第3页 / 共88页
第九章设备管理.._第4页
第4页 / 共88页
第九章设备管理.._第5页
第5页 / 共88页
点击查看更多>>
资源描述

《第九章设备管理..》由会员分享,可在线阅读,更多相关《第九章设备管理..(88页珍藏版)》请在金锄头文库上搜索。

1、第9章 设备管理,设备管理是对计算机输入输出系统的管理,是操作系统中最具多样性和复杂性的部分。本章主要讨论设备管理的基本概念,包括中断、缓冲、设备分配和控制等。,9.1 引言 9.7设备标识与设备驱动程序 9.2 数据传送控制方式 9.3 中断技术 9.4 缓冲技术 9.5 设备分配 9.6 I/O进程控制 本章小结,计算机系统中,除了CPU和内存之外,其他的大部分硬设备称为外部设备。它包括常用的输入输出设备、外存设备以及终端设备等。 9.1.1 设备的类别 9.1.2 设备管理的功能和任务,9.1 引 言,9.1.1 设备的类别,从系统管理的角度分类: 按使用特性分类 按从属关系分类 按信息

2、组织方式分类,图9.1 按使用特性对外部设备的分类,9.1.1 设备的类别,按设备的从属关系分类 系统设备:在操作系统生成时就已配置好的各种标准设备。如,键盘、打印机以及文件存储设备等。 用户设备:在系统生成时没有配置,而由用户自己安装配置后由操作系统统一管理的设备。如,网络系统中的各种网卡、图像处理系统的图像设备等。,9.1.1 设备的类别,按信息组织方式分类 字符设备:键盘、终端、打印机等以字符为单位组织和处理信息的设备被称为字符设备; 块设备:磁盘、磁带等以字符块为单位组织和处理信息的设备被称为块设备。,9.1.2 设备管理的功能和任务,设备管理的主要任务: 选择和分配输入输出设备以进行

3、数据传输操作; 控制输入输出设备和CPU(或内存)之间交换数据; 为用户提供友好的透明接口,把用户和设备硬件特性分开,使得用户在编制应用程序时不必涉及具体设备,系统按用户要求控制设备工作; 提高设备和设备之间、CPU和设备之间,以及进程和进程之间的并行操作度,以使操作系统获得最佳效率。,9.1.2 设备管理的功能和任务,设备管理的功能: (1) 提供和进程管理系统的接口。 (2) 进行设备分配。 (3) 实现设备和设备、设备和CPU等之间的并行操作。 (4) 进行缓冲区管理。,9.7 设备标识与设备驱动程序,逻辑设备与物理设备 1.逻辑设备和物理设备的含义 2.设备独立性 3.设备独立性的优点

4、,1.逻辑设备和物理设备的含义,逻辑设备 逻辑设备是对实际物理设备属性的抽象,它并不限于某个具体设备。 用户在编程时,不用关心系统具体配置了哪些设备,也不需要了解各种设备的物理特性,而只要按照惯例为所用到的设备起个逻辑名字,称为逻辑设备名。 物理设备 物理设备是一个具体的设备。 系统为了能识别全部外设,给每台外设分配一个唯一不变的名字,称为物理设备名。 通过引入逻辑设备和物理设备,可实现设备独立性。,2.设备独立性,设备独立性也称为设备无关性,指用户编程时所使用的设备与实际使用的设备无关,用户编程时使用逻辑设备名。 用户程序以逻辑设备名来请求使用某类设备时,系统将在该类设备中,根据设备的使用情

5、况,将任一台合适的物理设备分配给该程序。 如果用户程序是以物理设备名来请求指定某台设备,假如该设备有故障或正在被其他进程使用,则用户程序只能一直等待。 采用逻辑设备名,可以使用户程序独立于分配给它的某类设备的具体设备。,2.设备独立性,使用逻辑设备名,还能使用户程序独立于所使用的某类设备。 例如,在Linux系统环境下,系统提供标准输入/输出,在用户程序中的输入/输出都使用这两个标准的I/O,实际运行时,可根据具体情况而定。如果配备打印机,可将输出信息送到打印机打印;如果没有配备打印机,就把输出重定向到某个指定文件,把要打印的信息送到该文件中。,3.设备独立性的优点,(1)方便用户编程。 (2

6、)便于程序移植。 (3)提高了资源利用率。 (4)能适应多用户多进程的需要。,设备驱动程序,设备驱动程序:是驱动物理设备直接进行各种操作的软件,它可看作I/O系统和物理设备的接口,所有进程对于设备的请求都要通过设备驱动程序来完成。 1.设备控制器 2.设备驱动程序的引入 3.设备驱动程序的处理过程,1.设备控制器,设备只有在设备控制器的控制下才能运行,且一个控制器可以控制几台同类设备。,接收和识别CPU发来的命令,实现控制器与CPU之间、控制器和外设之间的数据交换,记录设备的状态(如设备就绪、设备忙、操作错误等)供CPU了解,用于识别每个设备的地址,2.设备驱动程序的引入,将用户命令中的逻辑设

7、备名转换为物理设备名,系统只是完成了第一步工作,至于要具体操纵这台物理设备,就复杂多了。 操作系统设计者把与物理设备直接有关的软件部分独立出来,构成设备驱动程序系列,一般由设备商和软硬件开发商提供的针对某一种具体设备的驱动程序组成。 系统和用户可根据需要,灵活配置物理设备,选择相应的驱动程序装载。,3.设备驱动程序的处理过程,(1)将抽象要求转换为具体要求(控制器中寄存器内容)。 (2)检查I/O请求的合法性。 (3)检查设备状态。读状态寄存器内容,看设备忙/闲状态。 (4)传送必要的参数。 (5)启动I/O设备。向设备控制器中的命令寄存器传送控制命令,将外设启动,然后可由设备控制器来控制外设

8、进行基本I/O操作。 不同类型的外设,驱动程序是不一样的。,9.2 数据传送控制方式,选择和衡量控制方式的原则: (1)数据传送速度足够高,能满足用户的需要但又不丢失数据; (2)系统开销小,所需的处理控制程序少; (3)能充分发挥硬件资源的能力,使得I/O设备尽量忙,而CPU等待时间少。,9.2 数据传送控制方式,4种外设和内存间常用的数据传送控制方式: 9.2.1 程序直接控制方式 9.2.2 中断方式 9.2.3 DMA方式(直接存取方式) 9.2.4 通道控制方式(channel control),9.2.1 程序直接控制方式,程序直接控制方式:由用户进程来直接控制内存或CPU和外围设

9、备之间的信息传送。控制者是用户进程。 I/O控制器中的寄存器 1.控制状态寄存器:设有多个标志位,如忙/闲标志位、完成位 2.数据缓冲寄存器,程序直接控制方式以键盘为例,1、CPU向键盘的控制器发一条输入命令,启动键盘进行输入操作,并将状态寄存器的”忙闲位”置1,表示忙。 2、然后CPU运行程序不断测试状态寄存器的完成位,看键盘是否完成了输入。直到键盘已将数据输入到了键盘控制器的数据寄存器中,状态寄存器的完成位变为1时,CPU才停止测试。 3、CPU取走数据寄存器中的输入数据。 目前IDE接口硬盘仍在使用这种方式,称为PIO(Programming Input/Output)模式。,程序直接控

10、制方式的控制流程图,程序直接控制方式的缺点: (1)CPU和外围设备只能串行工作。 (2)CPU在一段时间内只能和一台外围设备交换数据信息,从而不能实现设备之间的并行工作; (3)由于程序直接控制方式依靠测试设备标志触发器的状态位来控制数据传送,因此无法发现和处理由于设备或其他硬件所产生的错误。 程序直接控制方式只适用于那些CPU执行速度较慢,而且外围设备较少的系统。,9.2.2 中断方式,CPU请求设备传输后不等待,转去做其他更有用的事情,当设备完成请求的时候向CPU发设备中断。(系统中同一时刻可能有许多设备的请求在同时发生。) 所谓中断,就是指当某个事件发生时,向系统发出一个中断信号,系统

11、于是中止现行程序的运行,转去执行相应的中断处理程序,完毕后返回断点继续执行。 需要在CPU和每一个设备控制器之间增加一条中断请求线,并在设备控制器的控制寄存器中增加一个中断允许位。,中断方式的传送结构,中断方式以键盘输入为例,(1)开中断。CPU把启动位和中断允许位为1的控制字写入键盘控制状态寄存器中,启动键盘。(当中断允许位为1时,中断程序可以被调用。) (2)进程等待键盘输入完成(进入等待队列),由进程调度程序调度其他就绪进程使用CPU。 (3)键盘启动后,当数据寄存器装满后,键盘控制器通过中断请求线向CPU发出中断信号。 (4)CPU暂停正在进行的工作,转向执行中断处理程序。(取出数据寄

12、存器中的输入数据送到内存特定单元,并将等待输入完成的进程唤醒。) (5)中断处理程序完毕,CPU返回断点继续执行。 (6)以后某个时刻,进程调度程序选中正处于就绪状态的那个进程,该进程从特定内存单元中取出所需的数据继续工作。,图9.4 中断控制方式的处理过程,中断控制方式的处理过程,中断方式的优点: CPU不需等待数据传输完成,I/O设备与CPU并行工作,CPU的利用率因此提高。 中断方式的缺点: 在一次数据传送过程中,发生中断次数较多。如果数据量大,需要多次执行中断程序,CPU的效率仍然不高。 如果外围设备的速度也非常高,则可能造成数据缓冲寄存器的数据由于CPU来不及取走而丢失。,9.2.3

13、 DMA方式(直接存取方式),DMA(Direct Memory Access)方式: 在外部设备和主存之间建立了直接数据通路,即外设和主存之间可直接读写数据,且数据传送的基本单位是数据块。 整块数据的传输在一个称为DMA控制器的控制下完成。 DMA数据传输期间不需CPU干预,仅在传送一个或多个数据块的开始或结束时,才需CPU处理。 在DMA方式中,I/O控制除了控制状态寄存器和数据缓冲寄存器之外,DMA控制器中还包括传送字节计数器、内存地址寄存器等。,DMA控制方式,DMA方式的数据输入处理过程如下: CPU把准备存放输入数据的内存始址以及要传送的字节数分别送入DMA控制器中的内存地址寄存器

14、和传送字节计数器;另外,还把控制状态寄存器中的中断允许位和启动位置1;从而启动设备开始进行数据输入。 发出数据要求的进程进入等待状态,进程调度程序调度其他进程占据CPU。 当输入设备把一个数据送入DMA控制器的数据缓冲寄存器后,DMA控制器立即取代CPU,接管地址总线的控制权,根据送入DMA控制器的内容,将数据送入相应的内存单元(这称为挪用(窃取)CPU工作周期),直到所要求的字节全部传送完毕。 DMA控制器在传送字节数完成时通过中断请求线发出中断信号,CPU在接收到中断信号后转中断处理程序进行善后处理。 中断处理结束时,CPU返回被中断进程处执行或被调度到新的进程上下文环境中执行。,图9.6

15、 DMA方式的数据传送处理过程,DMA方式与中断方式的主要区别(优点): 中断方式:在数据缓冲寄存器满之后发中断要求CPU进行中断处理;DMA方式:在所要求转送的数据块全部传送结束时要求CPU进行中断处理。大大减少了CPU进行中断处理的次数。 中断方式:数据传送在中断处理时由CPU控制完成;DMA方式:在DMA控制器的控制下不经过CPU控制完成。 DMA方式的缺点: DMA方式对外围设备的管理和某些操作仍由CPU控制。 大中型计算机中,系统所配置的外设种类越来越多,数量也越来越大,对外围设备的管理的控制也就愈来愈复杂。,9.2.4 通道控制方式 (channel control),1.通道的概

16、念 2.通道的种类 3.通道控制方式的数据传输处理过程 4.通道方式与DMA方式的区别,1.通道的概念,通道是一个独立于CPU的专管输入输出控制的处理机,它控制设备与内存直接进行数据交换。 通道有自己的一套简单的指令系统,称为通道指令。每条通道指令规定了设备的一种操作,通道指令序列便是通道程序,通道执行通道程序来完成规定动作。,通道的定义:通道是一个独立于CPU的专管输入输出控制的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令受CPU启动,并在操作结束时向CPU发中断信号。,1.通道的概念,1.通道的概念,通道靠执行通道程序软件完成数据传输,通道控制器的功能比DMA控制器更强大,它能够承担外设的大部分工作。,2.通道的种类,以字节为传输单位,可以分时地执行多个通道程序。 这是一种简单的共享通道,主要为多台低速或中速的字符设备服务。如终端、打印机等。,它用开关来控制对高速外设的选择,如磁盘机等。在一段时间内单独为一台外围设备服务,直到该设备的数据传输工作全部结束。然后通道再选择另一台外设为其提供服务。,它分时地为多台外围设备服务,每个时间片

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号