NTFS 数据区:文件存储和管理的核心要素 (ntfs 数据区)

NTFS(New Technology File System)是Microsoft开发的一种文件系统,用于Windows NT 系列操作系统。NTFS数据区是NTFS文件系统中用于存储文件和管理文件的核心要素。本文将从以下几个方面介绍NTFS数据区的核心要素及其作用。

一、文件存储

在NTFS文件系统中,文件存储在分配的磁盘区域中,这些区域被称为簇。在NTFS中,簇的大小可以根据需要进行调整。每个文件都占用一个或多个簇,取决于文件大小。对于小文件,NTFS采用MFT(Master File Table)项直接存储在MFT中,而对于大文件,则需要分配多个簇。此外,NTFS还针对大文件进行了优化,使用了文件分配表(FAT)以提高性能。

NTFS通过对簇的控制来实现对文件的大小和占用空间的精确管理。当文件大小不是簇大小的整数倍时,NTFS使用一个可以存储文件剩余部分的簇。此外,NTFS还支持压缩和加密功能,以进一步优化文件存储。

二、文件管理

NTFS数据区的另一个核心要素是文件管理。文件管理包括文件索引、文件安全、文件属性和文件压缩等。这些功能可以帮助用户更好地管理文件,并保护用户的隐私。

文件索引是NTFS中的一个重要功能,它使文件可以快速访问。NTFS使用B树索引结构,可以快速准确地定位文件。此外,NTFS还支持目录硬链接和符号链接,以帮助用户更好地组织文件和目录。

NTFS还通过访问控制列表(ACL)和权限来确保文件的安全性。ACL是一种将文件和文件夹访问权限分配给用户和组的机制。而NTFS权限控制则是根据用户的SID(Security Identifier)来进行管理的,这使得权限控制更加安全和可靠。

文件属性包括文件的创建时间、修改时间、大小、所有者和权限等信息。NTFS通过细粒度的文件属性来帮助用户更好地管理文件,并保护文件的安全。

NTFS还支持文件压缩功能,可以通过压缩文件来减少磁盘空间的占用。这对于存储大量数据的用户来说是非常有用的。

综上所述,NTFS数据区是NTFS文件系统的核心要素,通过文件存储和文件管理来为用户提供了更好的文件使用和管理体验。NTFS数据区的概念和机制在实际应用中非常重要,对于Windows系统的管理和维护都是非常有帮助的。

相关问题拓展阅读:

MBR区,DBR区,FAT区,DIR区和DATA区的区别

磁盘上的数据按照其不同的特点和作用大致可分为5部分:MBR区、DBR区、FAT区、DIR区和DATA区。我们来分别介绍一下:

