chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

微軟開始嘗試使用Rust代替C/C++,介紹這些運(yùn)用Rust的產(chǎn)品

如意 ? 來源:讀芯術(shù)微信公眾號(hào) ? 作者:讀芯術(shù)微信公眾號(hào) ? 2020-09-03 10:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

微軟擁有世界上最大的C/C++代碼庫之一。從Windows、Office到Azure云,微軟的所有核心產(chǎn)品都在該代碼庫上運(yùn)行。但因?yàn)镃++不是內(nèi)存安全的語言,代碼庫中自然頻頻出現(xiàn)內(nèi)存漏洞,大量的時(shí)間被耗費(fèi)在修補(bǔ)漏洞上。

微軟自去年開始尋找用以替代的編程語言來解決內(nèi)存安全問題,尋找終有所得——微軟開始嘗試使用Rust,并在一些情境下將其集成進(jìn)代碼庫中。Rust是一種相對較新的編程語言,具有與C和C++相同的底層性能,并具備現(xiàn)代編程語言應(yīng)有的功能集。

微軟認(rèn)為Rust頗具潛力,本文就將介紹微軟將其用在產(chǎn)品中的方式。

用Rust重寫Windows

微軟雖然尚未使用Rust全面重寫Windows,但正在致力于研究如何使Rust適應(yīng)其生態(tài)系統(tǒng)。據(jù)微軟估算,在推送給計(jì)算機(jī)的安全補(bǔ)丁中,有70%都是為了修補(bǔ)內(nèi)存有關(guān)的漏洞,他們認(rèn)為Rust可以在開發(fā)階段捕獲這些漏洞。因此,微軟委托一些工程師用Rust重寫Windows的部分組件,從而獲取開發(fā)人員的一些意見。

雖然微軟沒有公開重寫哪些組件,但一名工程師稱,他正在針對性地改造部分“Windows的底層系統(tǒng)”,這體現(xiàn)出了微軟對Rust的潛力頗具信心。微軟不僅計(jì)劃重寫一些小的服務(wù)和Windows本地應(yīng)用程序,還可能重寫操作系統(tǒng)的核心組件。

工程師們稱涉及Rust的工作“整體前景是樂觀的”,但也明確指出Rust不具備C的一些重要功能,不過這些工程師們也認(rèn)為有必要為Rust開發(fā)這些功能。

英特爾已經(jīng)開始致力于讓Rust實(shí)現(xiàn)與C相同的功能,微軟也或?qū)⒓尤肫渲?。由于Rust缺少C的一些功能,該團(tuán)隊(duì)發(fā)現(xiàn)Rust將最適用于新近開發(fā)的Windows組件。假如微軟將部分代碼庫遷移到Rust,我也不會(huì)感到吃驚。

微軟已經(jīng)為Rust搭建了一個(gè)標(biāo)準(zhǔn)Windows庫,它具備C++版本的所有功能;Linux也在考慮將一些內(nèi)核遷移到Rust。這兩大操作系統(tǒng)之間有可能展開競爭,看誰能最先將Rust代碼投入生產(chǎn)。

將Rust整合進(jìn)Azure服務(wù)

DeisLabs是Azure的孵化器項(xiàng)目之一,它致力于為Kubernetes構(gòu)建工具。近來,它選取Rust來開發(fā)新產(chǎn)品Krustlet,允許開發(fā)者在Kubernetes中運(yùn)行多個(gè)WebAssembly模塊。

Kubernetes原本由Google開發(fā),以Go語言寫成。大多數(shù)工程師傾向于使用Go來為Kubernetes編寫組件,DeisLabs選擇Rust可謂驚人之舉。

最終,這一決定似乎有所成效。雖然員工的確提到了由于Rust獨(dú)特的所有權(quán)概念,轉(zhuǎn)換為Rust的過程十分困難,但該團(tuán)隊(duì)僅用了一個(gè)月就回到了全速工作狀態(tài),他們發(fā)現(xiàn)需要為空值寫的測試以及調(diào)試的問題都越來越少。

工程師們也對Rust的編譯器印象深刻。他們稱該編譯器能夠找到另一個(gè)項(xiàng)目中的安全漏洞,而Go的編譯器則未能做到這一點(diǎn)。他們總結(jié)說,應(yīng)該有更多的團(tuán)隊(duì)考慮在將來的工作中使用Rust,該語言可能比Go更適合Kubernetes的開發(fā)。

