日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

微軟未來(lái)將使用 Rust 作為 C、C++ 以及其他編程語(yǔ)言的替代方案

DPVg_AI_era ? 來(lái)源:lq ? 2019-07-27 07:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

微軟近日提出,未來(lái)將使用 Rust 作為 C、C++ 以及其他編程語(yǔ)言的替代方案,以改善應(yīng)用程序的安全性的計(jì)劃。

近日,微軟安全響應(yīng)中心(MSRC)團(tuán)隊(duì)在官網(wǎng)更新文章,就近日提出的最新計(jì)劃,即未來(lái)將使用 Rust 作為 C、C++ 以及其他編程語(yǔ)言的替代方案以改善應(yīng)用程序的安全性的計(jì)劃,從空間內(nèi)存安全、時(shí)間內(nèi)存安全、數(shù)據(jù)競(jìng)爭(zhēng)等方面進(jìn)行了進(jìn)一步的深入補(bǔ)充。

首席安全技術(shù)經(jīng)理 Gavin Thomas 表示,開(kāi)發(fā)人員的核心工作不是擔(dān)心安全性,而是做好功能開(kāi)發(fā),首先需要啟用一種 “不會(huì)引入內(nèi)存漏洞隱患” 的開(kāi)發(fā)語(yǔ)言。顯然,這一次的主角是 Rust。

過(guò)去 12 年,約 70% 的微軟補(bǔ)丁針對(duì)內(nèi)存漏洞

如今,內(nèi)存漏洞已成為黑客攻擊的主要對(duì)象。據(jù)微軟最新調(diào)查數(shù)據(jù)顯示,在過(guò)去 12 年里,約 70% 的微軟補(bǔ)丁都是針對(duì)內(nèi)存漏洞的。

自 2004 年以來(lái),微軟安全響應(yīng)中心 (MSRC) 已經(jīng)對(duì)每一個(gè)報(bào)告的微軟安全漏洞進(jìn)行了分類。從所有的分類中,人們得出了一個(gè)令人驚訝的事實(shí):正如 Matt Miller 今年在 BlueHat IL 的演講中所討論的那樣,大多數(shù)修復(fù)的漏洞和分配的 CVE 都是由開(kāi)發(fā)人員無(wú)意中將內(nèi)存損壞錯(cuò)誤插入到其 C 和 C++ 的代碼中造成的。這兩種存在內(nèi)存漏洞風(fēng)險(xiǎn)的編程語(yǔ)言允許開(kāi)發(fā)人員在代碼被執(zhí)行的地方對(duì)內(nèi)存地址進(jìn)行細(xì)粒度控制。開(kāi)發(fā)人員內(nèi)存管理代碼中的一個(gè)錯(cuò)誤可能導(dǎo)致大量?jī)?nèi)存漏洞,攻擊者便可利用這些錯(cuò)誤造成具有危險(xiǎn)性和侵入性的后果,比如遠(yuǎn)程代碼執(zhí)行 (RCE) 和權(quán)限升級(jí)漏洞(EoP)。

數(shù)據(jù)來(lái)源:微軟安全響應(yīng)中心網(wǎng)站

近年來(lái),隨著微軟增加其代碼庫(kù)并在代碼中使用更多的開(kāi)源軟件,這一問(wèn)題并沒(méi)有得以解決,反而變得更糟,而微軟也并不是唯一一個(gè)暴露出內(nèi)存漏洞的企業(yè)。

在官網(wǎng)發(fā)布的最新文章中,微軟安全響應(yīng)中心(MSRC)團(tuán)隊(duì)就如何解決內(nèi)存安全問(wèn)題進(jìn)行了如下分析,

為了解決內(nèi)存安全問(wèn)題,需要采取幾種不同的方式。C++ 中的 “現(xiàn)代” 構(gòu)造(例如 span)能夠在一定程度上預(yù)防某些內(nèi)存安全問(wèn)題。此外,我們應(yīng)盡可能使用其它現(xiàn)代 C++ 功能(例如智能指針)。

