• f2fs_nat_entry
    f2fs node address table entry, 可以认为是main area区域的node block的描述符。version?
    ino为node所对应的inode number,block_addr为node block的索引(这个索引是从CP区域开始计数吗?)
    f2fs_nat_entry的作用就是根据nid来查找对应的node block的块号,通过nid也可以确定其所属的ino, 进而找到对应的f2fs_inode

  • f2fs_nat_block
    node address table区域的一个block,一个f2fs nat block包含有NAT_ENTRY_PER_BLOCK个f2fs nat entry

  • nat_journal_entry
    用于记录一个f2fs nat entry日志,nid为node block id(从main area开始计数?)

  • nat_journal
    包含了NAT_JOURNAL_ENTRIES个nat_journal_entry

  • f2fs_sit_entry
    f2fs segment info table entry, 可以认为是对main area区域一个segment的描述符
    vblocks的低10位包含了一个segment中有效block的数目,高6位包含了segment的类型,node or data;mtime记录了segment的年龄,也就是子上次清理以来到现在的时间

  • f2fs_sit_block
    segment info table区域的一个block, 一个f2fs sit block包含有SIT_ENTRY_PER_BLOCK个f2fs sit entry

  • sit_journal_entry
    用于记录一个f2fs sit entry日志,segno为segment 的索引号

  • sit_journal
    包含了SIT_JOURNAL_ENTRIES个sit_journal_entry

  • f2fs_summary
    一个summary entry对应segment中一个4K大小的block.它主要用来描述main area区域的node segment。其中nid成员用于表示node block的id, version用于表示node的版本号?ofs_in_node为parent node的block index

  • summary_footer
    主要对f2fs_summary_block进行一些脚注说明,其中entry_type表示为SUM_TYPE_NODE/SUM_TYPE_DATA,可以看出一个segment要么是node,要么data

  • f2fs_summary_block
    包含了ENTRIES_IN_SUM(512)个f2fs_summary, 因此一个f2fs_summary_block与一个segment相对应。它既可以是对nat segment的summary描述,也可以是对sit segment区域的描述,通过union来指定。f2fs_summary_block的空闲区域会用来存放sit_journal或sit_journal;footer是对当前segment的注释

  • seg_entry
    是对segment的描述符(针对main area?);valid_blocks表示segment的有效block数目,cur_valid_map为有效block的bitmap;ckpt_valid_blocks为存储在cp区域的有效block数目,ckpt_valid_map为存储在cp区域的有效block的bitmap;type为segment的类型(cold data/hot data/cold node / hot node…);mtime为segment的最后修改时间

  • sit_info
    描述了整个segment info table 的信息(只针对main area?)

参考资料

  1. https://blog.csdn.net/sunwukong54/article/details/45669017
    f2fs的journal机制
    2.https://github.com/RiweiPan/F2FS-NOTES/blob/master/Outline.md

f2fs学习笔记 - 5. f2fs基本类图相关推荐

  1. f2fs学习笔记 - 2. f2fs基础实验环境搭建

    1.前言 本文主要记录如何搭建f2fs的环境,用于f2fs文件系统的学习.我们选用了f2fs第一个补丁提交前的内核版本:linux3.7.0.然后通过提取出f2fs的最小补丁来学习f2fs文件系统,这 ...

  2. f2fs学习笔记 -11. f2fs gc

    1.前言 GC分为前台GC和后台GC 2.总体流程 f2fs_fill_superstart_gc_thread(sbi)init_waitqueue_head(&sbi->gc_thr ...

  3. f2fs学习笔记 - 7. f2fs文件打开

    1. 前言 本文主要总结f2fs文件的打开过程,以touch test为例 2.打开文件总体流程 在打开文件时,获取了file描述符,创建了file, 而file->op_s来源于file所对应 ...

  4. f2fs学习笔记 - 6. f2fs初始化流程

    1.前言 初始流程主要包含f2fs文件系统初始化,以及f2fs文件系统mount 2. init_f2fs_fs init_inodecache 创建f2fs_inode_cache slab描述符 ...

  5. f2fs学习笔记 -10. f2fs fsync

    kernel:linux3.17 fs: f2fs初始版本 1.前言 本文主要记录f2fs fsync的流程. 2.总体流程 do_fsyncfget(fd)vfs_fsync(file, file- ...

  6. Redis运维和开发学习笔记-全书思维导图

    Redis运维和开发学习笔记-全书思维导图 图片过大,无法上传. 链接:https://pan.baidu.com/s/13pnEMBEdLgjZNOOEAuDvEQ 密码:qhch

  7. 数据治理专业认证CDMP学习笔记(思维导数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第11章数据仓库和商务智能篇...

    大家好,我是独孤风,一位曾经的港口煤炭工人,目前在某国企任大数据负责人,公众号大数据流动主理人.在最近的两年的时间里,因为公司的需求,还有大数据的发展趋势所在,我开始学习数据治理的相关知识. 数据治理 ...

  8. 数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第八章数据集成和互操作篇...

    大家好,我是独孤风,一位曾经的港口煤炭工人,目前在某国企任大数据负责人,公众号大数据流动主理人.在最近的两年的时间里,因为公司的需求,还有大数据的发展趋势所在,我开始学习数据治理的相关知识. 数据治理 ...

  9. Building Worlds In Unreal 学习笔记——03-06 地形贴图/地形材质/修正重复/近景位移

    Building Worlds In Unreal 学习笔记--03-06 地形贴图/地形材质/修正重复/近景位移 Lec03 地形贴图 Landscape Textures 1 Quixel Bri ...

最新文章

  1. FPS武器设计:丹威森500型左轮手枪的制作流程
  2. SAP Spartacus 服务器端渲染单步调试步骤之一:应用程序准备工作
  3. mysql从库应用负载_线上MySQL数据库高负载的解决思路--再次论程序应用索引的重要性...
  4. 1982:【19CSPJ普及组】数字游戏
  5. UE3 Lightmass 工具
  6. 汇编代码调用main和分配内存
  7. C语言学习笔记---strlen()函数和sizeof()函数
  8. 数学分析笔记—python基础语法
  9. 【CCCC】L2-029 特立独行的幸福 (25分),模拟题,set用法
  10. centos6.5最小化安装
  11. 机器学习第三回——正则化部分
  12. CSDN-markdown编辑器使用
  13. Hbase、Kudu和ClickHouse横向对比V2.0
  14. Oracle自增序列字段
  15. java实现ppt转图片、ppt转pdf
  16. UPC6615: Snuke Festival
  17. export default (imported as router) was not found_一篇文章搞定as四大用法
  18. 2022-2028全球及中国云端税务软件行业研究及十四五规划分析报告
  19. c/c++通过域名解析ip地址
  20. 中国科学院沈阳计算技术研究所考研问题

热门文章

  1. 绘图工具Origin Pro 2022在Win10系统下的安装使用
  2. 安卓系统安全学习小结(二)
  3. 我的世界java下载慢怎么办_MC国际版的下载教程
  4. 小队pkc++_骑士小队2人金属第一印象
  5. 计算机配置高低怎么看,电脑配置高低怎么判断的小技巧分享给大家
  6. Windows独享主机网站访问缓慢的原因和解决方法
  7. golang zip压缩/解压缩用法
  8. JAVA学习网址大全
  9. CVPR2018 CartoonGAN 解读
  10. [Place 30-51] IDELAYCTRL elements have been found to be associated with IODELAY_GROUP ‘CAMERALINK‘,