深入了解磁盘碎片的产生,危害和整理

所属分类: 硬件教程 / 存储 阅读数: 77
收藏 0 赞 0 分享
几乎从硬盘诞生的时候开始,磁盘碎片的概念就产生了。最初的磁盘操作系统开发者设计了一个文件分配表,用来记录哪些文件储存在哪些扇区当中,这样就允许一个文件可以储存在不连续的扇区当中。

有了文件分配表,在操作系统上同一分区中移动文件时,不必移动储存在扇区中的数据,只需修改文件分配表中的链接就可以了,删除文件时也不必重写文件所在的扇区,只需将文件分配表中该文件所在的扇区标记为空就可以了。

这样的设计使得操作系统能够更有效的利用磁盘空间,不过与此同时,也衍生出了一个新的概念—磁盘碎片。
扇区:硬盘中储存数据的最小寻址单元,容量为512字节。后来又出现了簇的概念,它是扇区的扩展。

文件分配表(FAT):被广泛应用的组织和管理文件的文件系统。

(一)磁盘碎片的产生

接下来,我们将通过下图来了解两种磁盘碎片产生的典型过程。为了直观,我们将下面这幅硬盘结构图中的盘片部分简单的划分成3磁道共18扇区。我们不打算去考虑每个盘片有上千条磁道、每条磁道有上千个扇区的情况,也不考虑柱面的概念,忽略簇的概念,省略一切有碍理解的东西,用最简单的图,看清楚什么是磁盘碎片。

磁头:用于读取、写入、清除数据,是硬盘中技术含量最高的部件。在音圈马达的带动下可沿Z移动到各条磁道。

盘片:表面涂有可记录磁性的物质,用于存储数据。在这幅图片中,由灰色线将盘片划分成了3条磁道,每条磁道又划分出若干个单元格,这里每一个单元格代表一个扇区。

主轴:内有轴承、马达,可带动盘片高速旋转。

音圈马达:硬盘里的定位马达,类似于音频扬声器里所用的马达。

1、磁盘碎片产生的典型过程(例一)

图中,系统正在向硬盘中写入一个文件,名为“椰子”,该文件体积较大,需要占用5个扇区的空间,因此要完全写入到硬盘当中需要较长的时间。磁头从1号扇区开始顺时针方向写入文件,当2号扇区中的数据写入完时,硬盘接到了一条新的命令—写入文件“葡萄”,文件“葡萄”体积较小,只需占用1个扇区的空间,它被写入到了扇区3当中。

这样一来,由于3号扇区已经被占用,文件“椰子”剩下的数据就要从4号扇区开始写入,最后,剩下的数据被写入到了4至6号扇区。如图,由于“葡萄”的插队,文件椰子无法储存在连续的扇区当中,被分割开的这两段数据就被称为磁盘碎片。

2、磁盘碎片产生的典型过程(例二)

例一中的硬盘经过一段时间的使用之后,内部储存的文件发生了一些变化:一个新文件“西瓜”被写入到了硬盘当中,之后文件“葡萄”被删除了。

这时,硬盘接到了写入文件“桔子”的命令,“桔子”需要占用3个扇区的储存空间。如图,现在硬盘中共有两段不连续的可用空间,但任何一段单独的可用空间都不足以容纳整个“桔子”文件,不得已,“桔子”被拆分为两部分写入硬盘剩余的可用空间中,从而产生了磁盘碎片。

例一中的情况在下载大文件时十分常见,因为下载文件的过程不需要人为干预,所以一般人在下载文件的过程中都会做一些其它的事情。如:浏览网页、玩游戏等等。浏览网页的过程中浏览器会产生大量的“Internet 临时文件”,玩游戏的过程中游戏程序也可能会产生临时文件,或因内存不足导致操作系统改变了页面文件的大小,这些情况都可能如例一般影响下载中的文件,产生磁盘碎片。实际使用中往往一部电影文件被下载到硬盘中之后会有数千个磁盘碎片。

例二中的情况是在删除了旧文件、添加新文件时发生的。通常情况下,系统会在对文件来说足够大的第一个连续可用空间上存储文件。如果没有足够大的可用空间,系统会将尽可能多的文件保存在最大的可用空间上,然后将剩余数据保存在下一个可用空间上。因此,除非拥有容量无限大的硬盘,否则,在有限的硬盘空间中进行添加和删除文件的操作就必然会有例二这种产生磁盘碎片的情况发生。当然,较实际需求大的硬盘空间可以减少这种情况的发生。

(二)磁盘碎片的危害

通常,磁盘碎片并不影响硬盘的正常工作,它的主要危害在于会降低硬盘的读写速度,不过当大量磁盘碎片存在于Windows的重要文件中时,也可能导致系统崩溃或数据丢失。磁盘碎片会降低硬盘读写速度的原因来自两个方面。

1、观察上图,当硬盘读取文件“橘子”时,磁头需划过图中的阴影区域,但其中有一部分并不是“橘子”所在的扇区,因此,和读取连续的文件比起来,读取碎片“橘子”时,硬盘增加了等待盘片旋转到指定扇区的潜伏期和磁头切换磁道所需的寻道时间。同理,在写入数据时,也会因无法将数据写入到连续的扇区中而降低速度。

