Ext3和Ext4文件系统区别

inode

http://www.cnblogs.com/itech/archive/2012/05/15/2502284.html

 

Ex3使用15个inode查询数据块,前12个为直接数据块,直接指向存储数据的数据块,接下来分别为一级间接块,二级间接块,三级间接块:

其中point本来也是数据块,现在拿来做数据块的索引使用,其中ext3的头文件定义为__u32i_block[EXT3_N_BLOCKS]

最大分区:无符号32位整数,block的范围为2^32,4G,按照每个block的size为4KB,所以为4G*4KB=16TB

最大文件:

前面直接指向12个数据块,一级间接块最大为block size/4,block size为数据块的大小,因为一个索引是4个字节,所以除以4,这样计算下来,

最大的文件可以使用的总块数为12+(block size/4)+(block size/4)^2+(block size/4)^3,设置block size为4KB,约为4T

 

Ext4

ext4使用48位的数据块索引空间,使用如下数据结构替代inode索引方式:

struct ext3_extent {
__u32 ee_block; /* first logical block extent covers */
__u16 ee_len;   /* number of blocks covered by extent */
__u16 ee_start_hi; /* high 16 bits of physical block */
__u32 ee_start; /* low 32 bigs of physical block */
};

这样查找数据的时候不是每个块都建立一个索引,而且使用连续的数据块,分别只是起始位置,以及连续的块数。

这样在大文件的时候,磁盘IO效率以及查找数据块效率上都有很大的提高。

 

理论上最大分区为2^48*4KB=1EB,目前由于工具限制只能使用16TB

http://os.51cto.com/art/201205/334497_2.htm

 

转载于:https://www.cnblogs.com/gsblog/p/3645678.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值