<操作系统:精髓与设计原理> I/O管理和磁盘调度
2017-04-30 11:12
369 查看
输入输出是 操作系统设计中最困难的部分 因为不同设备和它们的应用很难有一个 通用的 一致的解决方案
IO设备的三种类别 人可读 机器可读 通信
设备之间的差异很大
数据速率 数据传送速率可能会相差几个数量级
应用 设备用途对操作系统及其支撑设备的软件和策略都有影响
控制的复杂性 打印机需要相对简单的控制接口 磁盘控制接口更为复杂
传输单位 字节流 字符流传送(终端IO) 更大的块传送(磁盘IO)
数据表示 不同的设备使用不同的数据编码方式 包括字符编码 奇偶校验约定
错误条件 随着设备的不同 错误的性质 报告错误的方式 错误的后果 有效的响应范围 不尽相同
IO设计目标 效率和通用性
效率 与内存和处理器相比 大多数I/O设备速度都是非常低的
通用性 出于简单和避免错误的考虑 希望用一种统一的方式处理所有的设备 (处理器看待IO设备的方式 操作系统管理IO设备和IO操作的方式)
缓冲 在输入请求发出前就开始执行输入传送 并且在输出请求发出一段时间之后才开始执行输出传送
面向块的设备 将信息保存在块中 块的大小通常是固定的 传送过程中一次传送一块 可以通过块号来访问数据 (磁盘 USB智能卡)
面向流的设备 以字节流的方式输入输出数据 (终端 打印机 通信端口 鼠标)
磁盘调度
磁盘IO传送的时序 等待设备 等待通道 寻道 旋转延迟 数据传输
寻道时间 磁盘定位到磁道所需要的时间 将磁头臂移到指定磁道所需要的时间
旋转延迟 磁盘到达扇区开始位置的时间 将磁盘的待访问区域旋转到读写磁头所访问的位置所需要的时间
寻道时间和旋转延迟的总和为存取时间 就是达到读或写位置所需要的时间
传输时间 传输所需的时间 往磁盘传送或从磁盘传送的时间取决于磁盘的旋转速度
通过多个磁盘,多个独立的IO请求可以并行的进行处理
独立磁盘冗余阵列 RAID RAID是一组物理磁盘驱动器 操作系统把它视为单一的逻辑驱动器
RAID是多磁盘数据设计的标准方案 共7个级别 从0到6
磁盘高速缓存 一个磁盘高速缓存是内存中为磁盘扇区设置的一个缓冲区,它包含有磁盘中某些扇区的副本
IO设备的三种类别 人可读 机器可读 通信
设备之间的差异很大
数据速率 数据传送速率可能会相差几个数量级
应用 设备用途对操作系统及其支撑设备的软件和策略都有影响
控制的复杂性 打印机需要相对简单的控制接口 磁盘控制接口更为复杂
传输单位 字节流 字符流传送(终端IO) 更大的块传送(磁盘IO)
数据表示 不同的设备使用不同的数据编码方式 包括字符编码 奇偶校验约定
错误条件 随着设备的不同 错误的性质 报告错误的方式 错误的后果 有效的响应范围 不尽相同
IO设计目标 效率和通用性
效率 与内存和处理器相比 大多数I/O设备速度都是非常低的
通用性 出于简单和避免错误的考虑 希望用一种统一的方式处理所有的设备 (处理器看待IO设备的方式 操作系统管理IO设备和IO操作的方式)
缓冲 在输入请求发出前就开始执行输入传送 并且在输出请求发出一段时间之后才开始执行输出传送
面向块的设备 将信息保存在块中 块的大小通常是固定的 传送过程中一次传送一块 可以通过块号来访问数据 (磁盘 USB智能卡)
面向流的设备 以字节流的方式输入输出数据 (终端 打印机 通信端口 鼠标)
磁盘调度
磁盘IO传送的时序 等待设备 等待通道 寻道 旋转延迟 数据传输
寻道时间 磁盘定位到磁道所需要的时间 将磁头臂移到指定磁道所需要的时间
旋转延迟 磁盘到达扇区开始位置的时间 将磁盘的待访问区域旋转到读写磁头所访问的位置所需要的时间
寻道时间和旋转延迟的总和为存取时间 就是达到读或写位置所需要的时间
传输时间 传输所需的时间 往磁盘传送或从磁盘传送的时间取决于磁盘的旋转速度
通过多个磁盘,多个独立的IO请求可以并行的进行处理
独立磁盘冗余阵列 RAID RAID是一组物理磁盘驱动器 操作系统把它视为单一的逻辑驱动器
RAID是多磁盘数据设计的标准方案 共7个级别 从0到6
磁盘高速缓存 一个磁盘高速缓存是内存中为磁盘扇区设置的一个缓冲区,它包含有磁盘中某些扇区的副本
相关文章推荐
- 操作系统精髓与设计原理学习笔记九:IO管理和磁盘调度
- 操作系统精髓与设计原理--IO管理和磁盘调度
- <操作系统:精髓与设计原理> 文件管理
- <操作系统:精髓与设计原理> 单处理器调度 多处理器调度 实时调度
- <操作系统:精髓与设计原理> 进程描述和控制
- <操作系统:精髓与设计原理> 操作系统概述
- <<操作系统精髓与设计原理>>读书笔记(一) 并发性:互斥与同步(1)
- <操作系统:精髓与设计原理>分布式系统
- <操作系统:精髓与设计原理> 计算机系统概述
- <操作系统:精髓与设计原理> 内存管理
- 操作系统精髓与设计原理--单处理器调度
- <操作系统:精髓与设计原理> 嵌入式操作系统
- <操作系统:精髓与设计原理> 计算机安全
- <操作系统:精髓与设计原理> 线程
- 操作系统精髓与设计原理学习笔记八:单处理器调度
- <操作系统:精髓与设计原理> 虚拟内存
- 操作系统精髓与设计原理--多处理器和实时调度
- 操作系统精髓与设计原理--并发性:互斥和同步(2)
- 操作系统精髓与设计原理(原书第6版)——学习笔记(2)
- 操作系统精髓与设计原理--线程,对称多处理和微内核