Rust 与 Linux 设备驱动开发 基础概念 和应用程序不同,驱动程序是可以直接和硬件设备进行通讯的。驱动程序作为 Linux 内核的一种模块被动态加载到内核中。编译好的模块一般以.ko(kernel object)为文件扩展后缀 (这让我想起自己在 Linux 下安装 Nvidia 驱动报错找不到 nvidia.ko 文件时有多么崩溃)。 但要注意的是...
driver-core.git 的 driver-core-next 分支由 Greg Kroah-Hartman 监管,最新的 Rust 补丁系列将在周末排队发布。v7 补丁系列提供了设备/驱动程序/PCI 平台 Rust 抽象,如果一切顺利,现在代码已经到达 driver-core-next 分支,将在 Linux 6.14 中合并。这些补丁是正在开发中的 NOVA 内核驱动程序、Rust NVMe 驱动...
// From: https://github.com/Rust-for-Linux/linux/blob/rust/samples/rust/rust_miscdev.rs// RustMiscdev 是某个设备// 通过实现 KernelModule trait 来进行加载时初始化impl KernelModuleforRustMiscdev{fninit(name:&'static CStr, _module: &'staticThisModule)->Result<Self>{pr_info!("Rust miscell...
开发者就此询问了 Linux 内核稳定版维护者 Greg Kroah-Hartman,Greg 表示愿意接受用 Rust 开发 Linux 内核的驱动程序,但前提是:1)以可选的方式存在,而不是默认启用,这样其他开发者就不需要使用 Rust 去构建内核;2)Rust 驱动需要体现出比 C 驱动具有优势,比如针对内核 API 的安全封装器。 不过底下有开发者指出...
蓝牙方面,新的驱动程序支持IMC Networks无线蓝牙设备。与其他平台相比,英特尔在 Linux 中首次推出 Arc 驱动程序的起步相当缓慢,主要是因为 Team Blue 在提供增强驱动程序功能方面有点晚了。 不过,经过两年的开发,Intel终于将其“改版”的Xe内核显卡驱动提交到了主线内核中。另外值得注意的是英特尔高速NIC驱动程序增加...
2024年12月,Linux社区宣布了6.14版本内核的重要更新,标志着在驱动程序开发领域的一个新里程碑。这一版本将支持使用Rust编程语言编写的PCI和平台设备驱动程序。这一决定不仅强化了Linux内核的现代化趋势,也为未来基于Rust的驱动程序奠定了基础,尤其是在安全性和性能方面的显著提升。随着Linux进一步整合Rust,开发者和用户将...
维护者 Greg Kroah-Hartman 负责监督的 driver-core.git 上周末在 driver-core-next 分支中,排队加入了最新的 Rust 补丁,如果一切顺利,那么将会在 Linux 6.14 中合并适用于设备 / 驱动程序 / PCI 平台的 v7 补丁系列 Rust 抽象。Rust NVMe(Red Hat 正在开发的开源 NVIDIA GSP 内核图形驱动)以及其它驱动,...
总体来看,Linux 6.14内核的更新为Rust在设备驱动开发领域的应用打开了新的大门。这一趋势不仅将改变Linux内核的开发模式,也可能影响整个软件开发行业的技术走向。借助Rust的安全性和现代化特性,未来的驱动程序将更加高效、安全,从而推动硬件创新与软件发展之间的深度融合。
Rust 与 Linux 设备驱动开发 基础概念 和应用程序不同,驱动程序是可以直接和硬件设备进行通讯的。驱动程序作为 Linux 内核的一种模块被动态加载到内核中。编译好的模块一般以.ko(kernel object)为文件扩展后缀 (这让我想起自己在 Linux 下安装 Nvidia 驱动报错找不到 nvidia.ko ...
另一位用户 Dave Airlie 认为 Rust 在 Linux 上的实验还没有结束。 维护者 Greg Kroah-Hartman 则表示,目前很清楚内核中使用 Rust 是可行的。之所以看上去进展缓慢,是因为 Rust 开发者主要在集中开发设备驱动程序。由于驱动程序需要与许多其他内核子系统进行交互,因此有大量支持代码需要合并,这需要时间。