设备管理
概述
设备是计算机与外界交互的工具,具体负责计算机与外部的输入/输出工作,所以常称为外部设备(简称外设)。
在计算机系统,将负责管理设备和输入/输出的机构称为 I/O 系统。因此,I/O 系统由设备、控制器、通道(具有通道的计算机系统)、总线和 I/O 软件组成。
设备的分类
- 按数据组织分类:块设备、字符设备。
- 按照设备功能分类: 输入设备、输出设备、存储设备、网络联网设备、供电设备。
- 资源分配角度分类: 独占设备、共享设备和虚拟设备。
- 数据传输速率分类: 低速设备、中速设备、高速设备。
设备管理的任务和目标
设备管理的任务是保证在多道程序环境下,当 多个进程竞争使用设备时,按一定的策略分配和管理各种设备,控制设备的各种操作,完成 I/O 设备与主存之间的数据交换。
设备管理的主要功能是动态地掌握并记录设备的状态、设备分配和释放、缓冲区管理、实现物理 I/O 设备的操作、提供设备使用的用户接口及设备和控制。
I/O 软件
I/O 设备管理软件的所有层次及每一层功能如下图:
实例:当用户程序试图读一个硬盘文件时,需要通过操作系统实现这一步骤,与设备无关软件检查高速缓存中有无要读的数据块,若没有,则调用设备驱动程序,向 I/O 硬件发出一个请求。然后,用户进程阻塞并等待磁盘操作的完成,当 磁盘操作完成时,硬件产生一个中断,转入中断处理程序。中断处理程序检查中断的原因,认识到 这时磁盘读取操作已经完成,于是唤醒用户进程取回从磁盘读取的信息,从此结束此次 I/O 请求。用户进程在得到了所需的磁盘内容之后继续运行。