自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

真出圈了!Rust 正式入駐 Windows!

原創(chuàng) 精選
系統(tǒng) Windows
在以色列特拉維夫舉辦的 BlueHat IL 2023 上,Windows 操作系統(tǒng)安全總監(jiān) David “dwizzle” Weston 宣布 Rust 進(jìn)入操作系統(tǒng)內(nèi)核。

撰稿丨千山

審校 | 云昭

51CTO讀者成長計(jì)劃社群招募,咨詢小助手(微信號:CTOjishuzhan)

微軟正在用 Rust 編程語言重寫核心 Windows 庫。

在以色列特拉維夫舉辦的 BlueHat IL 2023 上,Windows 操作系統(tǒng)安全總監(jiān) David “dwizzle” Weston 宣布 Rust 進(jìn)入操作系統(tǒng)內(nèi)核。

“實(shí)際上,在接下來的幾周或幾個月內(nèi),你將在內(nèi)核中使用 Rust 啟動 Windows,這真的很酷,”他說。“這里的基本目標(biāo)是將其中一些內(nèi)部 C++ 數(shù)據(jù)類型轉(zhuǎn)換為它們的 Rust 等價物。”

1、微軟:有“分寸”地?fù)肀?Rust

微軟的這一舉措并非一時興起,早在幾年前,微軟就表現(xiàn)出了擁抱 Rust 的意向。

在微軟看來,這門語言是一種在代碼落入用戶手中之前捕獲和消除內(nèi)存安全漏洞的方法。簡單來說,Rust 專注于內(nèi)存安全和類似的保護(hù),這減少了結(jié)果代碼中不良錯誤的數(shù)量。

Windows 的 Rust 改造始于 2020 年,由 DWriteCore 開始。DWriteCore 是 Windows 的 DWrite 引擎的 Windows App SDK 實(shí)現(xiàn),用于文本分析、布局和渲染。DWriteCore 現(xiàn)在由大約 152000 行 Rust 代碼和大約 96000 行 C++ 代碼組成。

隨著行業(yè)對內(nèi)存安全編程的支持越來越多,微軟對 Rust 的探索變得更加熱情。

Microsoft Windows 圖形設(shè)備接口 (Win32 GDI) 正在移植到 Rust 上,到目前為止已包含 36000 行 Rust 代碼。最新版本的 Windows 11 使用 Rust 版本啟動,該版本通過了所有 GDI 測試,但 Rust 端口目前在功能標(biāo)志后面被禁用。另據(jù) Weston 透露,Windows 內(nèi)核中現(xiàn)在有一個 SysCall,是采用 Rust 實(shí)現(xiàn)的。

當(dāng)然,微軟對 Rust 的這種擁抱還是有限度的。正如 Weston 所說,“在 Rust 中重寫 Windows 可能不會很快發(fā)生。雖然我們喜歡 Rust,但我們需要一種策略,包括保護(hù)更多的原生代碼。”

2、社區(qū):來自巨頭的支持不可或缺

盡管來自微軟的支持是有限的,但其代碼貢獻(xiàn)也將使 Rust 更有活力,這對于整個開源社區(qū)的發(fā)展是積極向上的。

Python Web 框架 Flask 的作者 Armin Ronacher 在一封電子郵件中表示,微軟對 Rust 的承諾對這門語言來說非常棒。

“特別是,因?yàn)槲蚁M④浿赜矛F(xiàn)有的編譯器,我希望這樣做將帶來更好的 PDB(程序數(shù)據(jù)庫)支持,”他說。“今天在 Windows 上,開發(fā)人員工具支持落后于基于 DWARF 的‘使用屬性記錄格式進(jìn)行調(diào)試’平臺支持。”

Pydantic 的創(chuàng)始人 Samuel Colvin 則在接受外媒采訪時表示:“微軟的這種前瞻性思維給我留下了深刻的印象……如果你現(xiàn)在正在構(gòu)建一個性能關(guān)鍵或低級別的應(yīng)用程序,那么 Rust 在這一點(diǎn)上是不費(fèi)吹灰之力的?!?/p>

同時,他認(rèn)為,找到優(yōu)秀的 Rust 工程師比找到優(yōu)秀的 C/C++ 工程師更容易。雖然擁有豐富 Rust 經(jīng)驗(yàn)的人較少,但有很多工程師有興趣嘗試學(xué)習(xí)這門語言。而且編寫安全代碼的難度很大,在 Rust 中要容易一個數(shù)量級。

“對于我們這些依賴 Rust 的人來說,微軟正在使用它,并希望能夠支持它,這真的很令人興奮?!?/p>

3、名聲漸起但紛爭不斷

近年來,Rust 輿論聲量日益漸漲,在火了的同時發(fā)展也漸趨穩(wěn)定。

在 Tiobe 發(fā)布的四月編程語言排行榜中,Rust 進(jìn)入了前 20 名,盡管差不多是守門員的位置(位列 19),但也可以窺見其發(fā)展態(tài)勢。

圖片

圖源:TIOBE Index - TIOBE

或許可以歸因于之前 Linux 內(nèi)核 6.1 版正式采用了 Rust,為使用 Rust 編寫驅(qū)動程序掃清了一部分障礙。不過日前 Rust 基金會關(guān)于商標(biāo)政策的迷之操作一度引發(fā)社區(qū)爭議,“平穩(wěn)發(fā)展中又暗流涌動”或許可以概括 Rust 的現(xiàn)狀。

而且隨著 Rust 逐漸冒頭,C++ 與 Rust 之間也是硝煙彌漫。

