AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

停止用C++啟動任何新項目!微軟力推Rust重構Windows!

來源: 責編: 時間:2023-09-28 10:08:35 253觀看
導讀編譯丨千山相比Python、Java這樣的主流語言,Rust可能還比較小眾,但近兩年其影響力和所受關注度卻在與日俱增。在 StackOverflow 開發者調查問卷中,Rust連續八年蟬聯最受歡迎編程語言榜首。在新近出爐的Tiobe九月編程語言

編譯丨千山j9S28資訊網——每日最新資訊28at.com

相比Python、Java這樣的主流語言,Rust可能還比較小眾,但近兩年其影響力和所受關注度卻在與日俱增。j9S28資訊網——每日最新資訊28at.com

  • 在 StackOverflow 開發者調查問卷中,Rust連續八年蟬聯最受歡迎編程語言榜首。
  • 在新近出爐的Tiobe九月編程語言排行榜中,Rust排名更是上升到第17位。
  • 不久前Jetbrains 官宣發布了獨立的Rust IDE :RustRover(詳見之前的報道《棄用開源插件!JetBrains決定對Rust出手!》)。

可以說,Rust正在進入更加成熟與擴大應用規模的階段。在Rust的一眾支持者中,微軟可謂相當高調。j9S28資訊網——每日最新資訊28at.com

今年4月,在BlueHat IL 2023會議上,Windows操作系統安全總監David dwizzle Weston宣布 Rust 正式進入操作系統內核。如今,微軟在擁抱Rust的道路上再次放出大招。j9S28資訊網——每日最新資訊28at.com

重寫內核還不夠,Windows已經開始有了適配Rust驅動的打算!昨天,微軟突然在Github上開放一個重磅項目——windows-drivers-rs,它支持開發人員使用Rust為Windows開發驅動程序。這是操作系統內存安全編程的關鍵一步。j9S28資訊網——每日最新資訊28at.com

為此,Azure的CTO Mark Russinovich特意在X(推特)上發布了這個鏈接,并評論道:“致力于在Rust中實現Windows驅動程序的開發?!?span style="display:none">j9S28資訊網——每日最新資訊28at.com

j9S28資訊網——每日最新資訊28at.com

1、打破閉源,微軟選擇Rust的背后

微軟對于Rust的看好可以追溯到多年以前。2019年7月,微軟研究院發布了一份聲明,希望“在漏洞發生之前消除一整類漏洞”,為內存安全語言提供了理由,并指出“滿足這些要求的最有前途的新系統編程語言之一是最初由Mozilla發明的Rust編程語言”。j9S28資訊網——每日最新資訊28at.com

Rust語言的特性或者說其設計目標之一就是提供內存安全保證,避免出現內存泄漏、緩沖區溢出等問題。這一點是微軟看重它的重要原因之一,此外,這門語言的并發性能也極為出色,它提供了輕量級的線程和異步編程模型,可以充分利用多核處理器的性能。j9S28資訊網——每日最新資訊28at.com

從現有公開資料來看,Windows的Rust改造始于2020年,由DWriteCore開始。DWriteCore 是 Windows 的DWrite引擎的Windows應用程序SDK實現,用于文本分析、布局和渲染。DWriteCore 現在由大約152000行Rust代碼和大約96000行C++代碼組成。j9S28資訊網——每日最新資訊28at.com

2、拋棄C++,用Rust開發Windows

“說到語言,現在是時候停止用 C/C++ 啟動任何新項目了,并在那些需要使用 non-GC 語言的場景中使用 Rust。為了安全性和可靠性,業界應該宣布棄用這些語言?!?span style="display:none">j9S28資訊網——每日最新資訊28at.com

這是去年Mark Russinovich在其社交賬號上公開發布的動態。作為Azure CTO,他的言論一石激起千層浪。j9S28資訊網——每日最新資訊28at.com

隨后C++之父 Bjarne Stroustrup的隔空回應又讓這場辯論再添一絲火藥味?!靶碌恼Z言通常需要多年的時間和重大的努力,才能在其廣泛的應用領域中與成熟的語言相媲美。發燒友們很少看到這一點,他們的評論往往是相當片面的?!?span style="display:none">j9S28資訊網——每日最新資訊28at.com

且不論這場battle結果如何,微軟官方雖然沒有明確表態,但在擁抱Rust的力度上卻是在穩步推進的。j9S28資訊網——每日最新資訊28at.com

由于各種技術和歷史原因,Windows主要是用C和C++編寫的。“大多數用戶模式代碼現在都是用C++編寫的,但大多數內核代碼仍然是用C編寫的?!?span style="display:none">j9S28資訊網——每日最新資訊28at.com

微軟資深軟件工程師Raymond Chen在2018年表示,盡管Windows 11從那時起就出現了,但在開發新版本時,操作系統并沒有重寫。硬件制造商使用Windows驅動工具包使他們的設備能夠在Windows中工作,它仍然是一個C/ C++工具包。j9S28資訊網——每日最新資訊28at.com

而最新推出的名為windows-drivers-rs的項目帶來了全新的可能性。j9S28資訊網——每日最新資訊28at.com

根據新的基于Rust的驅動工具包的發布說明,其目的是同時支持 WDM(Windows 驅動程序模型)和 WDF(Windows 驅動程序框架)。WDM 驅動程序級別較低,與操作系統緊密綁定,而 WDF 驅動程序通過框架庫與系統交互。j9S28資訊網——每日最新資訊28at.com

該存儲庫包含Rust crate,允許開發人員使用WDM和WDF驅動程序開發模型創建Windows驅動程序。當前版本的存儲庫包含以下crate、庫和宏集:wdk-build、wdk-sys、wdk、wdk-panic、wdk-alloc、wdk-macros。j9S28資訊網——每日最新資訊28at.com

