NTFS通过MFT访问卷的过程如下

热度票  浏览18次 时间:2009年6月10日 09:42

NTFS通过MFT访问卷的过程如下

首先必须装载该卷——查看引导文件($Boot元数据文件),找到MFT的物理地址;
然后从文件记录的数据属性中获得VCN到LCN的映射信息,并存储在内存中。这个映射信息定位了MFT的运行(run或extent,见常驻属性与非常驻属性)在磁盘上的位置;
接着再打开几个元数据文件的MFT记录,并打开这些文件。此后,用户就可以访问该卷了。
NTFS将文件作为‘属性/属性值'的集合来处理。文件数据就是未命名属性的值。一个文件通常占用一个文件记录。但当一个文件具有很多项属性值或很零碎的时候,就可能需要占用一个以上的文件记录。这种情况下,第一个文件记录是其基本的文件记录,存储有该文件需要的其他文件记录的位置。小文件和文件夹将全部存储在文件的MFT记录里。
NTFS的文件夹只是一个简单的文件名和文件引用号的索引,如果目录列表小于一个记录的长度,那么,该文件夹的所有信息都存储在主文件表的记录中。对于大于记录的文件夹则使用B+树进行管理,并用一个指针指向一个外部簇,该簇用来存储那些MFT内存储不了的文件夹的属性。
大文件或大目录的所有属性,就不可能常驻在MFT中。如果一个属性太大而不能存放在只有1KB大小的MFT文件记录中,那么NTFS将从MFT之外为之分配区域。这些区域通常称为一个运行(run)或一个盘区(extent),它们可用来存储属性值,如文件数据。如果以后属性值又增加,那么,NTFS将回再分配一个运行,以便用来存储额外的数据。值存储在运行中而不是在MFT文件记录中的属性称为非常驻属性。
在标准属性中,只有可以增长的属性才是非常驻的。对文件来说,可增长属性有数据、属性列表等
 

TAG: NTFS
上一篇 下一篇

赞助商链接