磁盘碎片,更确切地应该称为文件系统碎片。按照引文(1)的linux官方资料,可分为外部碎片(external fragmentation)和内部碎片(internal fragmentation)。
内部碎片是怎么产生的呢?
我们知道,文件系统以簇(cluster)作为基本存储单位来组织数据的。假设簇大小为4KB,一个大小不足1KB的文件也至少要分配一个簇,即4KB的空间,这就浪费了大约3KB的磁盘空间,产生了3KB的内部碎片。这就是windows文件属性中的占用空间,包含内部碎片的空间。如果将簇大小设为1Byte,那不就不会产生碎片了吗?理论上这是正确的,然而一则簇通常是扇区大小(一般为512Byte)的倍数,磁盘一般按照物理扇区进行数据读写,所以这是不现实的。二则由于物理磁盘访问次数剧增,这会严重影响文件系统I/O性能。因此,文件系统设计都要在内部碎片和性能之间进行权衡,以取得时间和空间上的整体最佳。内部碎片主要是造成磁盘空间的浪费,并且无法进行碎片整理,windows的磁盘碎片整理功能所整理的碎片不是这个碎片,而是外部碎片。
外部碎片又是怎么产生的呢?
外部碎片就是我们通常所说的windows碎片整理下的概念,它主要影响性能。外部碎片应该称为文件碎片,是由于文件被分散保存到整个磁盘的不同地方,而不是连续地保存在磁盘连续的簇中形成的。文件碎片一般不会在系统中引起问题,但文件碎片 过多会引起系统性能下降,严重的还要缩短硬盘寿命,还有可能导致存储文件的丢失。FAT文件系统非常容易产生文件碎片,这与文件系统所使用的数据结构有关。对于FAT来说,使用的是链式的结构来记录一个文件所使用的簇。这种方式有助于文件的动态增长,但却产生了碎片的问题。所有的文件都连续存放,因此只要任何一个文件大小变化,就可能产生碎片。于是很快磁盘就会变成很混乱,访问效率就会变低了。而对于ntfs,linux的ext2/3文件系统来说,它们采取在整个磁盘上存储文件,尽量保持单个文件连续存放。因此不易产生文件碎片,也就不需要碎片整理,只在文件系统利用率接近饱和时才需要,但一般情况下是不会发生的。
小结一下:
1、windows系统下需要进行文件碎片整理,并且是对于FAT文件系统来说的,NTFS一般不需要。
2、linux文件系统不需要进行文件碎片整理,估计也没人实现这样的工具。当然对FAT文件系统整理是一个例外。
3、文件碎片整理是对外部碎片来说的,内部碎片无法进行整理。
( Aiguille.LIU / 刘爱贵, aigui.liu@gmail.com)
参考文献:
[1] http://www.linux.org/docs/ldp/howto/Partition/appendix.html#fragmentation
linux官方网站对碎片的解说
[2] http://geekblog.oneandoneis2.org/index.php/2006/08/17/why_doesn_t_linux_need_defragmenting
这篇文章通俗易懂地解说了为什么linux不需要碎片整理以及windows为什么需要碎片整理
分享到:
相关推荐
关于磁盘碎片整理的问题,曾经困扰很多用户,怎么样才能一次性整理所有的磁盘分区呢?这里向大家提供这样一个很好的小工具,批量磁盘碎片整理的批处理小程序。
磁盘碎片整理Disk Defragmenter能够整理您的SD卡来增加手机的性能,完美地适用于多种文件系统,如FAT32和NTFS。碎片整理是一个过程,旨在提高访问速度,通过重新排列文件存储在磁盘上佔用连续的存储位置。它也能提高...
磁盘碎片是导致电脑速度变慢和不稳定的主要原因,免费软件IObit SmartDefrag能够最有效的帮助你轻松整理碎片。它拥有独特的“安装后自动运行”以及碎片智能诊断技术,无需任何设置和人为操作,就能够全自动运行。...
磁盘碎片整理程序磁盘碎片整理程序磁盘碎片整理程序
稳定快速磁盘碎片整理工具,稳定快速磁盘碎片整理工具,稳定快速磁盘碎片整理工具(本人亲测绝对好用)
减少磁盘碎片。 电脑用久了会变得越来越慢,其中最大的一个原因是硬盘在不断的文件新增、删除、覆盖过程中产生大量的磁盘碎片而导致读写速度变得缓慢。这时,磁盘碎片整理就成了一个非常重要的维护操作了!
Smart Defrag(磁盘碎片清理)是一款专业的碎片整理程序,软件可以使用户的碎片整理操作不再复杂而变得简单轻松。软件拥有自己所独特的“安装后自动运行”以及碎片智能诊断技术,可以实现完全自动运行,无需人为的设置...
Linux没有Windows系统中发现的那种问题,这使得许多人认为磁盘碎片化根本不是一个问题。但是,这是不正确的。所有的文件系统随着时间的推移都趋向于碎片化。Linux文件系统减少了碎片 化,但是并没有消除。由于它不...
磁盘碎片整理绿色版,非常不错的!!!1
磁盘清理和磁盘碎片整理程序有什么区别
Linux与磁盘碎片整理 Linux与磁盘碎片整理
一款非常好用的磁盘碎片整理软件。有多种模式。
windows磁盘碎片整理程序源代码.zip
很好用的磁盘碎片整理的工具,速度较快,比系统自带的整理工具好用。
磁盘碎片指的是硬盘读写过程中产生的不连续文件。这些碎片因为不连续。读写的时候影响到速度,定期进行碎片整理才可以保持电脑的快速运行,有用过XP系统自带碎片整理工具的朋友都知道,碎片整理需要很长的时间。这款...
超小超快的磁盘碎片整理软件 系统自带碎片整理很慢,有了这个就不同了,速度快的没话说还很稳定很小
XP底下一键全面磁盘碎片整理 批处理脚本
磁盘碎片生成程序,内有详细使用说明文档!
清理Linux磁盘碎片.pdf
磁盘碎片整理,这个据我所知道最快的磁盘整理的软件,我也试过!确实很快!中文版的!因为好所以推荐给兄弟姐妹们!