操作系统课件:第5章 设备管理_第1页
操作系统课件:第5章 设备管理_第2页
操作系统课件:第5章 设备管理_第3页
操作系统课件:第5章 设备管理_第4页
操作系统课件:第5章 设备管理_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 .4 4. 设备控制器:与设备是一对多的关系,系统是通设备控制器:与设备是一对多的关系,系统是通过它与设备通信过它与设备通信 系统系统设备控制器设备控制器 设备设备 如:磁盘设备,打印设备如:磁盘设备,打印设备 缺点:总线瓶颈,缺点:总线瓶颈,CPUCPU瓶颈。瓶颈。 操作操作P PRecordRecord计数计数内存地址内存地址WriteWrite0 00 08080813813WriteWrite0 00 014014010341034WriteWrite0 01 1606058305830WriteWrite0 01 130030020002000WriteWrite0 00 0250

2、25018501850WriteWrite1 11 1250250720720v 目的:组织管理、分配、释放目的:组织管理、分配、释放bufferbufferv 5.3.1 5.3.1 引入引入.1 1.缓和缓和CPUCPU和和I/OI/O设备间速度不匹配的矛盾。设备间速度不匹配的矛盾。如:计算如:计算打印打印bufferbuffer打印打印.2 2.减少对减少对CPUCPU的中断频率的中断频率如:如:bufferbuffer越大,越大,“bufferbuffer满满”信号发生频率越低。信号发生频率越低。.3 3.提高提高CPUCPU和和I/OI/O并行性并行性 v 5.3.2 5.3.2 单

