您好,欢迎来到六九路网。
搜索
您的当前位置:首页FAT32和NTFS文件系统碎片化研究

FAT32和NTFS文件系统碎片化研究

来源:六九路网
FAT32和NTFS⽂件系统碎⽚化研究

我们在谈论FAT32⽂件系统的缺点时,常会提到碎⽚化这个词,它是指⼀个⽂件在硬盘中存储的位置并不连续,⽽分散地存于硬盘中,当我们需要读取这个数据时,硬盘要在不同区域中将其提取合并后,再交由系统处理。对于机械硬盘来说,每读取⼀个碎⽚就意味着磁头需要摆臂到不同的位置上,因此,碎⽚化越严重的⽂件系统,执⾏效率也就越低。FAT32的碎⽚化不仅体现在其数据本⾝在存储时可能被分解为多个碎⽚分散存储于硬盘不同的区域中,就连其⽬录结构也是这样离散的,因此对FAT32分区做过数据恢复的⼈,都会感觉到使⽤R-Studio这类⼯具展开FAT32分区时(尤其是⽂件数量很多的FAT32分区)会异常缓慢。

我们知道,数据在⽂件系统中存储时,⼤致都分为⽬录区域和数据区域,事实上,任何⼀个⽂件系统,对于数据本⾝的碎⽚化都⽆法有效避免,因为这样需要在每次对数据进⾏编辑后都要将其整体搬运到硬盘的某个新地址中保存,这样⼀来会增加硬盘的读写负担从⽽降低系统的运⾏效率。⽽对于⽬录区来说,却有⼿段可以 避免其过度碎⽚化。

FAT32之所以碎⽚化严重,是由于它并没有将数据区和⽬录区刻意分开,⽽是混在⼀起,它在格式化时,将数据区中第⼀个簇留给了根⽬录,⽽数据则从第⼆个簇开始写⼊,如果⼀个簇的空间不够记录所有的根⽬录⽂件,那么FAT32会在数据区另辟空间来继续存储根⽬录,同样,⼦⽬录也是这样,所有FAT32的⼦⽬录都是在数据区中单独开辟区域写⼊的,然后根⽬录与⼦⽬录通过地址双向绑定的⽅式互为记录。同时,FAT32对于⽬录区的使⽤规则执⾏“第⼀可⽤原则”,即只要前边的⽬录被删除了,新⽂件就可以马上占⽤这个位置,因此,即使连续存⼊的⽂件⽬录,也可能保存在硬盘的不同位置上。这就是FAT32碎⽚化严重的原因所在,当我们需要建⽴FAT32的⽬录结构时,系统需要在硬盘不同的区域上反复读取,对于机械硬盘来说,执⾏效率⽆疑会⼤打折扣,因此数据恢复软件⽬录解析速度很慢。

NTFS则有效的解决了这种⽬录碎⽚化的弊病,NTFS在格式化时,从分区的7832号簇(或2号簇)开始,向后保留了分区容量的12.5%作为⽬录区($MFT)的专属空间,⽂件⽬录在这个区域连续向后存储。只有当硬盘存储空间不⾜时,才会临时征⽤$MFT的存储空间,当存储空间释放后,⽴即归还占⽤的空间。同时,NTFS对于⽬录区的使⽤遵循\"下⼀可⽤原则\",即除⾮⽬录区空间不⾜,否则新⽬录会持续向后写⼊⽽不马上占⽤已删除的⽂件⽬录。正是这两点特征,使得NTFS的⽬录解析效率⼤⼤提升。

但是NTFS对于巨⼤数量⽂件(数百万甚⾄上千万)的管理效率依然不尽如⼈意。这是因为如果$MFT的空间不⾜时,系统会在硬盘其他区域为$MFT分配新的空间,⽽⼀旦新的空间变多了,NTFS也会⾛上FAT32这种⽬录碎⽚化的道路。因此⼤型⽹站这种⽂件数量很⼤的存储环境中,很少有⼈采⽤ Windows和NTFS,⽽更倾向于EXT或者UFS这类效率更⾼的⽂件系统。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务