- 论坛徽章:
- 0
|
从历史悠久的fat12分区说起......从古老的fat16 分区说起,当初我们用fdisk分区时最大只能一个分区2GB
虽然硬盘的最小物理寻址单位(physical block)为512字节,但对windows 98/dos而言是以簇(cluster)为单位(solaris叫逻辑块,logical block)对文件系统进行读写操作,一个簇最多可包含64个扇区(512KB×64=32KB)。而fat16(文件分配表16位)是16位的文件系统,使用2个字节(16位)来表示簇号,其寻址空间最大仅为16位,也就是说最多只能管理2的16次方个簇,因此:
操作系统所能支持的fat16文件系统最大空间=2的16次方×操作系统所支持的最大的簇的大小
<=win98:支持的簇最大为32KB,2的16次方×32KB=2GB
>=win2k:支持的簇最大为64KB,2的16次方×64KB=4GB
再讲fat32fat32用四个字节(32位)记录簇号,但最高4位留作它用,因此理论上最多可管理2的28次方个簇,其分区最高容量理论值可达2的28次方×64KB=16TB.但是...
首先,我们在windows中进行分区时(或者叫格式化分区时),如果"分配单位大小"选择"默认",则簇大小会根据分区大小自动进行调整:
分区大小 簇大小
<260MB 512 bytes
260MB 至 8GB 4 KB
6MB 至 16GB 8 KB
16 MB至 32GB 16 KB
>32 GB 32 KB
..........
无论是fat16 or fat32,单一文件都会遇到最大只能2GB or 4GB的限制,这是由于FAT的本身原始设计的问题。
最后讲ufs
- 终于到了ufs了,等急了不,看楼上briangao兄的讲解吧,哈哈:mrgreen::mrgreen::mrgreen:
复制代码
期待大家继续
[ 本帖最后由 yuhuohu 于 2007-11-20 15:50 编辑 ] |
|