且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《NTFS文件系统扇区存储探秘》——1.5 文件目录表FDT

更新时间:2022-06-26 05:16:23

本节书摘来自异步社区《NTFS文件系统扇区存储探秘》一书中的第1章,第1.5节,作者:宋群生 , 宋亚琼著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.5 文件目录表FDT

NTFS文件系统扇区存储探秘
操作系统为了管理磁盘上的目录和文件,在特定的扇区上建立了一个文件目录表FDT,它是由高级格式化程序FORMAT在格式化磁盘时建立的。

FAT16分区格式的FDT表占用固定的32个扇区,扇区地址紧跟在第2个FAT表之后。FAT32分区格式没有固定的FDT表,在第2个FAT表之后就是数据区DATA。目录名和文件名也作为数据对待,存放在数据区内。

两种分区格式都使用一个32字节长的“目录登记项”,来说明目录或文件的有关特性。FAT16分区的目录登记项存放在FDT表里,FAT32分区的目录登记项存放在数据区里。表1-5列出了目录登记项的各字段内容。
《NTFS文件系统扇区存储探秘》——1.5 文件目录表FDT

表1-5将一个目录登记项的32字节划分为8个字段,下面对其中比较重要的字段进行分析。

第1段是文件名,占用8字节。如果一个文件名不足8字节,则不足的部分填充空格,文件名与扩展名中间的圆点忽略。

第2段是文件扩展名,同样遵守上述规定,不过扩展名不足3个字符的情况较少。

第4段对FAT16和FAT32两种文件系统有所不同,FAT32因为需要管理大于16位的簇,所以将簇的高16位存储在这个字段中,低16位的存储位置与FAT16相同。

第7段是文件的起始簇号,FAT文件系统一系列的寻址过程都是由此开始的。

第8段用一个双字记录文件的字节长度。