Rust程式碼崛起!3.6萬行改寫Windows核心,C++地位不保了?
Rust程式碼崛起!3.6萬行改寫Windows核心,C++地位不保了?
2023.06.26 | 程式開發

取代C++,Rust真的要重寫萬物了!

在得到Linux、Google、亞馬遜雲等大廠青睞後,最近的爆炸消息——

微軟已經用3.6萬行Rust程式碼改寫了Windows核心

而且推進速度相當快,4月劇透消息,過了兩週,Windows 11內部預覽版已經用上了。

微軟雲Azure CTO在推特上激動喊話:

如果你加入了Windows 11 Insider Preview內測,你將首次體驗到Rust支援的Windows核心!

Rust程式碼2
微軟雲Azure CTO在推特上喊話:「如果你加入了Windows 11 Insider Preview內測,你將首次體驗到Rust支援的Windows核心!」
圖/ T客邦

重寫的核心中,主要包括DWriteCore 以及Win32 GDI兩個項目,並通過了Windows開機所有測試。

其中,Win32 GDI寫於上世紀80年代末90年代初,是工齡30多年的老程式碼了。

如今之所以被Rust取代,微軟給的理由簡單粗暴:

Rust語言有著極高的記憶體安全性,原來核心中大量的不安全的子例程也在改寫後消失不見。同時,Rust語言更簡潔高效。

公開資料還表示,隨著時間的推移,Windows核心對Rust的採用將被大幅擴展。

不光是大廠喜愛,Rust還連續多年成為Stack Overflow開發者調查中「最受歡迎的程式語言」。最近Unix系統的基礎工具sudo和su也要用Rust重寫了。

不過有點意外的是,Rust最初被發明出來,竟然是為了修電梯???

Rust程式碼的起源

萬事起源只在於2006年的某天,一位名叫格雷頓老哥(Graydon Hoare)住的那棟公寓,電梯又壞了。

第n次,他一邊碎念一邊努力爬向自己位於21樓的家。他想不通,電梯系統為什麼這麼容易崩潰呢?不應該呀!

作為一名大廠程式設計師,格雷頓老哥覺得,這事不是不能解決。

當時他29歲,正在開源網頁瀏覽器Mozilla公司(火狐背後的公司)工作。作為業內人士,他深知大多數的電梯故障,都是編寫程式的語言很容易意外引入記憶體錯誤,從而引發軟體崩潰。

而當時電梯軟體往往是用C或C++語言編寫。

它們的優點是緊湊、快速,但問題是非常容易引發記憶體錯誤,導致系統崩潰,甚至是安全問題。

所以一不做二不休,格雷頓老哥為了不再爬樓,乾脆決定搞個新程式語言出來。

目標就是不容易記憶體錯誤的語言,最好更短、更快。

於是,Rust語言誕生了。

Rust
Rust可能會取代C++嗎?
圖/ Rust

而且Rust的取名,也很有意思。

Rust和一種真菌同名,中文學名植物銹病,格雷頓評價是「為了生存而過度設計」。

這種真菌生物結構完全是分佈式的,空間上無單點失敗,也就是說單獨去掉哪部分都不影響它的存活,非常強健。

葡萄銹病_葉片病徵_mod
植物銹病
圖/ 行政院農委會農業試驗所

在全生命週期中,Rust真菌共有5種生命形態,其中3種形態還能倒退回上一形態,幾乎等同於蝴蝶還能變回毛毛蟲重新生長。

而且,Rust真菌可以多宿主寄生,恰能對應Rust語言對語言間互操作性的重視。

Rust迎來高光時刻

在單槍匹馬個人開發幾年後,2009年,Rust得到Mozilla公司研究院的支助;2010年項目對外公佈。

研發過程中,Rust已經建立了一個活躍度極高的社區,任何開發者都可以直接給這個項目提bug,或者直接貢獻原始碼。

2015年5月,Rust的1.0版正式發佈。

僅僅一年光景,Rust就吸納了無數的擁護者。2016年起,它連續7年被Stack Overflow開發者調查評為「最受歡迎的程式語言」。

連續榮登榜首所依靠的優點,一是運行速度快,二是記憶體利用率高,三是防止段錯誤。

簡而言之,是在某些部分可以取代C/C++的利器。