然而,現(xiàn)代 C++ 仍然不具備全面的內(nèi)存安全與數(shù)據(jù)爭(zhēng)用機(jī)制。更重要的是,如果程序員不加以運(yùn)用,這些功能本身將毫無(wú)意義;而且這些功能在規(guī)模較大,且較為模糊的代碼庫(kù)可能也無(wú)法奏效。再者,C++ 缺乏能夠在安全抽象當(dāng)中打包不安全代碼的良好工具,這意味著雖然能夠在本地級(jí)別強(qiáng)制執(zhí)行正確的編碼實(shí)踐,但開(kāi)發(fā)人員仍很難在 C 或者 C++ 當(dāng)中構(gòu)建出能夠安全組合的軟件組件。除此之外,我們應(yīng)盡可能將軟件最終遷移至具備全面內(nèi)存安全特性的語(yǔ)言當(dāng)中,例如,通過(guò)運(yùn)行時(shí)檢查以及垃圾回收機(jī)制,實(shí)現(xiàn)內(nèi)存保護(hù)的 C# 或者 F#。畢竟,內(nèi)存管理是一項(xiàng)極為復(fù)雜的功能,最好是確保必要時(shí)才與其打交道。

Rust 的優(yōu)勢(shì)

多年來(lái),微軟始終在尋找更安全的 C 和 C++ 的替代品。2016 年 6 月,微軟曾開(kāi)源 “Checked C”,這是 C 語(yǔ)言的一個(gè)擴(kuò)展,它帶來(lái)了一些解決安全問(wèn)題的新特性,但依然沒(méi)有徹底解決問(wèn)題。由于自動(dòng)內(nèi)存管理,Microsoft 還有其他更安全的編程語(yǔ)言,C#和.NET 系列是一個(gè),編譯為 JavaScript 的 TypeScript 是另一個(gè)。這些語(yǔ)言被 Microsoft 及其客戶廣泛使用,但它們無(wú)法滿足所有需求。對(duì)此,微軟安全響應(yīng)中心(MSRC)首席安全技術(shù)經(jīng)理 Gavin Thomas 表示:“如果開(kāi)發(fā)人員能夠?qū)⒋_保內(nèi)存安全的 .NET,C#等語(yǔ)言與高效的 C ++ 結(jié)合起來(lái),那就太好了。也許我們可以?!?因此,Rust 成為了這項(xiàng)計(jì)劃的主角。

據(jù)了解,Rust 創(chuàng)建于 2006 年,被創(chuàng)建者 Mozilla 稱為 “C / C ++ 的替代品”。最初,它只是 Mozilla 的一個(gè)研究項(xiàng)目,旨在開(kāi)發(fā)更安全、快速的編程語(yǔ)言以重寫(xiě) Firefox 瀏覽器,大多數(shù)開(kāi)發(fā)人員認(rèn)為它是一個(gè)理論項(xiàng)目,而如今 Rust 正在逐步證明自己的實(shí)力。2016 年 8 月發(fā)布的 Firefox 48 采用了以 Rust 構(gòu)建的 mp4 軌道元數(shù)據(jù)解析器,該解析器首次在 Windows 和 32 位 Linux 桌面提供。最近,Brave 瀏覽器用 Rust 替換了最初用 C ++ 編寫(xiě)的廣告攔截組件。Cloudflare 和 Dropbox 目前也在生產(chǎn)系統(tǒng)中運(yùn)行 Rust。

Rust 的顯著特征包括:

零成本抽象

移動(dòng)語(yǔ)義

保證內(nèi)存安全

沒(méi)有數(shù)據(jù)競(jìng)爭(zhēng)的線程

基于特質(zhì)的泛型

模式匹配

類型推斷

最小運(yùn)行時(shí)間

高效的 C 綁定

