4文件系统性能改善.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4文件系统性能改善,文件系统性能测试,文件系统性能,分布式文件系统性能,linux文件系统性能,文件系统,分布式文件系统,linux文件系统,文件系统的类型是raw,win10文件系统错误

4.6 文件系统性能改善 1. 高速缓存 减少磁盘访问次数最常用的技术是块高速缓存(block cache或者buffer cache)。 在管理高速缓存时,用到了不同的算法。 一个常用算法是:检查所有的读请求,看看所需的块是否在高速缓存中。如果在,无须访问磁盘便可进行读操作。如果块不在高速缓存中,首先要把它读到高速缓存,再拷贝到所需的地方。之后,对该块的读写请求都通过高速缓存完成。 如果高速缓存已满,此时要调入新的块,需要把原来的某一块调出高速缓存。如果要调出的块自上次调入以后作过修改,则需要把它写回磁盘。这种情况与分页非常相似,因此,所有的分页算法,例如FIFO算法、LRU算法等等都适用于高速缓存。 当分配块时,系统尽量把文件的连续块存放在同一柱面上,但加以交叉以获取最大吞吐量。 在使用i节点或者与i节点等价结构的系统中,另一个性能瓶颈在于,即使读取一个很短的文件也要访问两次磁盘:一次是读取i节点,另次是读取文件块。通常情况下,i节点的放置如图4.22(a)所示。 2.日志结构的文件系统 Berkeley学院设计了一种全新的文件系统,即日志结构的文件系统(log-structured file system,LFS),试图减轻这个问题。 本节我们简要地讲述一下LFS的工作原理,要了解更详细的内容,请参见(Rosenblum和Ousterhout,1991)。 3.文件系统可恢复性 由于磁盘速度远远低于内存与处理器的速度,磁盘读写就成为计算机整体速度的瓶颈。 常常通过使用缓存来改善性能。 不同的写操作方式直接影响着文件系统的可恢复性。 一致性和性能两个方面,来讨论文件系统的写入设计方式。 三种写入方式:谨慎写(careful write)文件系统、延迟写(lazy-write)文件系统和事务日志(transaction log)文件系统。 ⑴ 谨慎写文件系统 谨慎写是对写入操作进行逐个排序的写入方式。当收到一个更新磁盘的请求时,会首先按一定顺序完成几项子操作,然后再进行磁盘的更新。 例如,当为一个文件分配磁盘存储空间时,文件系统首先在它位图文件中设置位标记,然后再分配空间。在这个过程中如果磁盘发生中断,可能会出现文件系统的不一致,但是现有的数据不会被损坏。这样,通过运行专用的应用程序,在系统崩溃时所引起的卷错误是可以恢复的。 FAT文件系统使用类似的“通写”(write-through)技术,使得磁盘修改立即会写到磁盘上,而不需要把写操作排序以防止不一致性。 ⑵ 迟写文件系统 谨慎写虽然提供了对文件系统的可恢复性支持,但却是以牺牲速度为代价的。延迟写则通过利用“回写”(write back)高速缓存的方法获得了高速度。也就是说,系统只是把文件的修改写入高速缓存,然后在适当时候选用一种最佳方式把高速缓存的内容刷新到磁盘上。 计算机的磁盘操作一般都是比较低速的,使用延迟写技术大大减少了磁盘操作的频率,从而极大地改善了系统的性能。但是,在系统崩溃时极有可能导致严重的磁盘不一致性,甚至于无法进行文件系统的恢复,因而具有一定的风险。 ⑶ 可恢复文件系统 可恢复性文件系统试图既超越谨慎写文件系统的安全性,也达到延迟写文件系统的速度性能。可恢复性文件系统采用事务日志来实现文件系统的写入。 下面以NTFS为例,来简要讨论一下可恢复性文件系统。 NTFS通过基于事务处理模式的日志记录技术,成功保证了NTFS卷的一致性,实现了文件系统的可恢复性。 NTFS的可恢复性保证了卷结构不被破坏,从而保证了即使在系统失败时仍然可以访问所有的文件。 * 图4.22 i结点的位置与性能 i节点靠近磁盘开始位置 磁盘被分成多个柱面组 每组有自己的i节点 (a) (b) 另一种想法是:把磁盘分成多个柱面组,每个柱面组有自己的i节点、数据块和空闲表,如图5.21(b)(Mckusick et a1., 1984)。 在创建文件时,可以选取任一个i节点,分配块时,在该i节点所在的柱面组上进行查找。 如果该柱面组中没有空闲的数据块,就查找与之相邻的柱面组。 LFS设计的想法是:    CPU越来越快,RAM内存越来越大,磁盘高速缓存的容量迅速增加。因此,无需访问磁盘,从文件系统的高速缓存中就可能满足所有读请求。将来大多数磁盘访问是写操作。在大多数文件系统中,写操作都是以小块为单位进行的,效率很差。因为在50μs的写磁盘之前,需要有10ms的寻道延迟和6ms的旋转延迟。由于后者的存在,使得磁盘效率还不足1%。 *

文档评论(0)

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

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

1亿VIP精品文档

相关文档