所以程式碼江湖流傳著一種說法,把Rust比作跑酷,可以做高危險動作,但是不太容易傷害到自己。

相比之下,C++可以看作是在玩帶火的電鋸。

而憑藉著開發Rust,格雷頓老哥也一戰成名。

之後幾年內,他還參與了Swift的開發。

說來這也是一段有意思的故事。相比於當團隊leader,老哥似乎更喜歡做一線開發。

graydon-hoare__19551
開發Rust程式語言的格雷頓(Graydon Hoare)。
圖/ IQ.wiki

他曾在回應“為什麼離開Rust團隊”中表示,2013年前後那段時間個人情感生活遭受重創(離婚),導致他沒有太多精力負責Rust團隊,後面他還在Mozilla總做了些低調且不著急上線的項目,然後就離職了。

直到2016年初,他接到了蘋果團隊的一個電話,表示正在找幫忙開發Swift的程式設計師,“是一個非領導職位,我更喜歡”。

C/C++太危險!Rust靠著安全性成為微軟、Google寵兒

但到這裡,Rust的傳奇故事才說了一半。

憑藉著“安全性高”的初衷,近幾年它在大廠中的受歡迎度也越來越高。

不僅是Windows,Linux、Android這些主流系統也都先後擁抱Rust。亞馬遜雲、微軟、Google和Rust的關係也一直不錯。

之所以會如此,主要原因或許還是C/C++在記憶體安全方面,真的不太行。

比如微軟幾年前就對Rust很感興趣了,他們將其認定為產品交付前消除記憶體安全漏洞的好辦法。

2019年,微軟承認其產品被CVE披露的漏洞中,有70%是因為使用C/C++後導致的記憶體安全漏洞。

而Rust工具鏈關注揪出程式碼中的潛在漏洞,這在理想情況下能減少程式碼被駭客攻擊的可能。

延伸閱讀:怎麼自動化「雙向同步」Notion、Google 日曆?三工具一次搞定

另一邊,Linux核心也已引入Rust。

去年,由Linux基金會主辦的2022開源峰會上,Linus突然宣布,也許下一個版本就要把Rust加入進來了!

這意味著官方將把Rust for Linux的PR合併到Linux核心的主線里。

(Rust for Linux是一個呼籲Linux和Rust結合的組織)

要知道,此前光是Rust的支援更新就已發佈到第七版了。

當時現場聽到這一消息,立刻掌聲雷動,以至於Linus花了好一會兒才讓大家平靜下來。

幾個月過後,Linux 6.1版本發佈,核心增加了Rust支援,成為了C語言之外的第二種官方語言。

Google這邊的動作其實更早。

2021年Android 12發佈,即宣佈支援Rust。從這以後,他們就一直在Android開放原始碼專案中擴大Rust的使用。

不過Google的做法不是立刻讓Rust來替代C/C++,而是新程式碼用Rust來寫。

從官方發佈的資料裡可以看到, C和C++還是佔主導地位,Rust的比例在逐步提升

Rust程式碼3
Rust在Google的使用比率逐步提升。
圖/ T客邦

而截止去年年底,Google表示,Android中用Rust寫的部分,還沒有發現任何安全漏洞。

這個結果非常重要,因為它意味著Rust能有效防止Android中最常見的漏洞——也就是記憶體安全漏洞。Google的資料顯示,記憶體安全漏洞在各類漏洞中的佔比都非常高。

Rust程式碼4
記憶體安全漏洞是相當常見的漏洞。
圖/ T客邦

在許多C/C++寫的元件中(如藍牙、NFC等),每一千行程式碼中就會有1個漏洞。按照這個比例來換算,Rust很可能已經阻止了數百個漏洞。

以及基於它高並行的優點,在Android中使用Rust,還能進一步平衡系統安全和延遲,一般來說一些安全措施會導致程式語言變慢。

比如使用新的UWB堆疊,可以節省幾兆記憶體,並通過現有處理程序運行來避免一些IPC延遲。

亞馬遜雲對Rust也格外喜歡,因為它在節省能源上同樣表現很nice。

一項研究測試了27種程式語言,結果發現C和Rust在能源利用方面,比Java高效50%,比Python高效98%。

但C的問題已經說了很多遍了,記憶體安全漏洞多,所以綜合這麼一看,Rust又贏了。

