Work
  • Jun2025 - Sep2025
    DragonOS
    Loop Device Driver Developer

    为 DragonOS 内核实现 Linux 兼容的 Loop 块设备驱动(3000+ 行 Rust),将文件封装为块设备支持镜像挂载。

    核心工作:

    • 架构设计:采用控制平面/数据平面分离架构,loop-control 字符设备管理生命周期,loopX 块设备处理数据 I/O

    • 状态机:设计五状态有限状态机(Unbound→Bound→Rundown→Draining→Deleting),实现并发 I/O 安全删除

    • 抽象层:实现 BlockDevice/Device/KObject/IndexNode 四层 trait 抽象,与内核设备模型和 VFS 深度集成

    • 并发安全:使用 AtomicU32 + RAII IoGuard 跟踪活跃 I/O,SpinLock 保护状态,Arc/Weak 避免循环引用