(1)MBR区(主引导

扇区

MBR(Main Boot Record),按其字面上的理解即为

主引导记录

区,位于整个硬盘的0磁道0

柱面

1扇区。不过,在总共512字节的主引导扇区中,MBR只占用了其中的446个字节(偏移0–偏移1BDH),另外的64个字节(偏移1BEH–偏移1FDH)交给了DPT(Disk Partition Table

硬盘分区

表)(见下表),最后两个字节”55,AA”(偏移1FEH- 偏移1FFH)是分区的结束标志。这个整体构成了硬盘的主引导扇区。

主引导记录中包含了硬盘的一系列参数和一段引导程序。其中的硬盘引导程序的主要作用是检查分区表是否正确并且在系统硬件完成自检以后引导具有激活标志的分区上的操作系统,并将控制权交给启动程序。MBR是由分区程序(如Fdisk.com)所产生的,它不依赖任何操作系统,而且硬盘引导键哪册程序也是可以改变的,从而实现多系统共存。

偏移 长度 所表达的意义

0 字节 分区状态:如0–>非活动分区

80–> 活动分区

1 字节 该分区起始头(HEAD)

2 字 该分区起始扇区和起始柱面

4 字节 该分区类型:如82–> Linux Native分区

83–> Linux Swap 分区

5 字节 该分区终止头(HEAD)

6 字 该分区终止扇区和终止柱面

8 双字 该分区起始绝对分区

C 双字 该分区扇区数

下面,我们以一个实例让大家更直观地来了解主引导记录:

例:B FE BF FC 3FE 86 BB 00

在这里我们可以看到,最前面的”80″是一个分区的激活标志,表示系统可引导;””表示分区开始的磁头号为01,开始的扇区号为01,开始的柱面号为00;”0B”表示分区的系统类型是FAT32,其他比较常用的有04(FAT16)、07(NTFS);”FE BF FC”表示分区结束的磁头号为254,分区结束的扇区号为63、分区结束的柱面号为764;”3F”表示首扇区的相对扇区号为63;”7E 86 BB 00″表示总扇区数为。

(2)DBR区

DBR(Dos Boot Record)是操作系统引导记录区的意思。它通常位于硬盘的0磁道1柱面1扇区,是操作系统可以直接访问的之一个扇区,它包括一个引导程序和一个被称为BPB(Bios Parameter Block)的本分区参数记录表。引导程序的主要任务是当MBR将系统控制权交给它时,判断本分区跟目录前两个文件是不是操作系统的引导文件(以DOS为例,即是Io.sys和Msdos.sys)。如果确定存在,就把其读入内存,并把控制权 交给该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、

根目录

大小、FAT个数,分配单元的大小等重要参数。

(3)FAT区

在DBR之后缓好的是我们比较熟悉的FAT(File Allocation Table文件分配表)区。在解释文件分配表的概念之前,我们先来谈谈簇(cluster)的概念。文件占用磁盘空间时,

基本单位

不是字节而是簇。簇的大小与磁盘的规格有关,一般情况下,

软盘

每簇是1个扇区,硬盘每簇的扇区数与硬盘的总容量大小有关,可能是4、8、16、32、64……

通过上文我们已经知道,同一个文件的数据并不一定完整地存放在磁盘的一个连续的区域内,而往往会分成若干段,像一条

链子

一样存放。这种存储方式称为文件的链式存储。硬盘上的文件常常要进行创建、删除、增长、缩短等操作。这样操作做的越多,盘上的文件就可能被分得越零碎稿宏(每段至少是1簇)。但是,由于硬盘上保存着段与段之间的连接信息(即FAT),操作系统在读取文件时,总是能够准确地找到各段的位置并正确读出。不过,这种以簇为单位的存储法也是有其缺陷的。这主要表现在对空间的利用上。每个文件的最后一簇都有可能有未被完全利用的空间(称为尾簇空间)。一般来说,当文件个数比较多时,平均每个文件要浪费半个簇的空间。

好了,我们言归正传,为了实现文件的链式存储,硬盘上必须准确地记录哪些簇已经被文件占用,还必须为每个已经占用的簇指明存储后继内容的下一个簇的簇号,对一个文件的最后一簇,则要指明本簇无后继簇。这些都是由FAT表来保存的,表中有很多表项,每项记录一个簇的信息。

由于FAT对于

文件管理

的重要性,所以FAT有一个备份,即在原FAT的后面再建一个同样的FAT。初形成的FAT中所有项都标明为”未占用”,但如果磁盘有局部损坏,那么格式化程序会检测出损坏的簇,在相应的项中标为”坏簇”,以后存文件时就不会再使用这个簇了。FAT的项数与硬盘上的总簇数相当,每一项占用的字节数也要与总簇数相适应,因为其中需要存放簇号。FAT的格式有多种,最为常见和为读者所熟悉的是FAT16和FAT32,其中FAT16是指文件分配表使用16位数字,由于16位分配表最多能管理65536(即2的16次方)个簇,也就是所规定的一个硬盘分区。

由于每个簇的存储空间更大只有32KB,所以在使用FAT16管理硬盘时,每个分区的更大存储容量只有(65536×32 KB)即2023MB,也就是我们常说的2G。现在的

硬盘容量

是越来越大,由于FAT16对硬盘分区的容量限制,所以当硬盘容量超过2G之后,用户只能将硬盘划分成多个2G的分区后才能正常使用,为此

微软公司

从Windows 95 OSR2版本开始使用FAT32标准,即使用32位的文件分配表来管理硬盘文件,这样系统就能为文件分配多达(即2的32次方)个簇,所以在簇同样为32KB时每个分区容量更大可达65G以上。此外使用FAT32管理硬盘时,每个逻辑盘中的簇长度也比使用FAT16标准管理的同等容量逻辑盘小很多。由于文件存储在硬盘上占用的磁盘空间以簇为

最小单位

,所以某一文件即使只有几十个字节也必须占用整个簇,因此逻辑盘的簇单位容量越小越能合理利用存储空间。所以FAT32更适于大硬盘。

(4)DIR区(根目录区)

DIR(Directory)是根目录区,紧接着第二FAT表(即备份的FAT表)之后,记录着根目录下每个文件(目录)的起始单元,文件的属性等。定位文件位置时,操作系统根据DIR中的起始单元,结合FAT表就可以知道文件在硬盘中的具置和大小了。

(5)数据(DATA)区

数据区是真正意义上的数据存储的地方,位于DIR区之后,占据硬盘上的大部分数据空间。

请问硬盘分区的结构?

硬盘分区的主要结构说明:

(Cylinder柱面/磁道-Side磁头-Sector扇区地址以下简称为?-?-?)

《主分区》

名称 地址 长度(扇区)

主引导记录(Main Boot Record):

系统扇区(System Secotrs): 0-0-2,

引导扇卖芹区(Boot):

FAT16系统中,此扇区包含BPB(BIOS Parameter Block)表,描述逻辑盘结构组成,包含

隐空胡藏扇区数目(从0-1-1开始计算)、FAT扇区数、FAT拷贝数、硬盘磁头总数、根目录表项

更大值等。

FAT32系统中,BPB表的偏移与FAT16不同,但表项基本相同。整个隐藏扇区部分都作为逻辑

盘的描述区域。

隐藏扇区(Hidden Secotrs):

FAT

FAT

文件分配表(File Allocation Table):

FAT根据逻辑盘容量变化

FAT根据逻辑盘容量变化

说明:

FAT16的每个表项由2字节(16位)组成,通常每个表项指向的簇包含64个扇区,即32K字节。

逻辑盘容量更大为2023MB。

FAT32的每个表项由4字节(32位)组成,通常每个表项指向的簇包含8个扇区,即4K字节。

逻辑盘容量最小为2023MB。

对于C分区,在MBR的偏移01c2H处,FAT16为06H,FAT32为0CH。

*** 有关计算公式为:

每个扇区长度=512字节

总簇数=逻辑盘容量/簇容量

总簇数=FAT表长度(字节)/每个表项长度(字节)-2

FAT表长度=逻辑盘容量/簇容量*每个表项长度

FAT表的开始由介质描述符+一串“已占用”标志组成:

FAT16硬盘—-F8 FF FF 7F

FAT32硬盘—-F8 FF FF 0F FF FF FF 0F

每个有效的FAT结构区包含两个完全相同的拷贝:FAT1、FAT2

文件目录表(File Directory Table),即根目录区,又称为ROOT区:

紧跟在FAT2的下一个扇区,长度为32个扇区(256个表项)。如果支持长文件名,则每个表项

为64个字节,其中,前32个字节为长文件链接说明;后32个字节为文件属性说明,包括文件长

度、起始地址、日期、时间等。如不支持长文件名,则每个表项为32个字节的属性说明。

数据区(Data Area):

紧跟在FDT的下一个扇区,直到逻辑盘的结束地址。

《扩展分区》

名称 地址 长度(扇区)

扩展分区斗配拦(Extend Partition): ?-y-1 1

系统扇区(System Secotrs): ?-y-2,?-y-63 62

引导扇区(Boot): ?-(y+1)-1 1

其后各项与主分区相同……

扩展逻辑盘寻找说明:

1 在主分区的分区表中,寻找扩展分区的物理地址(道-头-扇)

2 在扩展分区地址所指扇区尾部,查找扩展分区表(扩展卷),结构与主分区表相同

3 扩展分区表的物理地址中,将磁头数加1,其余不变,则为之一个逻辑驱动器(如D盘)的BOOT扇

区物理地址

4 根据扩展驱动器的系统分类(FAT16/FAT32,以2023MB为界限),查看FAT表与ROOT区

5 如果还有E、F……等盘,则继续寻找符合要求的BOOT扇区,BOOT扇区规定在每个磁头的1号扇区

附录:分区表项结构说明

分区表自MBR扇区偏移01BEH开始,共4个分区,每个分区16字节;

之一个分区的结构如下:

偏移 值 说明

01BE 80 ;启动标志

01BF 01 ;分区开始的磁头号

01C0 01 ;分区开始的扇区号,低6位;柱面号,高2位

01C1 00 ;分区开始的柱面号,低8位

01C2 ?? ;分区类型,06=FAT16的C,0C=FAT32的C,05=扩展分区

01C3 ?? ;分区结束的磁头号

01C4 ?? ;分区结束的扇区号,低6位;柱面号,高2位

01C5 ?? ;分区结束的柱面号,低8位

01C6-01C9 ?? ;相关扇区数,通常为63

01CA-01CD ?? ;分区的总扇区数

分区表结束标志:

01FE 55

01FF AA

关于MS-DOS 6.xx以上版本的两个明显BUG的说明:

1 FDISK.EXE

在FDISK建立分区时,将对每个磁头的1号、7号扇区进行覆盖,填入512字节的F6;覆盖

区域范围从BOOT区开始,结束地址不详。

2 启动过程

在MS-DOS启动过程中(包括WINDOWS 9X启动的MS-DOS 7.XX),将搜索每个逻辑驱动器,

如果在扩展分区表中的某个逻辑盘的分区类型标志被病毒或其他因素(如王江民的KV???的

某个版本,为“惩罚”盗版……)改写为05H后,又将该分区指针指向硬盘头部的主引导记录,

那么……呵呵,你再看看你的硬盘还能启动吗?用软盘(MS-DOS 5.0以上版本)还能启动吗?

……要嘛改个字节,要嘛就用DOS 3.31(还找得到吗?)来启动……

分区算法:

Disk /dev/hda: 80.0 GB,bytes

255 heads, 63 sectors/track, 9729 cylinders

Units = cylinders of* 512 =bytes

Device Boot Start End Blocks Id System

/dev/hda1 * 7 HPFS/NTFS

/dev/hda86300 c W95 FAT32 (LBA)

/dev/hdaExtended

/dev/hda93118+ 83 Linux

/dev/hdaLinux

/dev/hda7153+ 82 Linux swap / Solaris

/dev/hdaLinux

/dev/hda87523+ 83 Linux

/dev/hda+ 83 Linux

ntfs 数据区的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于ntfs 数据区,NTFS 数据区:文件存储和管理的核心要素,MBR区,DBR区,FAT区,DIR区和DATA区的区别,请问硬盘分区的结构?的信息别忘了在本站进行查找喔。


数据运维技术 » NTFS 数据区:文件存储和管理的核心要素 (ntfs 数据区)