Rust程式碼5
Rust在節省能源上表現也很不錯。
圖/ T客邦

實際上, 大廠們對Rust已經不只是青睞,甚至是寵愛了

2020年,Rust背後公司Mozilla宣佈大規模裁員,Rust團隊被裁掉,Rust的命運陷入巨大的不確定中。

為了規避掉這種隱憂,亞馬遜、微軟、Google、華為等大廠,直接共同發起了一個Rust非盈利基金會。承諾兩年內投入約100萬美元預算,支援Rust項目維護。

而在業內,Rust的事蹟更是數不勝數。

最近,兩個類Unix的核心實用程式sudo和su正在用Rust重寫中;此前,GitHub痛改自家搜尋引擎基於Rust;Discord一個Go服務也用Rust重寫了……

(歪樓一下,Rust在加密貨幣領域也很受歡迎)

不過,Rust也存在缺點,比如學到後面會比較難,剛上手的開發速度也比Go、Java慢很多。

所以Rust好評度高,但是“賣座率”還比較一般,甚至會被打上“冷門語言”的標籤。

為此,Rust也在進一步最佳化自身。

根據其發佈的Rust 2024路線中,官方團隊將在降低學習門檻、壯大生態連接等方面加大努力。

所以,後面Rust會怎麼走下去,也還是值得期待了~

延伸閱讀:怎麼把Google文件、試算表串起來,不用手動複製貼上?必學「No Code 工作術」一次看

本文授權轉載自:T客邦

責任編輯:林美欣

往下滑看下一篇文章
看見「電話」的數位轉型契機:有河科技3大優勢,打造AHOY雲端總機服務
看見「電話」的數位轉型契機:有河科技3大優勢,打造AHOY雲端總機服務

數位轉型人人都在談,但你有想過,辦公室裡那支「電話」,升級了嗎?

隨著數位轉型成為企業生存的基本功,中小企業紛紛導入各式雲端服務,包括 ERP、CRM 到協作平台等,卻常常忽略最基本、卻最高頻的工具——通訊系統。事實上,當行動、遠距與多據點辦公成為常態,傳統總機不僅建置與維護成本高、佈線不易,更無法滿足企業靈活運作的需求,成為數位轉型中最容易「卡關」的一環。

也因此,雲端總機迅速崛起,成為企業溝通的新基礎設施。它不只是把「打電話」這件事搬上雲,更讓企業擁有隨時、隨地、跨裝置的溝通能力,真正落實以效率為核心的數位轉型。

很早便洞察此一趨勢的有河科技,以自行研發的 AHOY 雲端總機服務切入市場,短短幾年內便累積近 3,000 家企業用戶,其中高達六到七成來自客戶主動推薦——顯示其服務品質與系統穩定性深受用戶肯定。2025 年上半年,營收更較去年同期成長 16%,在競爭激烈的 B2B SaaS 市場中穩步擴張,展現出強勁的產品實力與市場潛力。

從底層架構開始,打造真正為中小企業而生的雲端總機

提及當初切入雲端總機市場的原因,其實是有河科技創業團隊從實務觀察出發,轉化為產品創新的成果。

「父親本來就在電信領域,而我們一家都有宅男基因,兄弟三人從小就對寫程式很有興趣。」有河科技創辦人 Hank 開玩笑的說,也因此創業初期便以異業合作開發模式,雖能發揮電信系統專長、案件金額相對高,卻也受限於合作方技術本身的瓶頸,或是發展方向的不一致。

為此,有河科技開始思考下一步發展,「我們想跳脫客製化電信系統開發的框架,打造能直接面對市場與客戶的產品。」Hank 坦言,這樣的想法促使他們決定結合父親多年來在電信領域累積的經驗,切入雲端總機領域,發展可長期經營的 SaaS 服務。

有河科技02.JPG
有河科技 Hank
圖/ 有河科技

有河科技另一位共同創辦人 Henry 進一步說明,當時市場上雖已有部分業者推出雲端總機服務,但多半是傳統電話總機的延伸應用。這些業者將國外第三方開源軟體整合至自家的電話交換機產品中,讓客戶可以透過手機接聽公司電話。