2、操作系统会在内存中划分一部分区域作为缓存,有些硬盘也会为内置的缓冲区设置缓存功能,缓存的一项功能是“预取”:在硬盘读取完指定扇区的数据之后、接到系统的下一条指令之前,磁头接着读取相邻的若干扇区的数据并存入缓存中,如果系统接下来所需的数据正好就是相邻扇区的数据,那么便可以直接从缓存中读取而不用磁头再寻址,提高了访问速度。

缓存同样可以增加硬盘的写入速度。在实际生活中,一般的文件都会占用成千上万个扇区的空间,根据缓存“预取”的原理,如果硬盘中的文件完全没有磁盘碎片的话,那么“预取”的命中率就可以达到几乎100%,但因为有磁盘碎片,通常“预取”的命中率只在50%左右。

(三)整理磁盘碎片

既然知道了磁盘碎片的危害,接下来就是要了解如何去除磁盘碎片。要去除硬盘中已经存在的磁盘碎片,通常的做法是使用专门的磁盘碎片整理程序,它可以分析硬盘中的磁盘碎片,移动并合并碎片文件,使每个文件都可以占用硬盘上单独而连续的储存空间。

1、使用Windows的磁盘碎片整理程序

对于使用Windows系统的用户来说,进行磁盘碎片整理是很方便的,因为在Windows系统中自带了一个磁盘碎片整理程序,您可以通过开始菜单运行这个程序。该程序界面简单、使用十分方便,它和Windows系统的兼容性很好,而且免费,是大多数人的第一选择。它最大的缺点是整理磁盘碎片的速度较慢。

2、使用其它的磁盘碎片整理程序
除了使用Windows自带的磁盘碎片整理程序外,我们还可以选用其他软件公司开发的磁盘碎片整理程序,在整理磁盘碎片方面的能力是Windows的整理程序无法比拟的。
  脚本之家站长注:本文为网络收集,作者未知,如作者看到或者有知情者,请联系我们,并且提供相应的证明材料。我们将予以添加或者删除。谢谢支持。
更多精彩内容其他人还在看

USB设备失灵怎么办 USB设备不能用的几种常见解决方法

当WindowsXP用户正在玩游戏的时候,突然鼠标不能动了,然后用户将鼠标换个USB接口后完了一会又不能动了。这是怎么回事?按照下面的方法可将这种假象修复
收藏 0 赞 0 分享

固态硬盘玩游戏快吗 固态硬盘玩游戏的好处介绍

如今很多超级本均搭配SSD固态硬盘,给人的感觉是SSD固态硬盘电脑可以大幅提升电脑响应速度与缩短电脑开机时间,从而提升用户体验,不少电脑爱好者也非常关注固态硬盘玩游戏的体验方面。
收藏 0 赞 0 分享

win7固态硬盘优化技巧 6个固态硬盘优化方法

我们知道目前速度最快性能最好的硬盘就是固态硬盘了,不过就目前技术而言固态硬盘容量大小与价格相比都无法比拟普通机械硬盘,因此在使用有限容量固态,就应该学会如何优化固态硬盘。
收藏 0 赞 0 分享

硬盘坏了的原因分析 造成硬盘损坏的原因有哪些

硬盘作为电脑中的一个重要部件,很少出现问题.但万一出现了.将会是很麻烦的.因为里面有太多的资料了.现在我们来分析一下硬盘出现问题的原因及解决方法
收藏 0 赞 0 分享

固态硬盘SATA和mSATA有什么区别

固态硬盘SATA和mSATA区别是什么,我想给笔记本加装固态硬盘,但是选择固态硬盘的时候看有SATA接口的固态硬盘还有mSATA的固态硬盘,不知道如何选择
收藏 0 赞 0 分享

只需九招就可以让你的硬盘读取速度变快

硬盘读取速度慢怎么办?以下有网友针对硬盘慢给出了九大优化方法,供参考,对于提升硬盘的读取速度有一定的帮助,当然如果要体验最佳硬盘速度,如今的固态硬盘是不错的选择。
收藏 0 赞 0 分享

固态硬盘做系统盘和做缓存盘的区别是什么

固态硬盘做系统盘和做缓存盘有什么区别,我买了一块64GB的固态硬盘,想知道是直接将系统和游戏安装在固态硬盘上效果明显,还是用固态硬盘做缓存盘效果好。
收藏 0 赞 0 分享

什么是扩容卡 检测扩容卡的方法

一定要分清扩容卡,不要被JS给骗了
收藏 0 赞 0 分享

了解硬盘的正确使用与维护方法

作为电脑中最重要的元件,硬盘一旦坏了,这事情可就麻烦了。本文为大家介绍一下硬盘正确使用方法及维护技巧。
收藏 0 赞 0 分享

什么是硬盘虚拟化及操作系统与硬盘虚拟化关系

操作系统虚拟化位于操作系统的顶部。这种方式能极大的提升许多计算环境的服务器整合率和资源利用率。当用户使用虚拟化产品和解决方案时,操作系统虚拟化都与层相关。
收藏 0 赞 0 分享
查看更多