f2fs系列之八: 最全的SSA 总结

理解SSA的难点在于 SSA如何避免对SIT/NAT区域零星的写。这需要深入理解SSA 自身和相关的数据结构和协作关系。

data/node 根据数据冷热分区

分区的数据以log/journal 的形式落盘

每种类型当前写的segment/block 信息都记录在 内存cursegments 中

记录方式是 f2fs_summary_block , 这个数据结构里面包含f2fs_journal 信息,还有记录所管理的segment中的各个block 在parent node中的offset。

code data 的f2fs_jouranl
里面包含资源管理信息: sit journal 对应code/warm data (普通类型的文件)

hot data的f2fs_journal
包含新建立的indoe 信息: nat journal 对应 hot data (directroy 类型)

为了避免零星的写,cursgements中的数据一起写到SSA 区域

check point的时候,把内存中cursegment中sit/nat journal entry信息写回到NAT/SIT 区域。

(下面有空贴上相关数据结构和代码)

问题:

  • 写到SSA的区域的sit/nat journal entry信息是否落盘后IO才返回?还是说等page cache kdflush 刷下去?掉电会丢数据?只陈诺做个checkpoint之前的数据不会丢?

转载于:https://blog.51cto.com/xiamachao/2349631

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值