Rust 團(tuán)隊(duì)表示,它具有豐富的系統(tǒng)和所有權(quán)模型,可確保內(nèi)存安全和線程安全。此外,它還提供文檔,包含集成的包管理器和其他有助于提高開(kāi)發(fā)人員工作效率的工具。更為重要的是,Rust 從一開(kāi)始就設(shè)計(jì)了防止內(nèi)存損壞的漏洞。它的語(yǔ)法也更為簡(jiǎn)單,由它編寫(xiě)的應(yīng)用程序不會(huì)產(chǎn)生相同數(shù)量的錯(cuò)誤,因此開(kāi)發(fā)人員可以專注于擴(kuò)展其應(yīng)用程序,而非進(jìn)行持續(xù)的維護(hù)工作。

根據(jù) StackoverFlow2019 年開(kāi)發(fā)者調(diào)查報(bào)告的數(shù)據(jù)顯示,Rust 是如今最受歡迎的編程語(yǔ)言,因此更容易招募到相關(guān)開(kāi)發(fā)人員。相比之下,在這項(xiàng)調(diào)查中,受訪者將 C 列為第四個(gè)最討厭的編程語(yǔ)言,C++ 則排名第九。

StackoverFlow2019 年開(kāi)發(fā)者調(diào)查報(bào)告數(shù)據(jù)

據(jù)了解,目前,除 Mozilla 之外,全球有數(shù)百家公司正在使用 Rust,如 Amazon、Atlassian、Dropbox、Facebook、Google、Microsoft、Red Hat 和 Reddit 等。在國(guó)內(nèi),百度、字節(jié)跳動(dòng)、 PingCAP、螞蟻金服、知乎、SenseTime 等企業(yè)也都在使用 Rust。

Rust 存在的問(wèn)題

然而,Rust 仍存在一些不足。據(jù)先前的一項(xiàng)調(diào)查顯示,它需要改進(jìn)的方面包括:

更好的人體工程學(xué)

更好的文檔

更好的庫(kù)支持

更簡(jiǎn)單的學(xué)習(xí)曲線

更多的 IDE 支持

一些用戶在談及為何不使用 Rust 的原因時(shí)表示,“盡管學(xué)習(xí)曲線和語(yǔ)言的復(fù)雜性仍是人們學(xué)習(xí) Rust 的阻礙,但令許多人產(chǎn)生共鳴的一個(gè)方面是,只是還沒(méi)有足夠活躍的采用 Rust 的商業(yè)項(xiàng)目讓人們參與其中…… 對(duì)于一些人來(lái)說(shuō),只要有強(qiáng)烈的動(dòng)機(jī),他們就可以克服 Rust 的學(xué)習(xí)曲線?!?此外,受缺少 IDE 支持的影響,約 10% 的用戶正在尋找更好的 IDE 支持,而 5% 的老用戶因此停用 Rust。

對(duì)于這項(xiàng)或?qū)?gòu)建新的語(yǔ)言生態(tài)的計(jì)劃,微軟安全響應(yīng)中心(MSRC)首席安全技術(shù)經(jīng)理 Gavin Thomas 表示,“我們是一個(gè)響應(yīng)組織,但我們也發(fā)揮積極的作用 “,“我們應(yīng)該從一開(kāi)始就努力防止開(kāi)發(fā)人員引入問(wèn)題,而不是為解決問(wèn)題提供指導(dǎo)和工具 “。目前,關(guān)于何時(shí)在其產(chǎn)品或云服務(wù)上使用 Rust,微軟還沒(méi)有具體透露。

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

    關(guān)注

    4

    文章

    6754

    瀏覽量

    108098
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1965

    瀏覽量

    39891
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2131

    瀏覽量

    77417

原文標(biāo)題:微軟計(jì)劃使用 Rust 取代 C 和 C++

