操作系统课件第6章 输入输出系统.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 2. 最短寻道时间优先SSTF(Shortest Seek Time First) 图 6-31 SSTF调度算法 1. 扫描(SCAN)算法 1) 进程“饥饿”现象 SSTF算法虽然能获得较好的寻道性能, 但却可能导致某个进程发生“饥饿”(Starvation)现象。因为只要不断有新进程的请求到达, 且其所要访问的磁道与磁头当前所在磁道的距离较近,这种新进程的I/O请求必须优先满足。对SSTF算法略加修改后所形成的SCAN算法, 即可防止老进程出现“饥饿”现象。 6.8.3 基于扫描的磁盘调度算法 2) SCAN算法 图 6-32 SCAN调度算法示例 2. 循环扫描(CSCAN)算法 图 6-33 CSCAN调度算法示例 3. N-Step-SCAN和FSCAN调度算法 1) N-Step-SCAN算法 在SSTF、 SCAN及CSCAN几种调度算法中, 都可能出现磁臂停留在某处不动的情况, 例如,有一个或几个进程对某一磁道有较高的访问频率, 即这个(些)进程反复请求对某一磁道的I/O操作,从而垄断了整个磁盘设备。 我们把这一现象称为“磁臂粘着”(Armstickiness)。在高密度磁盘上容易出现此情况。 N步SCAN算法是将磁盘请求队列分成若干个长度为N的子队列,磁盘调度将按FCFS算法依次处理这些子队列。 而每处理一个队列时又是按SCAN算法,对一个队列处理完后,再处理其他队列。 当正在处理某子队列时,如果又出现新的磁盘I/O请求,便将新请求进程放入其他队列,这样就可避免出现粘着现象。 当N值取得很大时,会使N步扫描法的性能接近于SCAN算法的性能; 当N=1时, N步SCAN算法便蜕化为FCFS算法。 2) FSCAN算法 FSCAN算法实质上是N步SCAN算法的简化, 即FSCAN只将磁盘请求队列分成两个子队列。一个是由当前所有请求磁盘I/O的进程形成的队列,由磁盘调度按SCAN算法进行处理。在扫描期间,将新出现的所有请求磁盘I/O的进程, 放入另一个等待处理的请求队列。这样,所有的新请求都将被推迟到下一次扫描时处理。 * * * * * * * * * * * * * * * * * * * * * * * * * * 6.6.2 假脱机( SPOOLing)系统 20世纪50年代,为了缓和CPU的高速性与I/O设备低速性间的矛盾而引入了脱机输入、 脱机输出技术。 该技术是利用专门的外围控制机, 将低速I/O设备上的数据传送到高速磁盘上;或者相反。 假脱机是多道程序系统中处理独占I/O设备的一种方法,它是将一台物理I/O设备虚拟为多台逻辑I/O设备,这样就允许多个用户共享一台物理I/O设备。 1. SPOOLing技术 输入设备 外围机 磁盘 磁盘 磁盘 外围机 主机 磁盘 输出设备 由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说他们是在脱离主机的情况下进行的,所以称为脱机输入输出方式。 脱机I/O示意图 6.6.2 假脱机( SPOOLing)系统 事实上,当系统中引入了多道程序技术后,完全可以利用其中的一道程序,来模拟脱机输入时的外围控制机功能,把低速I/O设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时外围控制机的功能,把数据从磁盘传送到低速输出设备上。这样,便可在主机的直接控制下,实现脱机输入、 输出功能。 此时的外围操作与CPU对数据的处理同时进行, 我们把这种在联机情况下实现的同时外围操作称为SPOOLing (Simultaneaus Periphernal Operating On-Line),或称为假脱机操作。 1. SPOOLing技术 2. SPOOLing系统的组成 图 6-21(a) SPOOLing系统的组成 输出丼 输入丼 输入设备1 输入设备n 输出设备1 输出设备n 通道 通道 通道 … … 主机 输入进程 输出进程 组成:(1)输入丼和输出丼;(2)输入缓冲区和输出缓冲区; (3)输入进程和输出进程;(4)丼管理程序。 2. SPOOLing系统的组成 图 6-21(b) SPOOLing系统的工作原理 输入设备 输出设备 内存 丼管理程序 输入进程 输出进程 运行的作业 输入缓冲区1 输出缓冲区1 作业

文档评论(0)

文库创作者 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档