「但這些廠商本身擅長的是硬體,不具備軟體開發能力,無法提供完整、穩定的雲端解決方案。」Henry 說,更關鍵的是,企業仍需購買硬體交換機與佈線,才能使用行動分機、內外線錄音等雲端總機功能。「這對新創公司或小微型企業其實很不友善。」Henry 坦言,許多中小企業其實只是希望客戶來電時,可以有一段簡單的語音歡迎詞,建立專業形象,但傳統總機高昂的設備與維運成本,卻讓這些簡易需求難以實現。

有河科技03.JPG
有河科技 Henry
圖/ 有河科技

正因如此,有河科技決定從底層架構開始出發,打造一套高品質、易上手且低成本的雲端總機服務,企業不必添購任何硬體設備,也無需佈線,透過 app 或瀏覽器就能即時接聽與撥打公司電話,實現真正的雲端通訊轉型。

為了實現此一理念,有河科技從底層架構到前端應用,皆選擇自行研發,並在過程中建立起三大關鍵優勢,成為其在市場中脫穎而出的基礎。

優勢1》從硬體到軟體的一條龍架構,確保通訊品質

「建構一套語音系統並不難,難的是讓它穩定、清晰、不中斷,」有河科技共同創辦人 Ian 舉例指出,通話中偶爾出現的海浪聲、波浪聲等,不是單靠軟體就能解決,必須有足夠的電信產業 Know-how 和技術,才知道如何排除問題。

有河科技植基於一代在電信領域的技術、經驗與人脈,結合新一代的軟體開發工程概念,不僅奠定自身在雲端通訊系統的穩固基礎,更能打造從伺服器、後台到前端 app 的一條龍架構,確保每一個環節都能做到最佳化整合。

這種從基礎建設到應用層的全面掌控,不只是技術整合能力的展現,更讓有河科技在眾多雲端總機服務中,建立起一道高品質、高彈性的競爭壁壘。

優勢2》從零打造前端 app,用戶需求即產品動力

在前端 app 上,有河科技選擇從底層開始重新構建 app,而非像多數同業僅使用既有開源軟體或代理第三方軟體,確保未來在功能擴充與版本更新上的自主性與彈性。

「我們很多功能其實都是客戶給的建議,」 Ian 分享,只要客戶提出功能需求,內部就會評估是否具有普遍性,若評估後發現可以滿足八成以上客戶的使用需求,就會主動投入開發並進行系統更新,提供給所有客戶使用。

這種用戶驅動的產品設計思維,不僅讓功能更貼近實務需求,也讓有河科技可以將開發資源集中在最具價值的地方,持續強化系統的共用性與延展性,打造出真正能隨企業成長而調整的雲端通訊平台。

優勢3》彈性 API 整合,支援多元通訊情境

有河科技的軟體研發能力,不只能夠與時俱進的更新產品,還能根據企業需求彈性整合 CRM 等各種系統或客製化開發特殊服務,打造多元化通訊場景。

舉例來說,外送或代駕媒合平台希望提供號碼遮罩(Number Masking)機制,保障司機與用戶的個資安全,有河科技便為此進行開發,當司機在與客戶聯繫時,客戶手機上只會顯示公司的代表號,之後若客戶回撥,AHOY 也能將來電導至接單司機,達到保護隱私又不中斷溝通的雙重目標。

又或是與 LINE API 整合,可以將既有官方帳號商家的通話,直接升級成專業雲端總機系統等級、甚至可以一併介接各家不同特色的 AI 文字客服以及 AI 語音客服,即時產生逐字稿並進行服務品質情緒分析。

在許多企業還將總機視為「基礎設施」時,有河科技早就運用 AHOY 雲端總機服務,重新定義企業與客戶、內部團隊之間的溝通方式。

隨著企業通訊越來越重視彈性與效率,有河科技運用 SaaS 模式與與技術實力,悄悄搶下這波通訊革新的先機。未來,有河科技將聚焦在 WebCall 網頁電話整合介接與 AI 客服兩大應用場景,不僅讓用戶能在 LINE 官方帳號或網站上直接使用 AHOY 通話,也希望藉由異業合作導入更多元 AI 應用,提升服務效率與回應品質,打造更聰明、更好用的智慧通訊平台。

登入數位時代會員

開啟專屬自己的主題內容,

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
2026 大重啟
© 2026 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