浏览 354 次
|
该帖已经被评为新手帖
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-05-02
对于文件读写是依靠FDT(file directory table)和FAT(file allocation table)来定位某一个文件的。我的理解是:每一个目录下面都有一个FDT,记录本目下的子目录和文件(不知道是否准确),FDT不再是 FAT2后面的簇存放,原来有限制表项为256,所以一个目录下面只能存在256个文件或者目录,只有子目录也存在这样的 FDT,这样所有的FDT与FAT配合来寻址文件.
但是为什么文件大小限制为4G呢?文件寻址的单位是簇啊,fat32最大支持64扇区/簇,这样最大文件直可以达到 2^32 * 64 *512 ,为什么是4G呢?还是为了便于管理,故意设置最大支持4G 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2008-05-03
哎,又被罚分了!
这个贴是新手贴吗?感觉还是有点技术含量滴!以后要注意规则了 查了几天了,现在终于明白了。 在FDT表中最后一个表项记录文件大小,FDT每一个表项32bit,所以文件大小只能是4G了。 FAT32中 FAT表的高四位是保留的,所以最多能寻址的簇是2^28,上面讲错了。 虽然最多可能管理磁盘卷的大小是:2^28 * 64(一个簇最多的扇区数目) *512(一个扇区的大小) = 8T,但是windows只能管理32G |
|
| 返回顶楼 | |


