第十一章 I/O 管理和磁盘调度 复习题 11
1 列出并简单定义执行I/O 的三种技术
·可编程 I/O:处理器代表进程给 I/O 模块发送给一个 I/O 命令,该进程进入忙等待,等待操作的完成,然后才可以继续执行
·中断驱动 I/O:处理器代表进程向 I/O 模块发送一个 I/O 命令,然后继续执行后续指令,当 I/O 模块完成工作后,处理器被该模块中断
如果该进程不需要等待 I/O 完成,则后续指令可以仍是该进程中的指令,否则,该进程在这个中断上被挂起,处理器执行其他工作
·直接存储器访问(DMA):一个 DMA 模块控制主存和I/O 模块之间的数据交换
为传送一块数据,处理器给 DMA 模块发送请求,只有当整个数据块传送完成后,处理器才被中断
2 逻辑 I/O 和设备 I/O 有什么区别
·逻辑 I/O:逻辑 I/O 模块把设备当作一个逻辑资源来处理,它并不关心实际控制设备的细节
逻辑 I/O 模块代表用户进程管理的一般I/O 功能,允许它们根据设备标识符以及诸如打开、关闭、读、写之类的简单命令与设备打交道
·设备 I/O:请求的操作和数据(缓冲的数据、记录等)被转换成适当的I/O 指令序 列、通 道命令和控制器命令
可以使 用缓冲技术,以提 高使 用率
3 面 向块的设备和面 向流 的设备有什么区别
请举 例 说 明
面 向块的设备将 信 息 保 存在块中,块的大 小 通 常 是固 定的,传输 过 程中一次 传送一块
通 常 可以通 过 块号 访问数据
磁盘和磁带 都 是面 向块的设备
面 向流 的设备以字 节流 的方 式 输 入输 出数据,其末 使 用块结 构
终 端 、打印 机 通 信 端 口 、鼠 标和其他指示 设备以及大 多 数非 辅 存的其他设备,都属 于 面 向流 的设备
4 为什么希 望 用双 缓冲区而 不