微軟開始擁抱 Rust,Rust 正式入駐Windows 平臺!
微軟正在用 Rust 編程語言重寫核心 Windows 庫!
上個月,在 Tel Aviv 舉辦的 BlueHat IL 2023會議上,Windows 操作系統安全總監 ”David dwizzle Weston“ 宣布 Rust 正式進入操作系統內核。
為什么微軟會選擇 ”Rust“ 重寫核心Windows庫呢?
Rust 的優勢
Rust 在TioBe 四月的編程語言排行榜中已經進入了前20了,可見其發展態勢迅猛!
Rust 專注于內存安全和類似的保護,這將會減少代碼中很多不良錯誤。
開始擁抱 Rust
“實際上,接下來的幾周或幾個月內,我們將在內核中使用 Rust 啟動 Windows,這真的很酷,”
“這里的基本目標是將其中一些內部 C++ 數據類型轉換為 Rust 等價物。”
在微軟看來,Rust這門語言是一種在代碼落入用戶手中之前捕獲和消除內存安全漏洞的方法。
未來很多的內核程序將會使用Rust 編寫。
Rust 未來很有力量
Rust 在長時間內“叫好不叫座”的原因,除了新手不友好外,前Deepin CTO也在推特上分享了自己的見解,它認為Rust 未來是一個很有力量的語言;
Rust 正式入駐Windows
微軟為什么擁抱 Rust? 主要有以下幾點原因:
1. 內存安全:Rust 語言的設計目標之一就是提供內存安全保證,避免出現內存泄漏、緩沖區溢出等問題,這對于開發高性能、高可靠性的系統非常重要。
2. 并發性能:Rust 語言的并發性能非常出色,它提供了輕量級的線程和異步編程模型,可以充分利用多核處理器的性能。
3. 生態系統:Rust 生態系統非常活躍,擁有豐富的第三方庫和工具,可以大大提高開發效率。
4. 跨平臺支持:Rust 語言可以編譯成本地代碼,支持多種操作系統和硬件平臺,可以方便地開發跨平臺應用程序。
5. 開源社區:Rust 語言是一個開源項目,擁有龐大的開發者社區,可以獲得來自全球開發者的支持和貢獻。
Windows 的 Rust 改造始于 2020 年,由 DWriteCore 開始,DWriteCore 是 Windows 的 DWrite 引擎的 Windows 應用程序 SDK 實現,用于文本分析、布局和渲染。DWriteCore 現在由大約 152,000 行 Rust 代碼和大約 96,000 行C++代碼組成。
除了假定的安全性改進之外,據說使用OTLS(OpenType庫服務)整形(替換)字形的性能提高了5%到15%。現在,開發人員可以使用所有這些功能。
Microsoft Windows 圖形設備接口 (Win32 GDI) 正在移植到 Rust 上,到目前為止有 36000 行 Rust 代碼。最新版本的 Windows 11 使用 Rust 版本啟動,該版本通過了所有 GDI 測試,但 Rust 端口目前在功能標志后面被禁用。
“現在Windows內核中實際上有一個SysCall,它是在Rust中實現的”
微軟遇到的問題
Windows 在其自己的產品中修補了大約2006%的CVE列出的安全漏洞,這些類型的錯誤是核心內核問題;
隨著行業對內存安全編程的支持越來越多,微軟對 Rust 的探索變得更加熱情!
Rust 工具鏈致力于防止構建和發布可利用的代碼,這在理想情況下減少了攻擊軟件弱點的機會。
微軟對 Rust 的 熱衷是有限度的,在 Rust 中重寫 Windows正在進行,但是還要保護更多的原生代碼。
另外微軟也會為Rust貢獻自己的力量,來推動整個Rust的發展。