无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 2453|回复: 45
打印 上一主题 下一主题

[求助] fat32如何突破4GB单个文件 的限制

[复制链接]
1#
发表于 2024-1-7 10:35:04 | 显示全部楼层
因为在设计fat32的时候,是基于32位编译器的,所以想把一切都设置的尽可能是32位的,否则显然会有效率降低。fat32目录项中会记录文件名,大小,起始地址,目录项中用了一个存储单元(32位/4byte)来表示文件的大小,2^32可以用来表示2*2^10*2^10*2^10个存储单元,计算机最小的存储单元是byte,所以这2^32可以表示2^32byte即是4Gb。当然这个文件大小和簇地址也是有关系的,簇地址的多少代表的是整个文件的大小,比如我如果用fat来存储文件簇链的信息,第一位存储簇使用信息,后面代表下一个簇的地址,那么如果是4kb的簇,我用2^31 位表示地址,那么整个文件就会超过4gb,所以我就不能用31位来表示簇地址,要有这个上限,剩下的作为保留位。对于整个文件系统来说可以很大,比如硬盘可以是几个t的,如果用32位来存储簇地址,每个簇4kb,那么文件系统最大就是16tb。但是微软将文件系统的卷大小设置上限为32gb,因为他们觉得这个可以接受。

作者:森森森
来源:知乎
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-12 04:14

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表