分类: LINUX
2011-02-20 13:47:58
SIMFS文件系统很简单,由三部分组成:文件系统头部,Inode部分,以及数据块部分。其中头部主要包括文件系统标示,inode个数,块个数等信息,头部长度为一个块长度,既512Bytes。SIMFS只支持256个inode, 既最多可以创建256个文件。simfs的功能简单,紧紧添加了创建新文件功能。文件系统管理和格式化工具的源码可以参考后面的两部分。下面的代码给出了头和inode的定义。
#define SIMFS_INODE_SIZE 128 #define SIMFS_NAME_SIZE (SIMFS_INODE_SIZE - 12) #define SIMFS_BLK_SIZE 512 #define SIMFS_BLK_MASK 0x1FF struct simfs_head { char name[8]; int32_tinodenum; int64_tblknum; int64_tfsblks; int32_tinodesize; int32_tblksize; int64_tinodebitmap; int64_tblkbitmap; int64_tinodearray; int64_t blkarray; uint8_tzero[444]; }; struct simfs_inode { charname[SIMFS_NAME_SIZE]; uint32_tmode; int64_tdatablk; };
chinaunix网友2011-03-05 13:17:40
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com