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

原创 2015年07月06日 18:00:41

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+树。

结构如下

这里写图片描述

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

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C/C++ Windows API——文件读写

// FileReadWriteDemo.cpp : 定义控制台应用程序的入口点。 //#include "stdafx.h" #include #include int main() { ...

NTFS文件系统英文翻译

  • 2015年03月23日 21:37
  • 142KB
  • 下载

NTFS文件系统恢复

  • 2013年09月13日 20:50
  • 346KB
  • 下载

分析NTFS文件系统内部结构

文章 原始出处 。http://dengqi.blog.51cto.com/5685776/1351300    上一篇文章《FAT32文件系统详解》中作者介绍了FAT32文件系统存储数据的...

NTFS文件系统研究

  • 2015年04月11日 11:26
  • 4.55MB
  • 下载

NTFS文件系统结构分析(2006年)

  • 2014年03月21日 00:29
  • 206KB
  • 下载

CentOS 7 下挂载NTFS文件系统 并实行开机自动挂载

Centos 7 下想要挂载NTFS的文件系统该怎么办呢? 我们需要一个NTFS-3G工具,并编译它之后在mount就可以了,就这么简单。 首先要进入官网下载NTFS-3G工具 http://ww...
  • tham_
  • tham_
  • 2014年12月09日 14:47
  • 1247

详解NTFS文件系统

 上篇在详解FAT32文件系统中介绍了FAT32文件系统存储数据的原理,这篇就来介绍下NTFS文件系统。NTFS、用过Windows系统的人都知道,它是一个很强大的文件系统,支持的功能很多,存储...
  • doitsjz
  • doitsjz
  • 2016年05月06日 11:00
  • 1381
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:B+树在NTFS文件系统中的应用
举报原因:
原因补充:

(最多只允许输入30个字)