B+树在NTFS文件系统中的应用

flyfish 2015-7-6

卷(volume)

NTFS的结构首先从卷開始。

卷相应于磁盘上的一个逻辑分区,当你将一个磁盘或者磁盘的一部分格式化成NTFS,卷将被创建起来。

一个磁盘能够有一个卷或好几个卷.NTFS独立的处理每个卷。

卷相应的就是C盘,D盘,E盘等。

簇(cluster)

在一个NTFS卷中,簇的大小,或者说簇因子(cluster factor),是在磁盘管理程序MMC载入件格式化该卷的时候建立起来的。默认的簇因子随着卷大小的不同而不同,但它是物理扇区的整数倍。并且总是2的幂。(1个扇区,2个扇区,4个扇区,8个扇区)以此类推。

簇因子被表示成一个簇中的字节数,比方512字节 1KB或者2KB。

硬盘的读写以扇区为基本单位。NTFS的读写以簇为基本单位。

NTFS在内部仅仅引用到簇一级,NTFS使用簇作为它的分配单位,从而保持它与物理扇区大小之间的独立性。

逻辑簇号(Logical Cluster Number。LCN)

LCN是从一个卷的開始直到结束的全部簇的一个编号。

NTFS依赖于逻辑号(LCN)来引用物理位置。

获取物理磁盘地址方法

LCN乘以簇因子。从而得到卷上的物理字节偏移量。

虚拟簇号(Virtual Cluster Number。VCN)

VCN对同属一个文件的全部簇进行编号,从0到m。NTFS依赖于虚拟簇号(VCN)来引用一个文件内部的数据。

VCN不必是物理上连续的。它们能够被映射到该卷上的不论什么LCN编号。

主文件表(Master File Table)

MFT是NTFS卷结构的核心所在。

涉及到B+树。

结构例如以下

B+树在NTFS文件系统中的应用-LMLPHP

引用自《深入解析Windows操作系统》

05-26 01:15