IO管理和磁盘调度解析

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2、机器可读

3、通信

设备的分类
按传输速率分 低速设备:每秒几个到数百字节。如调制 解调器 中速设备:每秒数千到数万字节。如打印 机 高速设备:每秒数百 K 到数兆。如磁盘、 磁带
I/O 设备的差别
数据率

数据传送率可能会差别几个数量级
I/O 设备的差别
应用



用于文件操作的磁盘需要文件管理软件的支 持 在虚拟存储方案中,磁盘用作页面调度的后 备存储器,取决于虚存硬件和软件的使用 终端被普通用户使用和系统管理员使用可能 具有不同的特权级别,从而在OS中有不同的 优先级
操作系统设计问题
Generality(通用性)


为了简单性和避免错误,往往希望能用一种 统一的方式处理所有的设备 使用一种层次化的、模块化的方法设计I/O功 能,在低层例程中隐藏大部分设备I/O的细节, 使得用户进程和操作系统高层可以通过一些 通用的功能,如read, write, open, close, lock, unlock等来查看I/O设备
缓存cache和缓冲buffer的异同
相同之处:都是为了弥补速度差异,都位于相对较快的设 备上,容量相对较小 不同之处: Cache要考虑局部性,重复使用 Buffer有写“化零为整”和预读的作用(write sequencing and read prefetching) Cache中的内容在低速设备中一定还有一份,从而要考虑 同步,相对的Buffer要考虑flush

处理器代表进程给I/O模块发送一个I/O命令,该进程 进入忙等待,等待操作的完成,然后才可以继续执行 处理器代表进程发送一个I/O命令,然后继续执行后续 指令,当I/O模块完成工作后,处理器被该模块中断。 如果该进程不需等待I/O完成,后续指令可以是该进 程中的指令 否则,这个进程在这个中断上被挂起,处理器执行其 他工作

处理器使用没有中断的程序控制I/O 处理器不需要处理外部设备接口的具体细节 又称忙--等待方式
输入输出功能的发展
中断驱动I/O :控制器或 I/O 模块采用了中断 处理器不再需要花费时间等待执行一个 I/O操 作
DMA控制方式 :I/O模块通过DMA直接控制存储 器


从主存中移出或往主存移入一块数据,不需要处理器 参与 仅仅在传送开始和结束时需要用到处理器
I/O 设备的差别
控制的复杂度 传送单位

数据可以按照字节流或者字符流的形式传送(如终端 I/O),也可以按照大块传送(如磁盘I/O) 数据编码方案,包括字符代码和奇偶约定的差异 错误的本质、报告的方式、后果以及响应随设备的不 同而不同
数据表示

错误条件

I/O功能的组织
常见的三种I/O控制技术: 程序控制 I/O
I/O 管理 和磁盘调度
Chapter 11
主要内容
教学目标与要求


理解I/O控制方式。 掌握I/O缓冲技术 掌握磁盘存储器的管理
教学重点与难点

缓冲技术,磁盘调度
I/O 设备的种类
1、人可读的

适合与计算机用户通信,如:打印机,终端( 显示 器 ,键盘 , 鼠标 ) 适合与电子设备通信,如磁盘驱动器, 传感器, 控 制器, 执行器 适合与远程设备通信,如数字线路驱动器, 调制解 调器
DMA机制的配置方法
周期挪用技术导致处理器执行得更慢 通过DMA和I/O功能集成起来,可以大大 的减少所需要的总线周期的数目 DMA 模块和一个或多个I/O模块之间除了 系统总线还存在着路径
DMA
DMA
DMA
操作系统设计问题
Efficiency(效率)




与主存和处理器相比,大多数 I/O 设备都是 非常慢速的 使用多道程序设计,可以允许一些进程在等 待I/O操作时另一些进程正在执行 交换技术用于将额外的就绪进程加载到内存, 使得处理器保持忙状态,但交换本身是一个 I/O操作 I/O 设计的主要任务是提供I/O的效率
一种I/O 组织的 模型
I/O 缓冲
速度的差异问题

计算机系统中的各种设备(包括中央处理机)的运行速 度差异甚大, CPU的运行速度是以纳秒计,而设备的 运行速度则是以毫秒甚至以秒计; 有时处理机进行大量的计算工作,没有 I/O操作,有 时又会进行大量的 I/O 操作,这两个极端都会造成系 统中的一些设备过于繁忙,一部分设备过于空闲,严 重地影响CPU与外设的并行工作。
直接存储器访问DMA
取代处理器控制系统,在系统总线上从存储器 中或者往存储器中传送数据 周期挪用技术用于在总线上传送数据

为了使数据能够传送,挂起一个指令周期,即CPU 暂停一个总线周期 不需要保存进程上下文
整块数据传送过程中没有中断发生

DMA
DMA工作流程



请求读/写操作的信 号 相关的I/O设备地址 内存起始地址 读/写的字节数
输入输出功能的发展
I/O通道控制方式


I/O 模块被增强成一个单独的处理器,又专门为I/O 设计的指令集 I/O 模块有自己的局部存储器


I/O 模块本身就是一个计算机 也称作I/O处理器

பைடு நூலகம்
特点:是DMA方式的发展,它可进一步减少CPU的干预, 即把对一个数据块的 读(或写)为单位的干预,减 少为对一组数据块的读(或写)及有关的控制和管理 为单位的干预。同时,又可实现CPU、通道和I/O设备 三者的并行工作,从而更有效的提高了整个系统的资 源利用率。
中断驱动 I/O



直接存储器存取 (DMA)


DMA 模块控制主存和 I/O模块之间的数据交 换 为传送一块数据,处理器给DMA模块发请求, 只有当整个数据块传送结束后,处理器才被 中断
输入输出功能的发展
I/O功能的发展阶段: 处理器直接控制外围设备 程序控制I/O方式 :增加了控制器或 I/O 模块
负荷不均匀问题

缓存cache和缓冲buffer的异同
缓存(cache)是把读取过的数据 保存起来,重新读取 时若命中(找到需要的数据)就不要去读硬盘了,若没 有命中就读硬盘。其中的数据会根据读取频率进行组织 ,把最频繁读取的内容放在最容易找到的位置,把不再 读的内容不断往后排,直至从中删除。 缓冲(buffer)当存储速度快的设备与存储速度慢 的设 备进行通信时,存储慢的设备先把数据存放到buffer, 达到一定程度后,存储快的设备再读取buffer的数据, 在此期间存储快的设备CPU可以干其他 的事情。
相关文档
最新文档