Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1672021
  • 博文数量: 1279
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 13084
  • 用 户 组: 普通用户
  • 注册时间: 2018-03-07 16:26
个人简介

Linux学习小标兵,专注Linux资讯分享,技术文章分享

文章分类

全部博文(1279)

文章存档

2023年(236)

2022年(285)

2021年(265)

2020年(248)

2019年(213)

2018年(32)

我的朋友

分类: LINUX

2023-02-20 22:33:52

导读 Collabora 的 Faith Ekstrand 近日发文,介绍了有关考虑使用 Rust 重写 Mesa Vulkan 驱动的工作。这项工作的设计目标包括让 Rust Vulkan 驱动封装尽可能 clean 和 “Rust-like”、跟踪可变性和生命周期,并尽可能使用 Vulkan allocators。

Mesa Vulkan 驱动探索使用 Rust 重写Mesa Vulkan 驱动探索使用 Rust 重写

目前,Mesa 中的所有 Vulkan 驱动都是采用 C 编写的;有些后端着色器编译器或其他组件则采用了 C++,但所有 Vulkan API 入口点都是直接采用了 C 语言实现。如今随着 Rust 的兴起,Faith 表示其已经开始考虑在 Mesa 中使用相对来说更 “安全” 的 Rust 来替换 C 语言。“长期以来,它 (C 语言) 一直在软件 bug 和安全漏洞方面享有盛名。”

Faith 认为,C 语言并不是编写图形驱动程序的{BANNED}最佳佳语言。他们{BANNED}最佳近甚至遇到了一个,由于在常见的 Vulkan synchronization code 中不小心将 64 位无符号整数截断为 32 位所造成的 bug。因此,他想知道主要用 Rust 编写 Vulkan 驱动程序的举措是否可行,以及此举是否可以带来与所付出的努力对等的回报。

不过 Faith 也表示,预计几年内不会出现任何实际的用 Rust 编写的 Mesa Vulkan 驱动程序,现下的目标只是探索可能性。他目前的工作仅仅是触及了皮毛,接下来计划将进一步探索实验并发布博文反馈。

“我希望当有人确实选择用 Rust 编写 Vulkan 驱动程序时,我们已经做好准备。这种探索也可能有助于向 Rust 社区提供一些可推进此计划进行的语言特性的信息。但目前可以明确的是,我们的目标计划还没有包括将现有的 Vulkan 驱动程序转换为 Rust。”

他还提交了一份合并请求草案,为用 Rust 编写的 Vulkan 驱动程序添加了一些初步的基础架构。


本文来自《Linux就该这么学》官方资讯站
阅读(214) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~