近日,Miguel Ojeda发布了最新的补丁系列,这是"Rust for the Linux kernel"的第六版补丁,继续将 Rust 语言支持引入 Linux 内核。
在 v6 补丁中,工具链支持已经针对 Rust 1.60 进行了更新,并且支持在内核中运行文档测试,以及其他 Rust 基础设施也得到了改进。
在此版本中可以看到网络支持的开始,例如“net”模块支持 Namespace、SkBuff、Ipv4Addr、SocketAddrV4、TcpListener 等类型。此外还有对异步内核编程“async”支持的开始。
目前,此版本已经允许异步 TCP 套接字代码。新的 Rust 代码还增加了对网络数据包过滤器和其他新功能的支持。
最后,从该版本的系列补丁来看,Rust 支持仍然被认为是"实验性的",但其表现已经足够好,内核开发人员可以开始为其他内核子系统开发 Rust 抽象,并在需要时将更多的驱动移植到Rust上。
截至Miguel Ojeda 发布补丁时,Rust内核工作总计 37.9万行代码,包括基础设施、到目前为止开始的子系统抽象、样本代码,以及将一些 Android 和GPIO驱动代码转换为 Rust 的额外示例。