文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    C++與lua聯(lián)合編程

    手工業(yè)”。然而,這兩種內(nèi)存管理機(jī)制截然不同的語(yǔ)言,如何在一個(gè)進(jìn)程內(nèi)進(jìn)行高效的數(shù)據(jù)交換,一直是企業(yè)級(jí)開(kāi)發(fā)中的痛點(diǎn)。(看讠果aixuetang。xyz) 從經(jīng)濟(jì)學(xué)的視角來(lái)審視,夏曹俊老師《C++ 腳本編程
    發(fā)表于 04-19 16:27

    C++:const 的空間,常量也能占內(nèi)存?

    ] != BLACK)): return True return False c++語(yǔ)言5g.FsW.dgdfgsg.cnJIWWQc++語(yǔ)言 c++
    發(fā)表于 04-16 19:19

    汽車(chē)網(wǎng)絡(luò)安全開(kāi)發(fā)語(yǔ)言選型指南:C/C++/Rust/Java等主流語(yǔ)言對(duì)比+Perforce QAC/Klocwork工具支持

    汽車(chē)網(wǎng)絡(luò)安全如何選編程語(yǔ)言?C、C++Rust、Java……誰(shuí)更適合AUTOSAR、ISO/SAE 21434?一文了解8種主流
    的頭像 發(fā)表于 12-26 11:13 ?673次閱讀
    汽車(chē)網(wǎng)絡(luò)安全開(kāi)發(fā)<b class='flag-5'>語(yǔ)言</b>選型指南:<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>/<b class='flag-5'>Rust</b>/Java等主流<b class='flag-5'>語(yǔ)言</b>對(duì)比+Perforce QAC/Klocwork工具支持

    C語(yǔ)言C++的區(qū)別及聯(lián)系

    C語(yǔ)言C++到底是什么關(guān)系? 首先C++C語(yǔ)言本來(lái)就是兩種不同的
    發(fā)表于 12-24 07:23

    CC++之間的聯(lián)系

    控制能力,這一點(diǎn)與C語(yǔ)言相似,使得它們?cè)谙到y(tǒng)編程、嵌入式系統(tǒng)等領(lǐng)域都得到廣泛應(yīng)用。 3、發(fā)展歷程: C++正是在C
    發(fā)表于 12-11 06:51

    C語(yǔ)言C++之間的區(qū)別是什么

    區(qū)別 1、面向?qū)ο?b class='flag-5'>編程 (OOP): C語(yǔ)言是一種面向過(guò)程的語(yǔ)言,它強(qiáng)調(diào)的是通過(guò)函數(shù)將任務(wù)分解為一系列步驟進(jìn)行執(zhí)行。 C++
    發(fā)表于 12-11 06:23

    單片機(jī)C語(yǔ)言編程的心得

    寫(xiě)這個(gè)8*8按鍵程序的過(guò)程中,不管是在自己寫(xiě)還是參考別人程序的過(guò)程中,發(fā)現(xiàn)自己對(duì)C語(yǔ)言有些基本知識(shí)點(diǎn)和編程規(guī)范有很多不懂的地方,有些是自己以前的編程習(xí)慣不好,有些就是基礎(chǔ)知識(shí)不扎實(shí)的表
    發(fā)表于 12-08 07:44

    如何調(diào)試和編程CW32F030C8T7?支持哪些調(diào)試工具和編程語(yǔ)言?

    了解如何調(diào)試和編程CW32F030C8T7是開(kāi)發(fā)過(guò)程中的重要環(huán)節(jié)。它支持哪些調(diào)試工具(如JTAG、串口調(diào)試等)和編程語(yǔ)言(如C
    發(fā)表于 12-05 06:48

    為什么單片機(jī)還在用C語(yǔ)言編程

    的缺陷 高級(jí)語(yǔ)言存在的目的是可以實(shí)現(xiàn)更為優(yōu)化的算法,更多的是為了方便的執(zhí)行方案,但是,高級(jí)語(yǔ)言對(duì)程序存儲(chǔ)空間的占用要比匯編和C語(yǔ)言多很多。
    發(fā)表于 11-28 07:37

    C語(yǔ)言編程技巧

    設(shè)計(jì),分層開(kāi)發(fā)代碼,便于理解和維護(hù)。 ?8、避免使用GOTO語(yǔ)句?:盡管GOTO語(yǔ)句在某些情況下仍然有用,但現(xiàn)代編程更傾向于使用函數(shù)和循環(huán)控制結(jié)構(gòu),以提高代碼的可讀性和維護(hù)性。 ?9、利用C語(yǔ)言的靈活性
    發(fā)表于 11-27 06:46

    2025年最佳的嵌入式編程語(yǔ)言有哪些呢?

    語(yǔ)言有哪些呢?今天我們將討論這些語(yǔ)言C、C++Rust、Python和生成式AI提示;以及
    的頭像 發(fā)表于 11-14 10:27 ?1812次閱讀
    2025年最佳的嵌入式<b class='flag-5'>編程</b><b class='flag-5'>語(yǔ)言</b>有哪些呢?

    一文了解Mojo編程語(yǔ)言

    Mojo 是一種由 Modular AI 公司開(kāi)發(fā)的編程語(yǔ)言,旨在將 Python 的易用性與 C 語(yǔ)言的高性能相結(jié)合,特別適合人工智能(AI)、高性能計(jì)算(HPC)和系統(tǒng)級(jí)
    發(fā)表于 11-07 05:59

    技能+1!如何在樹(shù)莓派上使用C++控制GPIO?

    在使用樹(shù)莓派時(shí),你會(huì)發(fā)現(xiàn)Python和Scratch是許多任務(wù)(包括GPIO編程)中最常用的編程語(yǔ)言。但你知道嗎,你也可以使用C++進(jìn)行GPIO編程
    的頭像 發(fā)表于 08-06 15:33 ?4521次閱讀
    技能+1!如何在樹(shù)莓派上使用<b class='flag-5'>C++</b>控制GPIO?

    C++ 與 Python:樹(shù)莓派上哪種語(yǔ)言更優(yōu)?

    Python是樹(shù)莓派上的首選編程語(yǔ)言,我們的大部分教程都使用它。然而,C++在物聯(lián)網(wǎng)項(xiàng)目中同樣廣受歡迎且功能強(qiáng)大。那么,在樹(shù)莓派項(xiàng)目中選擇哪種語(yǔ)言更合適呢?Python因其簡(jiǎn)潔性、豐富
    的頭像 發(fā)表于 07-24 15:32 ?1131次閱讀
    <b class='flag-5'>C++</b> 與 Python:樹(shù)莓派上哪種<b class='flag-5'>語(yǔ)言</b>更優(yōu)?

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

    在單片機(jī)的地界兒里,C語(yǔ)言穩(wěn)坐中軍帳,C++想分杯羹?難嘍。咱電子工程師天天跟那針尖大的內(nèi)存空間較勁,C++那些花里胡哨的玩意兒,在這兒真玩不轉(zhuǎn)。先說(shuō)內(nèi)存這道坎兒。您當(dāng)stm32f4的
    的頭像 發(fā)表于 05-21 10:33 ?1229次閱讀
    主流的 MCU 開(kāi)發(fā)<b class='flag-5'>語(yǔ)言</b>為什么是 <b class='flag-5'>C</b> 而不是 <b class='flag-5'>C++</b>?
    浏阳市| 丰都县| 丘北县| 石景山区| 连城县| 亳州市| 内丘县| 招远市| 保定市| 广饶县| 山阳县| 南通市| 朔州市| 东乡族自治县| 焦作市| 阳新县| 盐津县| 昌都县| 霍州市| 专栏| 鄂伦春自治旗| 五大连池市| 通州市| 团风县| 乌鲁木齐市| 安多县| 星子县| 博客| 湖口县| 华容县| 禄丰县| 高雄市| 玉树县| 白朗县| 建水县| 皮山县| 株洲市| 永靖县| 育儿| 临湘市| 浦江县|