F2FS的GC策略

F2FS的GC策略

F2FS 主要以两种方式执行GC操作,即 foreground gcbackground gc。当空闲section不足时,F2FS会触发 foreground gc,而内核会周期性唤醒 background gc 进程,在系统空闲时回收空间。

F2FS 的 background gc 也不是随时随地都能触发成功的,background gc 被周期性唤醒后会检查系统是否处于空闲并且没有挂起的状态(这个状态下面第2点有介绍),如图1所示,7次 background gc 中只有3次被触发成功。
在这里插入图片描述
文献【1】指出,仅在以下三种情况会成功触发 background gc:

  1. 设备连着充电线,用户没有使用设备;
  2. 设备息屏之后,进入睡眠的挂起状态之前,中间存在一个时间空隙,这时系统被闲置,而且没有连接充电线;
  3. 运行某些app的时候,例如YouTube或Google Map,因为这些应用产生的IO较少,系统被认为是空闲的。

F2FS 执行 gc 时的选择 victim 算法包括: Greedy算法Cost-Benefit 算法以及新增的 ATGC

Greedy算法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值