(一)分层构造
I/O设备管理软件采用分层构造,即把设备管理软件组织成为一系列层次。
低层与硬件相关,把硬件与较高层次的软件隔离开来,最高层软件向应用提供一个友好的、清晰且统一的接口。
(二)设计目标
目标:设备独立性和统一命名。
I/O软件独立于设备,可以提高设备管理软件的设计效率。
当输入/输出设备更新时,没必要重新编写全部设备驱动程序。
(三)I/O设备管理软件分层
中断处理程序
设备驱动程序
设备无关软件
用户级软件
(四)I/O软件层次结构及主要功能
(五)读取硬盘文件全过程
①与设备无关软件检查高速缓存中有无要读的数据块,若没有则调用设备驱动程序,向I/O硬件发出一个请求。
②用户进程阻塞并等待磁盘操作完成。
③当磁盘操作完成时,硬件产生一个中断,转入中断处理程序,中断处理程序检查中断原因,此时磁盘读取操作已完成。
④唤醒用户进程取回从磁盘读取的信息,结束此次I/O请求。
⑤用户进程在得到了所需硬盘文件内容后,继续运行。