f2fs 与 FTL 协同与 xfs B+tree 与日志

共 20 题
#

1. f2fs(Flash-Friendly File System)在 SSD/eMMC/UFS 的 LFS(log-structured)写入设计?

A f2fs 原地覆盖写入
B f2fs 用 LFS 只追加写入匹配闪存特性,减少随机写与写放大 ✓ 正确答案
C LFS 与闪存无关
D f2fs 面向磁盘设计
#

2. f2fs 的 NAT 与 SIT,node 地址表与 segment 信息表如何组织两级元数据,崩溃后如何从 checkpoint 恢复一致?

A NAT 映射 node 到物理地址,SIT 管理 segment 有效块,checkpoint 作为一致性锚点崩溃后恢复 ✓ 正确答案
B NAT 与 SIT 是同一张表
C checkpoint 与元数据无关
D 崩溃后无法恢复
#

3. xfs 的空闲空间管理,为何同时维护按块号(bno)与按长度(cnt)两棵 btree,分配与合并如何利用它们?

A 两棵树是完全重复的
B 空闲空间只用一棵树
C btree 与分配性能无关
D bno 树便于按地址合并,cnt 树便于按大小分配,双树分别服务回收与分配 ✓ 正确答案
#

4. f2fs 的"checkpoint"同步化写入与 discard(TRIM)的协同?

A discard 与 checkpoint 无关
B checkpoint 提供一致性边界,discard 在一致状态下安全回收无效物理块 ✓ 正确答案
C checkpoint 只用于读
D discard 会破坏一致性
#

5. f2fs 的 segment 回收(GC)与 FTL 的垃圾回收如何两级协同,为什么文件系统层 GC 能显著降低写放大?

A f2fs 层 GC 感知文件有效性,精确回收失效块,减少搬移从而显著降低写放大 ✓ 正确答案
B 两级 GC 相互独立无协同
C FTL 层 GC 比文件系统层更高效
D 文件系统 GC 无法降写放大
#

6. xfs 在线 defragmentation 与 metadata scrub 的工程价值?

A 在线 defrag 整理碎片、scrub 在线校验元数据,均可在挂载状态下进行,减少停机 ✓ 正确答案
B 这两者都需要卸载文件系统
C scrub 只检查数据不检查元数据
D defrag 会破坏文件
#

7. f2fs 在 Android 存储的 open-channel SSD 的工程价值?

A open-channel 会增大写放大
B open-channel 与 f2fs 无关
C f2fs 无法利用开放通道
D open-channel 让文件系统直接控制数据放置,f2fs 用日志结构精确对齐闪存,降低写放大提升寿命 ✓ 正确答案
#

8. f2fs multi-head logging 与 zoned namespace(ZNS)SSD 的协同?

A ZNS 支持随机写,无需顺序
B f2fs 无法用于 ZNS 设备
C multi-head 与 ZNS 无关
D multi-head 按热度/类型分离写入并顺序对齐,天然匹配 ZNS 的顺序追加约束,减少写放大 ✓ 正确答案
#

9. xfs 的 B+tree(btree)分配与日志(journal)的工程价值?

A journal 只用于数据不用于元数据
B xfs 不用 B+tree
C B+tree 提供高效元数据组织,journal 保证元数据变更的崩溃一致性 ✓ 正确答案
D 两者互斥
#

10. f2fs 的 FTL 协同,闪存友好布局与段(segment)回收如何结合?

A 布局与闪存无关
B 段布局对齐闪存擦除块,GC 回收有效块少的段,减少 FTL 搬移降低写放大 ✓ 正确答案
C f2fs 不做 GC
D 段回收会增大写放大
#

11. FTL 的映射,逻辑页到物理页的映射与垃圾回收(磨损均衡)如何实现?

A GC 不在 FTL 内
B FTL 不做地址映射
C 磨损均衡与寿命无关
D FTL 映射逻辑页到物理页,GC 回收无效页,磨损均衡让擦除均匀以延长寿命 ✓ 正确答案
#

12. xfs 延迟日志(delayed logging)如何把多次元数据修改合并成一次事务提交,崩溃恢复时如何保证一致性?

A 延迟日志丢失事务
B 延迟日志做不了合并
C 延迟日志把多次元数据修改合并为一次提交,只重放完整事务保证一致性 ✓ 正确答案
D 崩溃恢复必然损坏元数据
#

13. f2fs 的 SSR(slack space reuse),为何允许复用旧 segment 的剩余空间,与纯 LFS 相比如何降低写放大?

A SSR 复用旧段剩余空间,减少对空白段依赖与 GC 搬移,降低写放大 ✓ 正确答案
B SSR 会强制整段回收
C SSR 与纯 LFS 相同
D SSR 增大写放大
#

14. xfs 的 allocation groups(AG)在多磁盘并行写入的工程价值?

A AG 只有一个
B AG 是相对独立的分配单元,多 AG 减少锁竞争,提升多磁盘与多核并行性能 ✓ 正确答案
C AG 只能用于单磁盘
D AG 与并行无关
#

15. xfs 的 reverse mapping(rmap)在 fsck 速度的工程改进?

A rmap 记录物理块到 inode 的反向引用,让 fsck 直接比对映射,加快检查 ✓ 正确答案
B rmap 会降低 fsck 速度
C rmap 与 fsck 无关
D rmap 只用于读
#

16. f2fs 的闪存友好布局,segment/zone 与多日志如何组织?

A 布局与闪存无关
B 多日志只有一条
C segment/zone 对齐闪存几何,多日志按热度分离写入,减少污染助 GC 低写放大 ✓ 正确答案
D segment 与 GC 无关
#

17. xfs 的 B+tree 与日志,延迟日志与元数据 CRC 如何配合?

A 两者互斥
B CRC 只用于数据不用于元数据
C 延迟日志会丢数据
D 延迟日志合并提交提升性能,元数据 CRC 检测静默损坏增强可靠性 ✓ 正确答案
#

18. FTL 的磨损均衡与坏块管理?

A 磨损均衡让擦除均匀以延长寿命,坏块管理隔离并替换失效块保证可用 ✓ 正确答案
B 磨损均衡只影响性能
C 坏块无法管理
D 两者都不影响寿命
#

19. 文件系统的 fsync/fdatasync 语义与性能?

A 两者完全相同
B fdatasync 比 fsync 更严格
C fsync 刷新数据与全部元数据,fdatasync 只刷新数据及必要元数据,通常更快 ✓ 正确答案
D fdatasync 不刷新任何数据
#

20. xfs 的 reflink/CoW,共享 extent 的引用计数与写入时复制,与 btrfs 的实现差异如何?

A 两者完全相同
B xfs 不支持 reflink
C btrfs 不用 COW
D xfs 是选择性 CoW(仅共享 extent 做 CoW),btrfs 所有写入原生 COW,二者都靠引用计数与分裂 ✓ 正确答案