第十一章I/O管理和磁盘调度厦门大学软件学院吴清强操作系统11
1I/O设备•I/O设备的三种类别–人可读:适用于同计算机用户之间的交互•打印机、显示器、键盘、鼠标–机器可读:适用于与电子设备通信•磁盘、磁带、传感器、控制器–通信:适用于与远程设备通信•数字线路驱动器、调制解调器•I/O设备的差异主要包括:–数据传送速率(见下页图)–支持的应用程序–设备控制的复杂性–数据传送单位(字节流、字符流、块)–数据表示(编码方式)–错误条件11
1I/O设备典型的I/O设备数据率11
2I/O功能的组织•三种I/O通信技术(P26图1
19)–可编程I/O–中断驱动I/O–直接存储器访问(DMA)5•I/O模块执行请求的动作,而非处理器
•I/O处理模块设置I/O状态寄存器中相应的位
•I/O处理模块不通知处理器,也不中断处理器
•处理器定期检测I/O模块状态,直到操作结束
处理器不断询问I/O模块的状态,严重降低了系统的性能
2I/O功能的组织611
2I/O功能的组织•当I/O模块准备好要交换的数据时,中断处理器
•处理器保存正在执行程序的上下文,然后开始进行中断处理
•没有不必要的等待
由于每个字的读写都需要通过处理器进行,消耗了大量的处理器时间
2I/O功能的组织•传送的为块数据
•传送完成时,产生中断
•处理器委托DMA模块,由该模块负责处理数据传送
•处理器不干预传送,而继续其它工作
可编程和中断驱动I/O缺点:•I/O传送速度受限于处理器测试设备和提供服务的速度
•处理器忙于管理I/O的传送工作
•处理器必须执行很多指令以完成I/O传送
2I/O功能的组织DMA配置:单总线,集成的DMA-I/O11
2I/O功能的组织DMA配置:单总线,分离的DMADMA配置:I/O总线11
2I/O功能的组织11
3操作系统设计问题设计目标•效率–和主存相比