Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1611561
  • 博文数量: 292
  • 博客积分: 10791
  • 博客等级: 上将
  • 技术积分: 2479
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-20 21:06
文章分类

全部博文(292)

文章存档

2011年(31)

2010年(261)

分类: LINUX

2011-02-20 13:47:58

simfs文件系统

SIMFS文件系统很简单,由三部分组成:文件系统头部,Inode部分,以及数据块部分。其中头部主要包括文件系统标示,inode个数,块个数等信息,头部长度为一个块长度,既512BytesSIMFS只支持256inode, 既最多可以创建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;

};

 

阅读(3438) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-05 13:17:40

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com