去年微軟 Azure 的首席技術(shù)官 Mark Russinovich 公開表示,開發(fā)人員應(yīng)該避免在新項(xiàng)目中使用 C 或 C++,而是使用 Rust,因?yàn)樗哂袃?nèi)存安全優(yōu)勢,甚至敦促業(yè)界宣布棄用這些語言。

隨后 C++ 之父 Bjarne Stroustrup 在接受采訪時隔空回懟:“新語言通常需要多年時間和重大努力才能在其廣泛的應(yīng)用領(lǐng)域與成熟語言相匹配。愛好者很少看到這一點(diǎn),并且他們的評論往往是片面的?!?/p>

值得一提的是,C++ 在年初時被 Tiobe 評為 2022 年度最佳編程語言。當(dāng)時 Tiobe 首席執(zhí)行官 Paul Jensen 如此評價:“C++ 流行的原因是它作為一種高級面向?qū)ο笳Z言的出色性能。因此,可以用 C++ 開發(fā)快速而龐大的軟件系統(tǒng)(超過數(shù)百萬行代碼),而不大會出現(xiàn)‘維護(hù)噩夢’。”

雖然雙方各執(zhí)一詞,但就現(xiàn)狀來看,Rust 還無法撼動 C++ 的地位。相較 C++ 的歷史沉淀,Rust 的流行明顯還需時日。而且 Rust 陡峭的學(xué)習(xí)曲線也限制了其快速的規(guī)模化普及。曾有開發(fā)者感慨:“試圖用 Rust 重寫公司核心組件,學(xué)習(xí)曲線是真的陡,Java 用了一周上手,Rust 用了一個月才玩明白?!?/p>

4、從小眾走向大眾尚需時日

除了新手不友好外,關(guān)于 Rust 在長時間內(nèi)“叫好不叫座”的原因,近日,前 Deepin CTO 王勇也在推特上分享了自己的觀點(diǎn):Rust 語言很有力量,但他對這個語言并不感冒。原因如下:

1、世界上有很多業(yè)務(wù)性的邏輯是需要創(chuàng)造力和編程心流體驗(yàn)的,而 Rust 編譯器總是打斷你方向性的思考, 強(qiáng)制讓你關(guān)注設(shè)計(jì)階段不重要的細(xì)節(jié),喪失了很多編程樂趣。

圖片

圖源:推特

2、Rust 社區(qū)的人似乎不懂得市場經(jīng)濟(jì)和成本概念,一個好的軟件不僅僅只是內(nèi)存安全和絕對性能,代碼可讀性,場景適合性,認(rèn)知深刻和持續(xù)維護(hù)的軟件對用戶才有價值,重寫完一個軟件,證明 Rust 比別的語言快和自己厲害,馬上就棄坑的軟件沒有價值。

3、Rust 社區(qū)推崇內(nèi)存的細(xì)膩控制,有時候就和 C++ 的開發(fā)人員一樣討厭,把指針或者生命周期控制能力當(dāng)作比較的炫耀資本,Rust 更像是一種證明自己比別人厲害的工具。我不是說 Rust 不好,而是不喜歡這種認(rèn)為 Rust 就是天下第一的思想,什么都要用 Rust 重寫的想法。

4、Rust 的強(qiáng)制內(nèi)存管理,在編寫復(fù)雜邏輯的時候,編譯器打斷太生硬了,導(dǎo)致人無法安靜的思考最重要的架構(gòu)設(shè)計(jì)。Rust 對于底層庫或者實(shí)時性這些不需要 GC 或者性能苛刻的場景很適合,為了內(nèi)存安全可以忍受編譯器嚴(yán)格。但是現(xiàn)實(shí)大部分場景不是都是內(nèi)存安全優(yōu)先的,而是創(chuàng)造力和邏輯清晰優(yōu)先的。

最后王勇強(qiáng)調(diào),無論學(xué)習(xí)何種語言,掌握多少種語言,都是為了學(xué)習(xí)各種語言的設(shè)計(jì)思想和看問題角度,主要價值在于提升認(rèn)知。而不是為了在編程語言之爭中踩在制高點(diǎn)抒發(fā)優(yōu)越感?!?nbsp;語言只是工具,我們不能拿著錘子到處去攻擊別人炫耀自己,那樣其實(shí)很傻?!?/p>

參考鏈接:

https://www.theregister.com/2023/04/27/microsoft_windows_rust/

https://www.tiobe.com/tiobe-index/

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2023-05-12 14:52:30

2012-01-10 10:24:24

UbuntuLinux 3.2

2015-04-03 09:07:10

JavaScriptWindows

2011-12-13 09:52:41

Windows 8開源軟件

2012-05-11 10:40:10

Win 8Windows Sto

2022-06-30 15:14:46

騰訊會議應(yīng)用市場開發(fā)者

2014-06-06 14:05:37

Windows Ser

2013-07-17 18:29:35

H3C天貓旗艦

2013-08-15 14:12:57

咪咕愛唱

2021-07-28 16:34:06

Python鴻星爾克數(shù)據(jù)

2015-10-26 22:01:52

企業(yè)云應(yīng)用超市華為

2025-02-10 08:37:04

2017-03-23 10:32:13

華為

2011-07-14 10:15:42

MozillaFirefox蘋果

2011-12-19 09:13:59

斐訊百聯(lián)E城

2016-07-05 14:32:55

IT

2021-06-27 06:38:14

Windows 11操作系統(tǒng)微軟

2013-11-04 09:47:43

微軟Windows

2012-11-30 09:52:23

NASA星際工程云計(jì)算
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號