3、缓冲单缓冲 由于由于C C和和T T可并行,可并行,M M和和C C或或M M和和T T不能并行,因此处理不能并行,因此处理一块数据时间:一块数据时间:Max(C,T)+MMax(C,T)+M 用户进程何时阻塞?用户进程何时阻塞?v 5.3.25.3.2双缓冲双缓冲 效率有所提高,且进一步平滑了传输峰值。效率有所提高,且进一步平滑了传输峰值。 系统处理一块数据的时间约为:系统处理一块数据的时间约为:MAX(C,T)MAX(C,T) 收发可双向同时传送。(图收发可双向同时传送。(图5 51313)v 5.3.3 5.3.3 循环多缓冲循环多缓冲类型:类型:R:R:空缓冲;空缓冲;G G:满缓冲;

4、:满缓冲;C C:当前缓冲:当前缓冲v nextnextg g:指示下一个应取数据的:指示下一个应取数据的bufbufv nextnexti i:指示下一个空:指示下一个空bufbuf. .v GetbufGetbuf: 取取nextnextg g对应缓冲区提供使用,将对应缓冲区提供使用,将NextNextg g置为空,置为空,NextNextg g= =(NextNextg g+1+1)Mod NMod N 将将NextNexti i对应缓冲区提供使用,将对应缓冲区提供使用,将NextNexti i置为满,置为满,NextNexti i= =(NextNexti i+1+1)Mod NMod

5、 Nv ReleasebufReleasebuf: : 若若C C满,则改为满,则改为G G; 若若C C空,则改为空,则改为R R;v NextNexti i 追上追上NextNextg g:表示输入速度表示输入速度 输出速度,全部输出速度,全部bufbuf满,这时输入进程满,这时输入进程阻塞阻塞v NextNextg g追上追上NextNexti i:输入速度输入速度 SPi SPi为为n n在输入中分配空间在输入中分配空间 设设备数据由输入备数据由输入bufbuf送输入送输入# # 生成生成输入请求表输入请求表挂输入请挂输入请求队列。求队列。 b.CPUb.CPU空空取请求表中的任务取请

6、求表中的任务, ,送进程缓冲区。送进程缓冲区。v (2 2)输出:(打印)输出:(打印) a.a.进程进程n n请求请求SPoSPo为为n n在输出在输出# #中分配空间中分配空间 将数将数据由进程据由进程bufbuf转到输出转到输出# # 生成一生成一打印请求表打印请求表挂打印请挂打印请求队列。求队列。 b.b.打印机空打印机空 查打印请求表中的任务查打印请求表中的任务 取输出取输出中对于数据中对于数据 输出输出bufbuf 打印打印v 1.1.提高提高I/OI/O速度:速度: 对低速设备操作对低速设备操作 变为对输入变为对输入/ /出出# #操作。操作。v 2.2.将独占设备改造为共享设备

7、将独占设备改造为共享设备 分配设备的实质时分配输入分配设备的实质时分配输入/ /出出# #v 3.3.实现了虚拟设备功能实现了虚拟设备功能v设备处理程序即是设备驱动程序。设备处理程序即是设备驱动程序。v设备驱动程序的功能和特点设备驱动程序的功能和特点v设备驱动程序的处理过程设备驱动程序的处理过程v 功能:功能: 接收进程的接收进程的I/O命令命令 检查命令合法性检查命令合法性 检查设备状态检查设备状态 设置设备工作方式设置设备工作方式 驱动驱动I/O操作操作 响应设备中断响应设备中断 构成通道程序构成通道程序v 特点:特点: 和硬件紧密相关、各个设备有自己的设备驱动和硬件紧密相关、各个设备有自

8、己的设备驱动v 包括包括 启动过程启动过程 中断处理过程中断处理过程v 启动过程启动过程 将抽象要求转化为具体要求将抽象要求转化为具体要求 检查检查I/O请求合法性请求合法性 读出和检查设备状态读出和检查设备状态 传送必要的参数传送必要的参数 设置工作方式设置工作方式 启动启动I/O设备设备v 流程流程 设备启动设备启动I/O完成完成发送中断发送中断CPU调用中断处理调用中断处理过程过程v 中断处理过程中断处理过程 唤醒被阻塞的唤醒被阻塞的驱动驱动程序进程程序进程 保护被中断进程环境保护被中断进程环境 转入相应的设备处理程序转入相应的设备处理程序 中断处理中断处理(特性特性) 恢复被中断进程的

9、现场恢复被中断进程的现场v 5.6.1 5.6.1 磁盘性能简述磁盘性能简述 一、数据组织和格式(图一、数据组织和格式(图5 52222) 磁道磁道扇区扇区字节字节 二、类型二、类型 1.1.固定头磁盘:固定头磁盘:每个磁道上有一个磁头,快每个磁道上有一个磁头,快 2.2.移动头磁盘:移动头磁盘:每个盘面仅有一个磁头,慢每个盘面仅有一个磁头,慢 v 三、磁盘访问时间:三、磁盘访问时间:v 1.1.寻道时间:寻道时间:T TS S=m=m* *n+Sn+Sm m:常量,:常量,n n:磁道数,:磁道数,s s:磁盘启动时间。:磁盘启动时间。v 2.2.旋转延时间旋转延时间TrTr:指定扇区旋转到

10、磁头下所需时间。指定扇区旋转到磁头下所需时间。设每秒设每秒r r转,则转,则TrTr1/2r1/2r(均值)(均值)v 3.3.数据传输时间数据传输时间TtTtb/rNb/rNb b:读写字节数:读写字节数N N:每道上的字节数:每道上的字节数访问时间:访问时间:Ta=Ts+1/2r+b/rNTa=Ts+1/2r+b/rNv 可见,由于特定磁盘,只有集中放数据,集中读写(可见,由于特定磁盘,只有集中放数据,集中读写(b b大)大)才能更好提高传输效率。才能更好提高传输效率。 v 目标:减少寻道时间目标:减少寻道时间v 一、一、FCFSFCFS(FisrtFisrt Come First Sec

11、ond Come First Second) 特点:简单,寻道时间长,相当于随机访问模式。特点:简单,寻道时间长,相当于随机访问模式。v 二、二、SSTFSSTF(最短寻道优先)(最短寻道优先)v 三、扫描算法。三、扫描算法。.1 1.进程进程“饥饿现象饥饿现象”SSTFSSTF存在。存在。.2 SCAN2.SCAN算法:算法: 在移动方向固定的情况下采用了在移动方向固定的情况下采用了SSTFSSTF,以避免饥饿现,以避免饥饿现象象 100道开始道开始被访问的下一被访问的下一个磁道个磁道移动距离移动距离5545583391918219072160701501038112184146平均寻道长度

12、:平均寻道长度:55.3100道开始道开始被访问的下一被访问的下一个磁道个磁道移动距离移动距离90105832553391638118201501321601018424平均寻道长度:平均寻道长度:27.5v 四、循环扫描四、循环扫描CSCANCSCAN(图(图9-59-5) 一个方向读完,不是象一个方向读完,不是象SCANSCAN那样回头,而是循环。那样回头,而是循环。 访问时间:访问时间:2T2TT+SmaxT+Smaxv 五、五、N NStepStepSCANSCAN和和FSCANFSCAN算法。算法。 .1 N1. NStepStepSCANSCAN 粘臂:由于连续对某磁道访问引起的垄

13、断访问,将磁粘臂:由于连续对某磁道访问引起的垄断访问,将磁盘请求队列分为长为盘请求队列分为长为N N的子队列的子队列m m个,如下图处理。当个,如下图处理。当N=1N=1时,为时,为FCFSFCFS。当。当N N时,为时,为SCAN.SCAN.v 2.FSCAN 2.FSCAN 100道开始,增加方向道开始,增加方向被访问的下一被访问的下一个磁道个磁道移动距离移动距离1505016010184249094583255339163811820平均寻道长度:平均寻道长度:27.8100道开始,增加方向道开始,增加方向被访问的下一被访问的下一个磁道个磁道移动距离移动距离150501601018424

14、18166382039155165839032平均寻道长度:平均寻道长度:27.5v 形式形式 逻辑上是磁盘、物理上是驻留在内存中的盘块逻辑上是磁盘、物理上是驻留在内存中的盘块 固定大小和可变大小固定大小和可变大小v 数据交付方式数据交付方式 数据交付指将磁盘高速缓存中的数据传送给请求者进程数据交付指将磁盘高速缓存中的数据传送给请求者进程 步骤:先查缓存、后查磁盘并更新缓存步骤:先查缓存、后查磁盘并更新缓存 方式:方式: 数据交付数据交付 指针交付指针交付v 置换算法置换算法 最近最久最近最久 访问频率访问频率 可预见性可预见性 数据一致性:将需要一致性的块放在替换队列的头部,数据一致性:将需

15、要一致性的块放在替换队列的头部,优先回写。优先回写。v 周期性回写磁盘周期性回写磁盘 例:例:msdos采用写穿透方式采用写穿透方式v 提前读提前读v 延迟写延迟写 访问频率高的磁盘块放在替换队列的尾部,减少回写访问频率高的磁盘块放在替换队列的尾部,减少回写次数次数v 优化物理块的分布优化物理块的分布 目的是减小磁头移动距离目的是减小磁头移动距离 簇分配方式:一个簇为多个连续的块簇分配方式:一个簇为多个连续的块v 虚拟盘(虚拟盘(RAM盘)盘) 和磁盘高速缓存区别:虚拟盘由用户控制;磁盘高速和磁盘高速缓存区别:虚拟盘由用户控制;磁盘高速缓存由系统控制。缓存由系统控制。v实现实现SSTFSSTF算法和算法和SCANSCAN算法算法v要求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论