Linux 内核收获一批新的 Rust 基础设施优化补丁
今年 10 月,初始的 Rust 基础设施已被合并到 Linux 6.1 。意味着未来 Rust 编程语言将用于内核驱动程序和其他子系统的代码。但 10 月的 Rust for Linux 只提供了底层的基础设施和一些非常基础的集成,缺少很多规范和子系统抽象。
近日,领导 Rust for Linux 工作的 Miguel Ojeda 发布了一组优化补丁( 28 个),为内核提供了更多的 Rust 核心支持代码。
Ojeda 在补丁系列邮件中解释道:
这个补丁系列是对上游 Rust 支持的第一批更改,所有引入的设施都是“Rust 核心”的一部分,不会与 C 端交互(没有使用新的 C 类型;只有
strlen
、memchr
、额外的错误代码和一些更多的printk
格式字符串)。该系列补丁的主要内容:
- 让
str.rs
和print.rs
与下游同步- 添加剩余的 proc 宏
- 让
error.rs
更完整,尽管稍后会出现更多的pub(crate)
功能(以避免在系列之间留下死代码)。此外,此系列补丁使用了一些临时的
#[allow(dead_code)]
属性,以便在组织补丁时有更多的自由度,同时保持所有补丁都可构建,而不会出现警告/错误。但这些属性只是临时使用,在系列补丁最终发布时没剩下多少。
这批补丁几乎所有代码都在 linux-next 中呆了好几个月,属于 Rust 补丁系列的一部分,且每个补丁都在启用 Rust 的 defconfig
上进行了构建测试。鉴于其测试的完整度,这批补丁极有可能进入 Linux 6.2 合并窗口。
一旦所有 Rust 基础设施都到位,将会有一些硬件驱动程序开始转换为 Rust 代码,一些 C 驱动程序代码也会使用 Rust 重写。据外媒 Phoronix 预测,Rust for Linux 的首批主要用户之一应该是 Apple M1/M2 图形的 DRM 驱动程序。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
RedMonk 排行:TypeScript 与 C++ 并列,Kotlin 或将超越 Go?
知名软件行业分析公司 RedMonk 发布了 2022 年 6 月(第三季度)编程语言排行榜。 RedMonk 编程语言排行榜通过追踪编程语言在 GitHub 和 Stack Overflow 上的代码使用情况与讨论数量,统计分析后进行排序,其旨在深入了解潜在的语言采用趋势。该榜单一年发布两次,这是今年的第二份榜单。上一次榜单发布是在 3 月份,即第一季度编程语言排行。 目前 RedMonk 对编程语言的排序算法基本思路没有变化,但是具体的数据收集方式改变了。现在使用 GitHub Archive 作为数据源对 GitHub 数据进行分析;而 Stack Overflow 部分则直接使用其提供的实用工具data explorer,具体排序算法见官方介绍。 下图是 Q3 的编程语言排行情况: 排名前 20 的编程语言为: 1 JavaScript 2 Python 3 Java 4 PHP 5 C# 6 CSS 7 C++ 7 TypeScript 9 Ruby 10 C 11 Swift 12 R 12 Objective-C 14 Shell 15 Scala 15 Go 17 Po...
- 下一篇
refline.js 0.10.0 发布,通用的参考线组件
refline.js 是通用的参考线组件,基于 TypeScript 编写,无框架依赖,支持参考线匹配及吸附功能。 项目地址:https://github.com/refline/refline.js 更新内容: 本次更新主要增加了对 坐标点 的吸附支持 新增API: getAllAdsorbRefLines() 获取匹配到的自定义水平、垂直吸附线 getAdsorbHRefLines() 获取匹配到的自定义水平吸附线 getAdsorbVRefLines() 获取匹配到的自定义水平吸附线 addPoint(point)/removePoint(key) 添加吸附点(对齐点) addRect(rect)/removeRect(key) 添加吸附矩形(一个矩形包含6个吸附点) 新增实例参数: points 吸附点 adsorbLineFilter 吸附匹配流程中对吸附线的过滤,包含所有线段 adsorbCreator(opts) 新增参数 point 体验地址:codesandbox 示例:
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池