1.设备管理概述
1.1.设备分类
按照数据组织分类:块设备(一次能传输一块数据,高速设备)、字符设备。
按照设备功能分类:输入设备、输出设备 、存储设备、网络联网设备、供电设备。
资源分配角度分类:独占设备(互斥的硬件资源)、共享设备、虚拟设备。
数据传输速率分类:低速设备、中速设备、高速设备。
1.2.设备管理的任务和主要功能
任务:保证在多道程序环境下,当多个进程竞争使用设备时,按一定的策略分配和管理各种设备,控制设备的各种操作,完成I/O设备和主存之间的数据交换。
主要功能:动态地掌握并记录设备的状态、设备分配和释放、缓冲区管理、实现物理设备I/O设备操作、提供设备使用的用户接口及设备的访问和控制。
2.I/O软件
2.1.I/O设备管理软件分层
实例:当用户程序试图读取一个硬盘文件时,需要经过一下操作:
与设备无关软件检查高速缓存中有无要读写的数据块,若没有,则调用设备驱动程序向I/O硬件发出一个请求。
然后用户进程进入阻塞状态,并等待磁盘操作完成。
当磁盘操作完成时,硬件产生一个中断,转入中断处理程序。中断处理程序检查中断原因,认识到这时磁盘读取程序已经完成,于是唤醒用户进程取回从磁盘读