第四章设备管理.ppt

  1. 1、本文档共118页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.6.3 磁盘高速缓存 目前,磁盘的I/O 速度远低于对内存的访问速度,通常要低上4~6 个数量级。因此,磁盘的I/O 已成为计算机系统的瓶颈。 于是,人们便千方百计地去提高磁盘I/O 的速度,其中最主要的技术便是采用磁盘高速缓存(Disk Cache)。 Disk Cache 工作原理 当用户进程请求从磁盘读入一个扇区时,系统首先在disk cache中寻找该扇区的副本 - 如果能够找到,那么系统将从disk cache中取出该扇区的副本并返给用户进程; - 否则,系统首先从磁盘上读入该扇区并在disk cache中为其建立一个副本,然后将该副本返给用户进程。 当用户进程请求修改磁盘的一个扇区时,系统同样首先在disk cache中寻找该扇区的副本 - 如果能够找到,那么系统将根据用户进程的请求修改该扇区的副本; - 否则,系统同样首先从磁盘上读入该扇区并在disk cache中为其建立一个副本,然后根据用户进程的请求修改该副本。 1)磁盘高速缓存的实现形式 指利用内存中的存储空间,来暂存从磁盘中读出的一系列盘块中的信息。高速缓存在内存中可分成两种形式: 第一种是在内存中开辟一个单独的存储空间来作为磁盘高速缓存,其大小是固定的; 第二种是把所有未利用的内存空间变为一个缓冲池,供请求分页系统和磁盘I/O时(作为磁盘高速缓存)共享。此时高速缓存的大小,显然不再是固定的。 2)数据交付方式 系统可以采取两种方式, 将数据交付给请求进程: (1) 数据交付。这是直接将高速缓存中的数据, 传送到请求者进程的内存工作区中。 (2) 指针交付。只将指向高速缓存中某区域的指针, 交付给请求者进程。 后一种方式由于所传送的数据量少,因而节省了数据从磁盘高速缓存存储空间到进程的内存工作区的时间。 3)置换算法 如同请求调页(段)一样,在将磁盘中的盘块数据读入高速缓存时,同样会出现因高速缓存中已装满盘块数据而需要将该数据先换出的问题。 因此必然存在着采用哪种置换算法的问题。较常用的置换算法仍然是最近最久未使用算法LRU、最近未使用算法NRU及最少使用算法LFU等。 4)周期性地写回磁盘 在UNIX系统中专门增设了一个修改(update)程序, 使之在后台运行,该程序周期性地调用一个系统调用SYNC。 SYNC的主要功能是强制性地将所有在高速缓存中已修改的盘块数据写回磁盘。一般是把两次调用SYNC的时间间隔定为30 s。 5)磁盘高速缓存的特点 容量较大; 常存储全局范围、经常访问的重要数据:文件系统的目录、文件分配表、索引块等; 对于高档的服务器而言,大的硬件缓存更能提高磁盘I/O的性能。但是,若磁盘机和磁盘控制器上没有缓存,那么,就需要依靠磁盘高速缓存的作用。 5.6.4 提高磁盘I/O速度的其它方法 1 ).提前读(Read-Ahead) 2).延迟写 3).优化物理块的分布 4).虚拟盘 1 ).提前读(Read-Ahead) 预先读方式,即在读当前块的同时,还要求将下一个盘块(提前读的块)中的数据也读入缓冲区。 当下一次要读该盘块中的数据时,便可直接从 缓冲区中取得下一盘块的数据,而不需再去启动磁盘I/O,从而提高了磁盘I/O 的速度。 “提前读”功能已被广泛采用,如在UNIX 系统、OS/2,以及在3 Plus 和Netware等的网络OS中,都已采用该功能。 2).延迟写 延迟写是指在缓冲区A中的数据,本应立即写回磁盘,但考虑到此数据在不久之后可能还会再被本进程或其它进程访问(共享资源),因而并不立即将该缓冲区A 中的数据写入磁盘,而是将它挂在空闲缓冲区队列的末尾。 随着空闲缓冲区的使用,缓冲区也缓缓往前移动,直至移到空闲缓冲队列之首。 2).延迟写 当再有进程申请到该缓冲区时,才将该缓冲区中的数据写入磁盘,而把该缓冲区作为空闲缓冲区分配出去。 当该缓冲区A仍在队列中时,任何访问该数据的进程,都可直接读出其中的数据而不必去访问磁盘。这样,又可进一步减小等效的磁盘I/O时间。 “延迟写”功能已在UNIX系统、OS/2等OS中被广泛采用。,“延迟写”功能已在UNIX系统、OS/2等OS中被广泛采用。 3).优化物理块的分布 另一种提高磁盘I/O 速度的重要措施是优化文件物理块的分布,使磁头的移动距离最小。 对文件盘块位置的优化,应在为文件分配盘块时进行。 措施:尽量将同属于一个文件的盘块安排在同一条磁道上或相邻的磁道上。 若将分散到多个柱面或磁道上的文件进行类似内存分配过程中的碎片整理(紧凑),使这些文件在物理上连续存储,则能提高文件的读/写性能,减少寻道时间和平均旋转延迟,从而提高整个系统效的效率,减少磁盘的机械损耗。 因此,人们经常使用MS-DOS、Windows等操作系统提

文档评论(0)

allap + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档