1、第九章 设 备 管 理 第九章 设备管理 9.1 设备管理概述9.2 数据传输控制方式9.3 中断技术9.4 缓冲技术9.5 磁盘驱动调度9.6 设备分配第九章 设 备 管 理 9.1 设备管理概述 设备分类 设备管理的功能和任务 设备控制器9.1.1 设备分类1、按设备性质分类: 存储设备和输入输出设备2、按设备从属关系: 系统设备和用户设备3、按设备共享属性: 独享设备、共享设备和虚拟设备4、按信息交换单元: 块设备和字符设备第九章 设 备 管 理 9.1.2 设备管理的功能和任务设备管理的主要任务 : 强调设备的独立性 选择和控制设备与内存、中央处理器进行交换传输数据 按照一定的算法把设
2、备分配给对该设备提出请求的进程,保证系统政策工作。 充分有效地使用设备,尽可能提高设备的并行操作程度,使 OS获得最佳的效率。设备管理的功能: 设备分配 设备控制 缓冲管理第九章 设 备 管 理 9.1.3 设备控制器CPU 内存磁盘驱动器磁盘控制器打印机打印机控制器 其他控制器控制器设备接口主机 说明 利用单总线把各种各样的设备联系起来了。设备控制器处于 CPU和 I/O设备之间,它接收从 CPU发来的命令,并区控制 I/O设备工作。其目的是使 CPU从繁杂的设备控制事务中解脱出来。设备控制器应能接收和识别 CPU发来的各种命令,实现 CPU与控制器,控制器与设备之间的数据交换,记录设备状态
3、供 CPU查询,还应能识别它所控制的每个设备的地址。因此,控制器中应设置控制器存放接收的命令及参数。第九章 设 备 管 理 9.2 设备传输控制方式 程序直接控制方式 中断控制方式 直接存储器存取方式 通道控制方式第九章 设 备 管 理 9.2.1 程序直接控制方式处理机对 I/O的控制采用程序直接控制方式。当用户进程需要输入数据时,由处理机向设备控制器发出一条 I/O指令启动设备进行输入,在设备输入数据期间,处理机通过循环执行测试指令不间断地检测设备状态寄存器的值,当状态寄存器的值显示设备输入完成时处理机将数据寄存器的数据取出,送入内存指定单元,然后再启动设备去读下一个数据。反之,当用户进程
4、需要向设备输出数据时,也必须同样发启动设备输出并等待输出操作完成。外围设备接收到 Start命令做接收或发送数据准备标志触发器置 “Done”等待 CPU的下一条指令准备完毕?是CPU发 Start命令等待执行下一条指令开始数据传送设备标志触发器为 “Done”?否第九章 设 备 管 理 优点: 工作过程简单,不需要更多的硬件支持缺点: 1. CPU和外围设备只能进行串行工作2. CPU在一段时间内只能和一台外围设备交换数据信息,不能实现设备之间并行工作。3. 程序直接控制方式只适用于那些 CPU执行速度较慢,而且外围设备较少的系统。第九章 设 备 管 理 9.2.2 中断控制方式就是为了减少
5、 CPU和外部设备进行传递信息时完全由 CPU来进行控制的这种局面而引入的。在 I/O中断方式下,数据的输入按如下步骤操作。1. 需要数据的进程通过 CPU发出启动外设输入数据的指令,该指令同时置状态寄存器的中断允许位。2. 在进程发出指令启动设备之后,该进程放弃 CPU,等待输入完成。这时进程调度程序可以调度其他就绪进程占据 CPU。3. 当输入工作完成时, I/O控制器通过中断请求向 CPU发出中断信号。 CPU在接收到中断处理信号之后,转去执行设备中断处理程序。设备中断处理程序把输入数据寄存器中的数据传到相应的位置上去。同时还把等待输入完成的那个进程唤醒,再返回到被中断的进程继续执行。4
6、. 在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存单元中取出数据做进一步处理。中断控制方式的优缺点:与程序直接控制方式相比,中断方式使 CPU的利用率大幅提高了。设备每输入 /输出一个数据都要求中断 CPU,这样在一次数据传送过程中,中断发生次数较多,耗去大量CPU处理时间。第九章 设 备 管 理 9.2.3 直接存储器存取方式在 DMA方式中, I/O控制器具有更强的功能。它除了具有上述中断功能外,还有一个DMA控制机构。在 DMA控制器控制下,设备和主存之间可成批地进行数据交换,而不用 CPU干预。这样大大减轻了 CPU的负担,也使 I/O数据传送速度大大提高。D
7、MA方式下进行数据输入的过程如下:1. 当进程要求设备输入一批数据时, CPU将准备存放输入数据的内存起始地址以及要传送的字节数分别送入 DMA控制器中的内存地址寄存器和传送字节计数器;另外,还要将中断位和启动位置 “1”,以启动设备开始进行数据输入并允许中断。2. 发出数据要求的进程进入等待状态,进程调度程序调度其他进程占据CPU. 3. 输入设备不断地挪用 CPU工作周期,将数据寄存器中的数据写入内存,直到所要求的字节全部传送完毕。4. DMA控制器在传送字节数完成时通过中断请求线发出中断信号, CPU收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断程序。5. 在以后的某
8、个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存起始地址取出数据作进一步处理。第九章 设 备 管 理 DMA方式与中断的主要区别:1. 中断方式在每个数据传送完成后中断 CPU,而 DMA则是在所要求传送的一批数据全部传送结束时中断 CPU.2. 中断方式的数据传送是在中断处理时由 CPU完成,而 DMA则是在 DMA控制器的控制下完成。9.2.4 通道控制方式1. 字节多路通道 强 调 在数据的 传输过 程当中,以字 节 作 为传输 数据的基本 单 位。2. 选择通道 选择 一个固定的通道并一直 为 它服 务 。3. 数 组 多路通道 强 调 的是:数据的 传输 以一个数 组为 基本 单 位。是专门用来输入和输出的处理机,它控制内存和设备直接进行数据交换。包括通道的地址字和状态字。按信息交换方式,可以把通道分为: