Operating Systems: Three Easy Pieces阅读笔记(四)FILE SYSTEM- VSFC&FSCK

来源:互联网 发布:vision软件怎么画图 编辑:程序博客网 时间:2024/06/13 19:38

very simple file system(VSFS)

superblock:
记录了系统的类型,inodes数量,data region数量,inodes的起始位置,还包含指向free block的指针
bitmap:
用位表示block的使用情况,0表示free,1表示in-used,用两个bitmap:
分别代表inodes和data region
inodes:
即index nodes,类似数组的形式存在inode table中,用inumber标识不同的inode,根据inode table的起始地址和inumber所代表的偏移量,可以计算出该inode所在的位置。inodes储存了关于文件的关键信息metadata,其中block中含有指向该文件所在block的指针。
当文件过大时,采用一个额外的间接指针指向另一个block,该block继续储存着该文件所在block的指针;另外一个办法是,用指针和长度表示文件所在block,但要求其分布需要是连续的。
data region:储存用户数据。如果是directory的话储存着用户名字->inodes 的对应关系

file system checker(FSCK)
采用环状队列的数据结构,在journal的superblock中有指向队首和队尾的指针。
call write() -> batch write() in memory caches -> write data to its final position -> log inode and bitmap ->commit ->check point ->free

0 0
原创粉丝点击