一種新的編程語言

不久之前,在Rust的啟發(fā)下,微軟開始著手調(diào)研創(chuàng)造自己的編程語言。該項(xiàng)目的負(fù)責(zé)人之一是C#的主要維護(hù)人員,因此這一編程語言似乎是另一種版本的Rust,但在語法上更類似C類編程語言。

這一語言被稱為“Project Verona”,致力于在系統(tǒng)編程中解決內(nèi)存漏洞。一些人推測ProjectVerona可能將在許多微軟主要產(chǎn)品中投入使用,例如Windows、Xbox和Azure。

然而,微軟最終仍沒有實(shí)際應(yīng)用ProjectVerona。微軟的確聲稱該語言已經(jīng)“完全內(nèi)存安全”,但依舊選擇使用Rust。Rust已經(jīng)擁有了完善的社區(qū),并且得到了Mozilla和英特爾等企業(yè)的支持。有了這些企業(yè)的合作,Rust將會(huì)更迅速地成長為更強(qiáng)大的語言。

憑借大型企業(yè)的支持和社區(qū)的不斷發(fā)展,Rust的前途不可限量。在接下來的幾個(gè)月中,即使微軟計(jì)劃以不同方式將Rust納入企業(yè)中也不足為奇。Rust針對微控制器物聯(lián)網(wǎng)設(shè)備也進(jìn)行了良好的優(yōu)化,這些領(lǐng)域的企業(yè)有望將Rust投入使用??梢哉f,Rust的未來一片光明。
責(zé)編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 微軟
    +關(guān)注

    關(guān)注

    4

    文章

    6705

    瀏覽量

    106959
  • C語言
    +關(guān)注

    關(guān)注

    183

    文章

    7634

    瀏覽量

    143910
  • Rust
    +關(guān)注

    關(guān)注

    1

    文章

    237

    瀏覽量

    7402
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    RT-Thread 遇上 Rust:安全內(nèi)核 RusT-Thread 的誕生

    大家好,我們是中國科學(xué)技術(shù)大學(xué)操作系統(tǒng)原理與設(shè)計(jì)(H)課oooooS小組。這個(gè)項(xiàng)目是我們的課程大作業(yè):參考RT-Thread架構(gòu),使用Rust搭建一個(gè)原生的嵌入式操作系統(tǒng)內(nèi)核。初識(shí)Rust是因?yàn)閤k
    的頭像 發(fā)表于 08-02 11:03 ?2869次閱讀
    RT-Thread 遇上 <b class='flag-5'>Rust</b>:安全內(nèi)核 <b class='flag-5'>RusT</b>-Thread 的誕生

    請問OpenVINO? 是否支持 Rust 綁定?

    無法確定OpenVINO?是否支持 Rust 綁定。
    發(fā)表于 06-25 07:45

    主流的 MCU 開發(fā)語言為什么是 C 而不是 C++

    在單片機(jī)的地界兒里,C語言穩(wěn)坐中軍帳,C++想分杯羹?難嘍。咱電子工程師天天跟那針尖大的內(nèi)存空間較勁,C++那些花里胡哨的玩意兒,在這兒真玩不轉(zhuǎn)。先說內(nèi)存這道坎兒。您當(dāng)stm32f4的256kRAM
    的頭像 發(fā)表于 05-21 10:33 ?670次閱讀
    主流的 MCU 開發(fā)語言為什么是 <b class='flag-5'>C</b> 而不是 <b class='flag-5'>C++</b>?

    基于SEGGER的Ozone調(diào)試器和J-Trace工具跟蹤Ferrocene的Rust應(yīng)用

    2025年3月,SEGGER和Ferrous Systems合作,確保使用Ferrous Systems的Ferrocene工具鏈編譯的Rust應(yīng)用程序可以通過SEGGER的J-Trace工具實(shí)時(shí)下載分析。
    的頭像 發(fā)表于 03-14 11:27 ?953次閱讀

    vivo打造最具影響力Rust賽事,點(diǎn)亮基礎(chǔ)軟件事業(yè)的“藍(lán)河時(shí)代”

    在藍(lán)河操作系統(tǒng)創(chuàng)新賽,看見中國Rust生態(tài)的匯聚與發(fā)展
    的頭像 發(fā)表于 02-27 15:08 ?2015次閱讀
    vivo打造最具影響力<b class='flag-5'>Rust</b>賽事,點(diǎn)亮基礎(chǔ)軟件事業(yè)的“藍(lán)河時(shí)代”

    DLP4500怎么確定投影儀開始投影的同時(shí)相機(jī)的c++代碼開始運(yùn)行?

    投影儀通過trig1 鏈接相機(jī),投影儀投圖同時(shí)觸發(fā)相機(jī),相機(jī)采集圖像并傳回電腦,相機(jī)的代碼里需要添加dlp4500的api或sdk代碼嗎,怎么確定投影儀開始投影的同時(shí)相機(jī)的c++代碼開始運(yùn)行
    發(fā)表于 02-18 07:16

    JavaScript與Rust和WebAssembly集成

    偶然一次機(jī)會(huì),接觸了Rust的代碼。當(dāng)時(shí)想給團(tuán)隊(duì)小伙伴做演示,發(fā)現(xiàn)自己并不能在移動(dòng)端按照文檔生成演示demo。我就想,要是Rust代碼能轉(zhuǎn)化成JavaScript就好了。結(jié)果一搜,還真有。
    的頭像 發(fā)表于 01-24 15:43 ?674次閱讀
    JavaScript與<b class='flag-5'>Rust</b>和WebAssembly集成

    Spire.XLS for C++組件說明

    Spire.XLS for C++ 是一款專業(yè)的 C++ Excel 組件,可以用在各種 C++ 框架和應(yīng)用程序中。Spire.XLS for C++ 提供了一個(gè)對象模型 Excel
    的頭像 發(fā)表于 01-14 09:40 ?1145次閱讀
    Spire.XLS for <b class='flag-5'>C++</b>組件說明

    同樣是函數(shù),在CC++中有什么區(qū)別

    同樣是函數(shù),在 CC++ 中有什么區(qū)別? 第一個(gè)返回值。 C語言的函數(shù)可以不寫返回值類型,編譯器會(huì)默認(rèn)為返回 int。 但是 C++ 的函數(shù),除了構(gòu)造和析構(gòu)這兩個(gè)特殊的函數(shù),必須
    的頭像 發(fā)表于 11-29 10:25 ?1146次閱讀

    C7000 C/C++優(yōu)化指南用戶手冊

    電子發(fā)燒友網(wǎng)站提供《C7000 C/C++優(yōu)化指南用戶手冊.pdf》資料免費(fèi)下載
    發(fā)表于 11-09 15:00 ?0次下載
    <b class='flag-5'>C</b>7000 <b class='flag-5'>C</b>/<b class='flag-5'>C++</b>優(yōu)化指南用戶手冊

    MSP430優(yōu)化C/C++編譯器v21.6.0.LTS

    電子發(fā)燒友網(wǎng)站提供《MSP430優(yōu)化C/C++編譯器v21.6.0.LTS.pdf》資料免費(fèi)下載
    發(fā)表于 11-08 14:57 ?0次下載
    MSP430優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器v21.6.0.LTS

    TMS320C6000優(yōu)化C/C++編譯器v8.3.x

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000優(yōu)化C/C++編譯器v8.3.x.pdf》資料免費(fèi)下載
    發(fā)表于 11-01 09:35 ?1次下載
    TMS320<b class='flag-5'>C</b>6000優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器v8.3.x

    TMS320C28x優(yōu)化C/C++編譯器v22.6.0.LTS

    電子發(fā)燒友網(wǎng)站提供《TMS320C28x優(yōu)化C/C++編譯器v22.6.0.LTS.pdf》資料免費(fèi)下載
    發(fā)表于 10-31 10:10 ?0次下載
    TMS320<b class='flag-5'>C</b>28x優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器v22.6.0.LTS

    C語言和C++中結(jié)構(gòu)體的區(qū)別

    同樣是結(jié)構(gòu)體,看看在C語言和C++中有什么區(qū)別?
    的頭像 發(fā)表于 10-30 15:11 ?968次閱讀

    C7000優(yōu)化C/C++編譯器

    電子發(fā)燒友網(wǎng)站提供《C7000優(yōu)化C/C++編譯器.pdf》資料免費(fèi)下載
    發(fā)表于 10-30 09:45 ?0次下載
    <b class='flag-5'>C</b>7000優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器