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

當(dāng)前位置:首頁 > 科技  > 軟件

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

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

編譯丨千山0oA28資訊網(wǎng)——每日最新資訊28at.com

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

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

可以說,Rust正在進入更加成熟與擴大應(yīng)用規(guī)模的階段。在Rust的一眾支持者中,微軟可謂相當(dāng)高調(diào)。0oA28資訊網(wǎng)——每日最新資訊28at.com

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

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

為此,Azure的CTO Mark Russinovich特意在X(推特)上發(fā)布了這個鏈接,并評論道:“致力于在Rust中實現(xiàn)Windows驅(qū)動程序的開發(fā)。”0oA28資訊網(wǎng)——每日最新資訊28at.com

0oA28資訊網(wǎng)——每日最新資訊28at.com

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

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

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

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

2、拋棄C++,用Rust開發(fā)Windows

“說到語言,現(xiàn)在是時候停止用 C/C++ 啟動任何新項目了,并在那些需要使用 non-GC 語言的場景中使用 Rust。為了安全性和可靠性,業(yè)界應(yīng)該宣布棄用這些語言。”0oA28資訊網(wǎng)——每日最新資訊28at.com

這是去年Mark Russinovich在其社交賬號上公開發(fā)布的動態(tài)。作為Azure CTO,他的言論一石激起千層浪。0oA28資訊網(wǎng)——每日最新資訊28at.com

隨后C++之父 Bjarne Stroustrup的隔空回應(yīng)又讓這場辯論再添一絲火藥味。“新的語言通常需要多年的時間和重大的努力,才能在其廣泛的應(yīng)用領(lǐng)域中與成熟的語言相媲美。發(fā)燒友們很少看到這一點,他們的評論往往是相當(dāng)片面的。”0oA28資訊網(wǎng)——每日最新資訊28at.com

且不論這場battle結(jié)果如何,微軟官方雖然沒有明確表態(tài),但在擁抱Rust的力度上卻是在穩(wěn)步推進的。0oA28資訊網(wǎng)——每日最新資訊28at.com

由于各種技術(shù)和歷史原因,Windows主要是用C和C++編寫的。“大多數(shù)用戶模式代碼現(xiàn)在都是用C++編寫的,但大多數(shù)內(nèi)核代碼仍然是用C編寫的。”0oA28資訊網(wǎng)——每日最新資訊28at.com

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

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

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

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

3、處于早期,Rust重構(gòu)Windows或成定局

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

之所以稱為“早期”,是因為還面臨諸多挑戰(zhàn),比如,如何處理異常。“對于Windows內(nèi)核(以及一般的操作系統(tǒng))來說,結(jié)構(gòu)化異常處理是Windows開發(fā)的一個組成部分,也是讓Rust成為Windows內(nèi)核開發(fā)現(xiàn)實的真正障礙,”一名開發(fā)人員如是說。0oA28資訊網(wǎng)——每日最新資訊28at.com

Rust的錯誤處理機制中,錯誤分為兩類:可恢復(fù)的和不可恢復(fù)的。Rust更喜歡使用Result變量報告可恢復(fù)的錯誤,并在出現(xiàn)不可恢復(fù)的錯誤時使用panic failure退出。但這種故障處理在內(nèi)核代碼中是不可取的,因為它們會導(dǎo)致系統(tǒng)崩潰。0oA28資訊網(wǎng)——每日最新資訊28at.com

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

微軟新存儲庫的早期代碼包括如下注釋:0oA28資訊網(wǎng)——每日最新資訊28at.com

// FIXME: Should this trigger Bugcheck via KeBugCheckEx?0oA28資訊網(wǎng)——每日最新資訊28at.com

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

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

參考鏈接:

https://devclass.com/2023/09/25/microsoft-posts-early-stages-code-for-developing-windows-drivers-in-rust/0oA28資訊網(wǎng)——每日最新資訊28at.com

https://www.51cto.com/article/754545.html0oA28資訊網(wǎng)——每日最新資訊28at.com

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

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

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

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

標(biāo)簽:
  • 熱門焦點
  • 一加Ace2 Pro官宣:普及16G內(nèi)存 引領(lǐng)24G

    一加官方今天繼續(xù)為本月發(fā)布的新機一加Ace2 Pro帶來預(yù)熱,公布了內(nèi)存方面的信息。“淘汰 8GB ,12GB 起步,16GB 普及,24GB 引領(lǐng),還有呢?#一加Ace2Pro#,2023 年 8 月,敬請期待。”同時
  • 線程通訊的三種方法!通俗易懂

    線程通信是指多個線程之間通過某種機制進行協(xié)調(diào)和交互,例如,線程等待和通知機制就是線程通訊的主要手段之一。 在 Java 中,線程等待和通知的實現(xiàn)手段有以下幾種方式:Object 類下
  • 十個簡單但很有用的Python裝飾器

    裝飾器(Decorators)是Python中一種強大而靈活的功能,用于修改或增強函數(shù)或類的行為。裝飾器本質(zhì)上是一個函數(shù),它接受另一個函數(shù)或類作為參數(shù),并返回一個新的函數(shù)或類。它們通常用
  • 讓我們一起聊聊文件的操作

    文件【1】文件是什么?文件是保存數(shù)據(jù)的地方,是數(shù)據(jù)源的一種,比如大家經(jīng)常使用的word文檔、txt文件、excel文件、jpg文件...都是文件。文件最主要的作用就是保存數(shù)據(jù),它既可以保
  • 騰訊VS網(wǎng)易,最卷游戲暑期檔,誰能笑到最后?

    作者:無銹缽來源:財經(jīng)無忌7月16日晚,上海1862時尚藝術(shù)中心。伴隨著幻象的精準命中,碩大的熒幕之上,比分被定格在了14:12,被寄予厚望的EDG戰(zhàn)隊以絕對的優(yōu)勢戰(zhàn)勝了BLG戰(zhàn)隊,拿下了總決
  • 當(dāng)家的盒馬,加速謀生

    來源 | 價值星球Planet作者 | 歸去來自己“當(dāng)家”的盒馬,開始加速謀生了。據(jù)盒馬官微消息,盒馬計劃今年開放生鮮供應(yīng)鏈,將其生鮮商品送往食堂。目前,盒馬在上海已經(jīng)與
  • OPPO、vivo、小米等國內(nèi)廠商Q2在印度智能手機市場份額依舊高達55%

    7月20日消息,據(jù)外媒報道,研究機構(gòu)的報告顯示,在全球智能手機出貨量同比仍在下滑的大背景下,印度這一有潛力的市場也未能幸免,出貨量同比也有下滑,多家廠
  • 2納米決戰(zhàn)2025

    集微網(wǎng)報道 從三強爭霸到四雄逐鹿,2nm的廝殺聲已然隱約傳來。無論是老牌勁旅臺積電、三星,還是誓言重回先進制程領(lǐng)先地位的英特爾,甚至初成立不久的新
  • 2021中國國際消費電子博覽會與青島國際軟件融合創(chuàng)新博覽會新聞發(fā)布會隆重舉行

    9月18日,2021中國國際消費電子博覽會與青島國際軟件融合創(chuàng)新博覽會新聞發(fā)布會在青島國際新聞中心隆重舉行。發(fā)布會上青島市政府領(lǐng)導(dǎo)聯(lián)袂出席,對本次雙展會情
Top