繁体   English   中英

FAT结构有多大,文件有多大?

[英]How large does the FAT structure and how large is the file?

考虑基于 FAT 的文件系统的以下参数: 块为 8KB(213 字节)大 FAT 条目为 32 位宽,其中 24 位用于存储块地址 A. FAT 结构需要多大才能容纳 1GB (2^30 字节)磁盘? B. 来自 (A) 部分的 FAT 结构支持的最大理论文件大小是多少?

A. FAT 结构需要多大才能容纳 1GB(2^30 字节)的磁盘?

FAT 文件系统将空间分成簇,然后有一个表(“簇分配表”或 FAT),每个簇都有一个条目(说明它是否空闲、有故障或哪个簇是簇链中的下一个簇) )。 要计算“集群分配表”的大小,将卷的总大小除以集群的大小(以确定“集群分配表”中有多少个集群和多少条目),然后乘以一个的大小条目,然后可能四舍五入为集群大小的倍数(取决于您想要的答案 - 实际大小或消耗的空间)。

B. 来自 (A) 部分的 FAT 结构支持的最大理论文件大小是多少?

支持的最大文件大小由以下任一者决定(以较小者为准):

  • 文件目录项中“文件大小”字段的大小(FAT32 为 32 位,因此为 4 GiB); 或者

  • 空间总大小减去隐藏/保留/系统区、集群分配表、目录和故障集群占用的空间。

对于使用 FAT32 格式化的 1 GiB 卷,最大。 文件的大小将由后者决定(“总空间 - 文件不可用的区域总和”)。

请注意,如果您有一个 1 GiB 磁盘,这可能(例如)被分成 4 个分区,而 FAT 文件系统可能会被分配一个只有 1 GiB 空间的分区。 即使“整个”磁盘只有一个分区,通常(假设“MBR 分区”而不是较新的“GPT 分区”,后者需要更多空间用于分区表等),分区从第二个磁道(第一磁道)开始为 MBR、分区表和可能的“引导管理器”“保留”)或稍后的轨道(例如,将分区的开头与“4 KiB 物理扇区大小”对齐并避免由“512 个逻辑扇区大小”引起的性能问题)。

换句话说,磁盘的大小与用于 FAT 的卷大小几乎没有关系。 当问题只告诉您磁盘的大小而没有告诉您分区/卷的大小时,您无法提供准确的答案。

您可以做的是在答案中清楚地说明您的假设,例如:

我假设一个“1 GB”磁盘是 1000000 KiB(1024000000 字节,而不是 1 GiB 或 1073741824 字节,而不是 1 GB 或 1000000000 字节);我假设 1 MiB (1024 KiB) 的磁盘空间被消耗分区表和 MBR 以及所有剩余空间都用于单个 FAT 分区;因此 FAT 卷本身是 998976 KiB。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM