No.48412 作者:xwmlz 邮件:liuzhu@re-er.com.cn ID:103464 登陆:54次 文章数:68篇 最后登陆IP:222.210.192.17 最后登陆:2009/8/19 9:28:31 注册:2008/3/6 16:40:54 财富:639 发帖时间:2008/10/21 13:30:51 发贴者IP:222.210.207.56 标题:xwmlz:成都嵌入式培训-linux文件系统必须要掌握的基础知识(二)[转帖] 摘要:No.48412成都嵌入式培训-linux文件系统必须要掌握的基础知识(二)[转帖] 8、ext2文件系统 ext2文件系统的数据块大小一般为 1024B、2048B 或 4096B ext2文件系统采用的索引节点(inode): 索引节点采用了多重索引结构,主要体现在直接指针和3个间接指针。直接指针包含12个直接指针块,它们直接指向包含文件数据的数据块,紧接在后面的3个间接指针是为了适应文件的大小变化而设计的。 e.g: 假设数据块大小为1024B ,利用12个直接指针,可以保存最大为12KB的文件,当文件超过12KB时,则要利用单级间接指针,该指针指向的数据块保存有一组数据块指针,这些指针依次指向包含有实际数据的数据块, 假如每个指针占用4B,则每个单级指针数据块可保存 1024/4=256 个数据指针,因此利用直接指针和单级间接指针可保存 1024*12+1024*256=268 KB的文件。当文件超过268KB时,再利用二级间接指针,直到使用三级间接指针。 利用直接指针、单级间接指针、二级间接指针、三级间接指针可保存的最大文件大小为: 1024*12+1024*256+1024*256*256+1024*256*256*256=16843020 KB,约 16GB 若数据块大小为2048B,指针占4B,则最大文件大小为: 2048*12+2048*512+2048*512*512+2048*512*512*512=268,960,792 KB 约 268GB 若数据块大小为4096B,指针占4B,则最大文件大小为: 4096*12+4096*1024+4096*1024*1024+4096*1024*1024*1024=4,299,165,744 KB ,约 4TB 注: 命令 tune2fs -l /dev/sda5 可查看文件系统 ext2文件系统最大文件名长度: 255个字符 ext2文件系统的缺点: ext2在写入文件内容的同时并没有同时写入文件meta-data, 其工作顺序是先写入文件的内容,然后等空闲时候才写入文件的meta-data。若发生意外,则文件系统就会处于不一致状态。 在重新启动系统的时候,linux会启动 fsk ( file system check) 的程序,扫描整个文件系统并试图修复,但不提供保证。 9、ext3文件系统: ext3基于ext2的代码,所以磁盘格式与ext2相同,使用相同的元数据。 ext2文件系统无损转化为ext3文件系统: tune2fs -j /dev/sda6 日志块设备( Journaling block device layer,JBD)完成ext3文件系统日志功能。JBD不是ext3文件系统所特有的,它的设计目标是为了向一个块设备添加日志功能。 当一个文件修改执行时,ext3文件系统代码将通知JBD,称为一个事务(transaction)。发生意外时,日志功能具有的重放 ......
>>返回讨论的主题
|
老古网执行:31毫秒 最大:5186毫秒 查询6次
|
|