首页 > 解决方案 > MFT 记录中的最大数据运行字节数是多少?

问题描述

随着文件中片段数量的增加,您可以看到 MFT 记录中使用的字节数增加。正如预期的那样,它以 8 的增量增长,直到填满 1024 字节基本记录的每个最后一个字节,然后才拆分为第二条记录。乍一看,您可能期望答案是“1024 - headerlength”。

但是,随着第二条记录的增长,它不会使用该记录的每个字节。相反,它在 1016 处达到最高值,当它拆分为第三条记录时,留下 8 个字节的记录未使用(见下文)。如果我继续拆分运行,第三条记录也会拆分,再次拆分为 1016 而不是 1024。

NTFS 通常在处理 MFT 记录方面非常高效,这使得这种行为非常可疑。它闻起来像个虫子,尽管我想可能有一些模糊的原因是必要的。

但后来我开始尝试 4k MFT 记录 ( format /L)。并且基本记录和扩展记录总是使用完整的 4096 字节。

所以现在它看起来真的像一个错误。虽然我不确定这个错误是否是 1k 记录在 1016 处达到顶峰,或者 4k 记录没有在 4088 处达到顶峰。要么有充分的理由保留这些最终字节,要么没有,对吧?

除了浪费宝贵的资源之外,它还使计算 MFT 记录上的“可用”空间变得非常复杂。公式真的是“假设记录将增长到 MFT 记录大小,除非它是扩展记录,然后减去 8,除非它是 4k 记录,然后不做减法?” 或者这种行为是否意味着这里还有其他一些标准?有诀窍吗?

FWIW,这是拆分前的 1016 字节记录(如在磁盘编辑器中所见)。您可以看到属性标记的结尾 (FFFFFFFF 82794711),后跟 8 个空字节。尾随的 02 00 是 MFT 记录使用的 Updatebytes。下一次拆分后,这条记录的大小减少了一半。

    Offset    |  00 01 02 03 04 05 06 07   08 09 0A 0B 0C 0D 0E 0F |      ASCII       
------------------------------------------------------------------------------------------------
  00C8788400  |  46 49 4C 45 30 00 03 00   E2 2F 31 C5 11 00 00 00 | FILE0..../1.....
  00C8788410  |  2F 00 00 00 38 00 01 00   F8 03 00 00 00 04 00 00 | /...8...........
  00C8788420  |  51 31 00 00 00 00 8F 00   01 00 00 00 21 1E 02 00 | Q1..........!...
  00C8788430  |  02 00 11 01 00 00 00 00   80 00 00 00 B8 03 00 00 | ................
  00C8788440  |  01 00 00 00 00 00 00 00   00 00 00 00 00 00 00 00 | ................
  00C8788450  |  3E 08 00 00 00 00 00 00   40 00 00 00 00 00 00 00 | >.......@.......
  00C8788460  |  00 F0 83 00 00 00 00 00   62 EB 83 00 00 00 00 00 | ........b.......
  00C8788470  |  62 EB 83 00 00 00 00 00   41 01 80 F0 9E 03 11 01 | b.......A.......
  00C8788480  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788490  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87884A0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87884B0  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C87884C0  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87884D0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87884E0  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C87884F0  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788500  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788510  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788520  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788530  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788540  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788550  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788560  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788570  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788580  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788590  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87885A0  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C87885B0  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87885C0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87885D0  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C87885E0  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87885F0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 02 00 | ................
  00C8788600  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788610  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788620  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788630  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788640  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788650  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788660  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788670  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788680  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788690  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C87886A0  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87886B0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87886C0  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C87886D0  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87886E0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87886F0  |  FF 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788700  |  11 01 FF 11 01 FF 31 01   32 A1 FE 11 01 FF 21 01 | ......1.2.....!.
  00C8788710  |  3A FE 11 01 FF 21 01 C3   F8 11 01 FF 21 01 BD FB | :....!......!...
  00C8788720  |  11 01 FF 11 01 FF 21 01   52 FD 11 01 FF 11 01 FF | ......!.R.......
  00C8788730  |  11 01 FF 21 01 A5 A9 11   01 FF 21 01 A2 EF 11 01 | ...!......!.....
  00C8788740  |  FA 11 01 F9 11 01 FF 11   01 FF 11 01 FF 11 01 FD | ................
  00C8788750  |  11 01 FF 11 01 FB 11 01   FF 11 01 F2 11 01 FB 11 | ................
  00C8788760  |  01 FC 11 01 FD 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C8788770  |  FD 11 01 FF 11 01 FF 11   01 FF 11 01 FF 11 01 FF | ................
  00C8788780  |  11 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C8788790  |  01 FF 11 01 FF 11 01 FF   11 01 FF 21 01 F4 FE 21 | ...........!...!
  00C87887A0  |  01 01 FF 11 01 FF 11 01   FF 11 01 FF 11 01 FF 11 | ................
  00C87887B0  |  01 FF 11 01 FF 11 01 FF   21 01 FD FE 11 01 FF 11 | ........!.......
  00C87887C0  |  01 FF 11 01 FF 11 01 FF   11 01 FF 11 01 FF 11 01 | ................
  00C87887D0  |  FF 11 01 85 11 01 FF 11   01 FB 11 01 FF 11 01 FF | ................
  00C87887E0  |  11 01 FF 11 01 FB 42 1F   07 3A 3D C5 01 00 00 00 | ......B..:=.....
  00C87887F0  |  FF FF FF FF 82 79 47 11   00 00 00 00 00 00 02 00 | .....yG.........

标签: 64-bitntfswindows-10-desktopntfs-mft

解决方案


推荐阅读