计算机操作系统 李翠霞 OS5_4.pptVIP

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(3) 循环扫描算法(CSCAN) 该算法规定磁头单向移动。例如,只有自里向外移动,当磁头移到最外的磁道并访问后,磁头立即返回到最里的欲访问磁道,亦即将最小磁道号紧接着最大磁道号构成循环,进行循环扫描。 访问柱面序列:98,183,37,122,14,124,65,67 读写头起始位置:53(且向磁道号增加方向移动) 磁道访问的顺序为:65,67,98,122,124,183,14,37 又如: 当磁道访问序列为55,58,39,18,90,160,150,38,184。 而磁头现在所在磁道号为100,且正向磁道号增加方向移动,访问的顺序如下表所示。 被访问的 下一磁道号 移动距离 (磁道数) 150 50 160 10 184 24 18 166 38 20 39 1 55 16 58 3 90 32 平均寻道长度:35.8 (3) NStepSCAN和FSCAN调度算法 (1)NStepSCAN算法 在SSTF、SCAN和CSCAN几种调度算法中,都可能会出现磁臂停留在某处不动的情况,例如,有一个或几个进程对某一磁道有较高的访问频率,即这个进程反复请求对某一磁道的I/O操作,从而垄断了整个磁盘操作。该现象称为 “磁盘粘着”(Armstickiness)。 N步SCAN算法是将磁盘请求队列分成若干个长度为N的子队列,磁盘调度算法将按FCFS算法依次处理这些子队列。当正在处理某子队列时又按SCAN算法。 (3) NStepSCAN和FSCAN调度算法 (2)FSCAN算法 FSCAN算法实质上是N步SCAN算法的简化,即FSCAN只将磁盘请求队列分成两个子队列。一个是由当前所有请求磁盘I/O的进程形成的队列,由磁盘调度按SCAN算法进行处理。在扫描期间,将新出现的所有请求磁盘I/O的进程,放入另一个等待处理的请求队列。 5.6.3 磁盘高速缓存 磁盘高速缓存的形式 数据交付方式 置换算法 周期性地写回磁盘 利用内存中的存储空间来暂存从磁盘中读出的一系列盘块中的信息。 5.6.3 磁盘高速缓存 磁盘高速缓存在内存中可分成两种形式: 在内存开辟一个单独的存储空间,其大小固定,不受应用程序多少的影响; 所有未利用的内存空间变为一个缓冲池,供请求分页系统和磁盘I/O时(作为磁盘高速缓存)共享。 数据交付方式 5.6.3 磁盘高速缓存 数据交付(Data Delivery)是指将磁盘高速缓存中的数据传送给请求者进程。当有一进程请求访问某个盘块中的数据时,由核心先去查看磁盘高速缓冲器,看其中是否存在进程所需访问的盘块数据的拷贝。若有其拷贝,便直接从高速缓存中提取数据交付给请求者进程,这样,就避免了访盘操作,从而使本次访问速度提高4~6个数量级;否则,应先从磁盘中将所要访问的数据读入并交付给请求者进程,同时也将数据送高速缓存。当以后又需要访问该盘块的数据时,便可直接从高速缓存中提取。   系统可以采取两种方式将数据交付给请求进程:   (1) 数据交付。这是直接将高速缓存中的数据,传送到请求者进程的内存工作区中。   (2) 指针交付。这是只将指向高速缓存中某区域的指针交付给请求者进程。   后一种方式由于所传送的数据量少,因而节省了数据从磁盘高速缓存到进程的内存工作区的时间。   3.置换算法   较常用的置换算法仍然是最近最久未使用算法LRU、最近未使用算法NRU及最少使用算法LFU等。   由于请求调页中的联想存储器与高速缓存(磁盘I/O中)的工作情况不同,现在不少系统在设计其高速缓存的置换算法时,除了考虑到最近最久未使用这一原则外,还考虑了以下几点: 访问频率 可预见性 数据的一致性   4.周期性地写回磁盘   还有一种情况值得注意: 那就是根据LRU算法,那些经常要被访问的盘块数据,可能会一直保留在高速缓存中,长期不会被写回磁盘。(注意,LRU链意味着链中任一元素在被访问之后,总是又被挂到链尾而不被写回磁盘;只是一直未被访问的元素,才有可能移到链首,而被写回磁盘。)例如,一位学者一上班便开始撰写论文,并边写边修改,他正在写作的论文就一直保存在高速缓存的LRU链中。如果在快下班时,系统突然发生故障,这样,存放在高速缓存中的已写论文将随之消失,致使他枉费了一天的劳动。   为了解决这一问题,在UNIX系统中专门增设了一个修改(update)程序,使之在后台运行,该程序周期性地调用一个系统调用SYNC。该调用的主要功能是强制性地将所有在高速缓存中已修改的盘块数据写回磁盘。一般是把两次调用SYNC的时间间隔定为30 s。这样,因系统故障所造成的工作损失不会超过30 s的劳动量。而在MS-DOS中所采用的方法是: 只要高速缓存中的某盘块数据被修改,便立即将它写回磁盘,并将这种高速缓存称为“写穿透、高速缓存”(w

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档