3、處于早期,Rust重構Windows或成定局

發布說明還提到,該項目仍處于早期開發階段,不建議用于商業用途。微軟鼓勵實驗和反饋,并指出開發人員可以在GitHub討論論壇上獲得反饋。j9S28資訊網——每日最新資訊28at.com

之所以稱為“早期”,是因為還面臨諸多挑戰,比如,如何處理異常?!皩τ赪indows內核(以及一般的操作系統)來說,結構化異常處理是Windows開發的一個組成部分,也是讓Rust成為Windows內核開發現實的真正障礙,”一名開發人員如是說。j9S28資訊網——每日最新資訊28at.com

Rust的錯誤處理機制中,錯誤分為兩類:可恢復的和不可恢復的。Rust更喜歡使用Result變量報告可恢復的錯誤,并在出現不可恢復的錯誤時使用panic failure退出。但這種故障處理在內核代碼中是不可取的,因為它們會導致系統崩潰。j9S28資訊網——每日最新資訊28at.com

開發人員Johnny Shaw引用Linux Torvalds的話說,在Linux內核(也采用Rust)的上下文中,“因為內核代碼不同于隨機的用戶空間系統工具。內存不足絕對不能導致中止。它只需要導致錯誤返回?!盩orvalds認為這是一個“根本問題”。j9S28資訊網——每日最新資訊28at.com

微軟新存儲庫的早期代碼包括如下注釋:j9S28資訊網——每日最新資訊28at.com

// FIXME: Should this trigger Bugcheck via KeBugCheckEx?j9S28資訊網——每日最新資訊28at.com

這個問題說明,將Rust引入底層Windows代碼不僅僅是為WDK api添加Rust語言綁定的問題。其牽涉的細節往往牽一發而動全身。j9S28資訊網——每日最新資訊28at.com

不過目前來看,內存安全問題在Windows的安全性和穩定性問題中占很大比重,轉向Rust是一個可能的解決方案。而且從積極的意義上來說,隨著內存安全編程的重要性愈發受到行業認可,業界對于Rust的探索會愈發深入,微軟則會繼續在保護原生代碼的前提下探究在Rust中重構Windows的可能,進而為Rust的工程化實踐添磚加瓦。         j9S28資訊網——每日最新資訊28at.com

參考鏈接:

https://devclass.com/2023/09/25/microsoft-posts-early-stages-code-for-developing-windows-drivers-in-rust/j9S28資訊網——每日最新資訊28at.com

https://www.51cto.com/article/754545.htmlj9S28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-11867-0.html停止用C++啟動任何新項目!微軟力推Rust重構Windows!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 超越像素:Java中的高級圖像處理方法

下一篇: 十個前端工程師不能錯過的VS Code插件

標簽:
  • 熱門焦點
  • 俄羅斯:將審查iPhone等外國公司設備 保數據安全

    iPhone和特斯拉都屬于在各自領域領頭羊的品牌,推出的產品也也都是數一數二的,但對于一些國家而言,它們的產品可靠性和安全性還是在限制范圍內。近日,俄羅斯聯邦通信、信息技術
  • 6月iOS設備好評榜:第一蟬聯榜首近一年

    作為安兔兔各種榜單里變化最小的那個,2023年6月的iOS好評榜和上個月相比沒有任何排名上的變化,僅僅是部分設備好評率的下降,長年累月的用戶評價和逐漸退出市場的老款機器讓這
  • 為什么你不應該使用Div作為可點擊元素

    按鈕是為任何網絡應用程序提供交互性的最常見方式。但我們經常傾向于使用其他HTML元素,如 div span 等作為 clickable 元素。但通過這樣做,我們錯過了許多內置瀏覽器的功能。
  • 本地生活這塊肥肉,拼多多也想吃一口

    出品/壹覽商業 作者/李彥編輯/木魚拼多多也看上本地生活這塊蛋糕了。近期,拼多多在App首頁“充值中心”入口上線了本機生活界面。壹覽商業發現,該界面目前主要
  • 一條抖音4億人圍觀 ! 這家MCN比無憂傳媒還野

    作者:Hiu 來源:互聯網品牌官01 擦邊少女空降熱搜,幕后推手曝光被網友譽為“純欲天花板”的女網紅井川里予,近期因為一組哥特風照片登上熱搜,引發了一場互聯網世界關于
  • 大廠卷向扁平化

    來源:新熵作者丨南枝 編輯丨月見大廠職級不香了。俗話說,兵無常勢,水無常形,互聯網企業調整職級體系并不稀奇。7月13日,淘寶天貓集團啟動了近年來最大的人力制度改革,目前已形成一
  • 認真聊聊東方甄選:如何告別低垂的果實

    來源:山核桃作者:財經無忌爆火一年后,俞敏洪和他的東方甄選依舊是頗受外界關心的“網紅”。7月5日至9日,為期5天的東方甄選“甘肅行”首次在自有App內直播,
  • 四年持續更迭堅持探索行業無人之境,HarmonyOS 4帶來五大升級多項創新

    除了華為每年新發布的旗艦手機系列,上億花粉更加期待鴻蒙系統每次的跨版本大更新。8月4日,HarmonyOS 4于HDC 2023正式發布,這也是該系統歷經四年的再
  • 親歷馬斯克血洗Twitter,硅谷的苦日子在后頭

    文/劉哲銘  編輯/李薇  馬斯克再次揮下裁員大刀?! ∶绹鴷r間11月14日,Twitter約4400名外包員工遭解雇,此次被解雇的員工的主要工作為內容審核等。此前,T
Top