<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > 如何打造開放繁榮的RISC-V嵌入系統生態?

          如何打造開放繁榮的RISC-V嵌入系統生態?

          作者:迎九(EEPW)時間:2023-11-20來源:電子產品世界收藏

          2023 年9 月,嵌入式領域的大事之一是Arm 上市,在美國納斯達克交易所上市,收盤大漲近25%,市值達679 億美元,成為截至當時的本年度美股規模最大的IPO。Arm 上市以后,會不會對 有影響?在嵌入式系統領域,如何打造開放、繁榮的 生態?

          本文引用地址:http://www.ex-cimer.com/article/202311/453084.htm

          2023 年9 月16 日,在甘肅張掖舉辦的“第21 屆CCF 全國嵌入式系統大會”上,中科院軟件所副所長、總工程師、研究員、博士生導師武延軍做了主題報告,介紹了嵌入式軟件生態及 嵌入系統生態的打造思考。

          武延軍還是開放原子基金會開源安全委員會主席,OpenHarmony 項目群的技術指導委員會的委員,openEuler 項目群的委員會副主席,中國開放指令集(RISC-V) 聯盟的開源軟件工作組組長。

          1 開源軟件:嵌入式主流系統的發展模式

          1.1 什么是IT生態

          從軟硬件生態的示意(圖1)上,可以看到底層的硬件公司中,大概有2000 多家的國內芯片設計企業,全球有2 萬家半導體企業。上層是設備/用戶和開發者。其中,設備/ 用戶包括100億的可穿戴設備,1 萬億的物聯網終端,50 億部手機,30 億臺PC,10 億臺服務器;開發者方面,全球有9400 萬的開發者,再加上其他的平臺,全球約有1 億的開發者,安卓和蘋果共有1000 萬的APP,全球有1百萬家軟件企業。

          1700444827113649.png

          圖1 軟硬件生態

          如果中間沒有基礎軟件,可能面臨什么問題?設備用戶直接去面向硬件公司。由于數量懸殊,硬件公司會面臨巨大的壓力。例如用戶買了一臺臺式機或筆記本電腦,處理器是英特爾的,如果用戶在使用過程中遇到了問題,或者裝軟件、下載新應用有了問題,不會直接去找英特爾,因為在生態中有了基礎軟件,把硬件公司、開發者以及設備/ 用戶給連接起來了,使他們之間不需要去直接交互,而是通過基礎軟件/ 軟件,形成一個很自然的網狀連接,這樣整個生態就形成了。

          1.2 生態的主導權意味著巨大的商業價值

          從先進國家的發展經驗看,企業經歷了產品競爭,產業鏈競爭,正在向產業生態競爭的方式進化。實際上,信息技術(IT)產業的核心競爭力是生態,生態的核心是基礎軟件(操作系統)。例如IT 業市值萬億美元的4 大企業是:微軟、蘋果、亞馬遜、谷歌。它們都有一個共性:是生態的主導者。

          生態的主導也是通過軟件去實現的,例如微軟的Windows 操作系統,雖然微軟有很多的產品,諸如Office 辦公軟件、云平臺等現在是主要的收入來源,Windows 現在已經不是其最大的收入來源,但是微軟是通過Windows 主導了生態。此外還有像谷歌的安卓、蘋果的iOS、亞馬遜的AWS 等,都是主導生態的關鍵操作系統/ 軟件。

          1.3 嵌入式系統領域有沒有生態壟斷?

          在嵌入式領域也存在生態。以FreeRTOS 為例,其是嵌入式領域用得最多的一種操作系統,自稱曾經占到了全球嵌入式操作系統70% 的市場,現在已經被亞馬遜主導、收購。FreeRTOS 在其主頁中,稱其優勢之一是有廣泛的生態系統支持,具體的表現是有40 多種架構、上千種芯片的支持,有各種各樣的模塊化的庫,組裝起來有FreeRTOS 的代碼,有眾多的合作伙伴。這個生態圈有沒有壟斷? 從FreeRTOS 網站查一下所支持的芯片列表,發現有40 多種MCU、上千個型號,但是里面沒有被美國禁運的實體清單里的公司,可見有壟斷。

          1.4 生態壟斷如何破局?

          如果用一句話來概括,就是:我們需要打造一個開放繁榮的軟件開源機制。

          這種開源機制的產生可以追溯到上世紀80 年代,當年世界自由軟件運動的創始人——理查德·斯托曼(Richard Stallman) 喊出了一個口號:Free software isfreedom( 自由軟件就是自由)。這個口號曾經激勵了幾代程序員。

          現在有了新的口號,2017 年圖靈獎得主、發明RISC-V 的大衛·帕特森(David Patterson)教授等人的初衷是:instruction sets want to be free( 指令集希望是自由的)。

          把二者結合起來,一個是倡導開源的軟件,一個是開源的指令集,其實背后包含了開源的芯片/ 硬件,構成了生態壟斷破局的機遇。

          2 RISC-V:嵌入式指令集架構的發展方向

          2.1 開源模式下,軟件也有供應鏈

          開源現在已經普遍被使用,有報告稱物聯網和移動應用領域里都發現了開源代碼。開源在國內的使用比例也非常高。

          如果對照硬件,開源模式下的軟件也有供應鏈。對于硬件產品,可以分解成各種元器件、零部件。如果把操作系統/ 開源軟件進行分解,也有很多模塊庫,也是由很多的“元器件”組成的。就像國產大飛機C919 是由上萬個零件構成,其實操作系統/ 開源軟件也是由大小不同的零部件,按照依賴次序進行組裝和優化。即,開源操作系統的構建= 開源軟件供應鏈的整合優化的構成,這是openEuler 社區剛成立時的成員共識。

          從具體的數據看一下主流的操作系統,每種操作系統的背后的軟件包數量約為3 萬個左右,背后參與的開發人員數量也在幾千人的數量級。

          這還僅僅是包(package) 這一級。如果把它們拆分到文件、函數級別,或者再把它進一步拆分成“代碼切片”級,數量會非常龐大。所以把它比作C919 大飛機。

          如何去描述這種現象?這就是“開源軟件供應鏈”。狹義地講,之前有SBOM(軟件料單),對應的是硬件解決方案里的物料清單(BOM),像一個樹狀或筒狀結構。但“軟件料單”不能全面反映軟件之間的依存關系。如果進行廣義的定義,“開源軟件供應鏈”更為合適。

          2.2 “開源軟件供應鏈”的定義

          “開源軟件供應鏈”的定義是:實際業務系統在開發和運行過程中,涉及的所有開源軟件上游項目(Upstream)、源碼包(Source Package)、二進制包(Binary)、包管理器(Package Manager)、倉庫(Repository)以及開發者(Developer) 和維護者(Maintainer)、社區(Community)、基金會(Foundation)、廠商(Vendor)、用戶(User) 等,按照依賴(Depend)、打包(Package)、構建(Build)、托管(Host)、協作(Collaborate)、指導(Guide)、交付(Deliver)、反饋(Feedback) 等關系形成的供應鏈網絡。

          這個定義是較新的版本,2017 年時還沒有這么完整。這一版把開發者、社區、基金會,包括用戶等也放到供應鏈的列表里。

          在這個概念的基礎上,中科院軟件所開始建設“源圖”開源軟件供應鏈的平臺,之后升級為一項重大基礎設施,至今已經歷了多個版本。2023 年8 月21 日發布3.0版時,已覆蓋1.4 億款以上的開源軟件,代碼行數已達到1892 億行,開源許可證3257 個。

          “源圖”一直在進化。9 月15 日,數據又有所更新。蘋果的iOS、亞馬遜的AWS 等,都是主導生態的關鍵操作系統/ 軟件。

          1.3 嵌入式系統領域有沒有生態壟斷?

          在嵌入式領域也存在生態。以FreeRTOS 為例,其是嵌入式領域用得最多的一種操作系統,自稱曾經占到了全球嵌入式操作系統70% 的市場,現在已經被亞馬遜主導、收購。FreeRTOS 在其主頁中,稱其優勢之一是有廣泛的生態系統支持,具體的表現是有40 多種架構、上千種芯片的支持,有各種各樣的模塊化的庫,組裝起來有FreeRTOS 的代碼,有眾多的合作伙伴。

          這個生態圈有沒有壟斷? 從FreeRTOS 網站查一下所支持的芯片列表,發現有40 多種MCU、上千個型號,但是里面沒有被美國禁運的實體清單里的公司,可見有壟斷。

          1.4 生態壟斷如何破局?

          如果用一句話來概括,就是:我們需要打造一個開放繁榮的軟件開源機制。

          這種開源機制的產生可以追溯到上世紀80 年代,當年世界自由軟件運動的創始人——理查德·斯托曼(Richard Stallman) 喊出了一個口號:Free software is freedom( 自由軟件就是自由)。這個口號曾經激勵了幾代程序員。

          現在有了新的口號,2017 年圖靈獎得主、發明RISC-V 的大衛·帕特森(David Patterson)教授等人的初衷是:instruction sets want to be free( 指令集希望是自由的)。

          把二者結合起來,一個是倡導開源的軟件,一個是開源的指令集,其實背后包含了開源的芯片/ 硬件,構成了生態壟斷破局的機遇。

          2 RISC-V:嵌入式指令集架構的發展方向

          2.1 開源模式下,軟件也有供應鏈

          開源現在已經普遍被使用,有報告稱物聯網和移動應用領域里都發現了開源代碼。開源在國內的使用比例也非常高。

          如果對照硬件,開源模式下的軟件也有供應鏈。對于硬件產品,可以分解成各種元器件、零部件。如果把操作系統/ 開源軟件進行分解,也有很多模塊庫,也是由很多的“元器件”組成的。就像國產大飛機C919 是由上萬個零件構成,其實操作系統/ 開源軟件也是由大小不同的零部件,按照依賴次序進行組裝和優化。即,開源操作系統的構建= 開源軟件供應鏈的整合優化的構成,這是openEuler 社區剛成立時的成員共識。

          從具體的數據看一下主流的操作系統,每種操作系統的背后的軟件包數量約為3 萬個左右,背后參與的開發人員數量也在幾千人的數量級。

          這還僅僅是包(package) 這一級。如果把它們拆分到文件、函數級別,或者再把它進一步拆分成“代碼切片”級,數量會非常龐大。所以把它比作C919 大飛機。如何去描述這種現象?這就是“開源軟件供應鏈”。狹義地講,之前有SBOM(軟件料單),對應的是硬件解決方案里的物料清單(BOM),像一個樹狀或筒狀結構。但“軟件料單”不能全面反映軟件之間的依存關系。如果進行廣義的定義,“開源軟件供應鏈”更為合適。

          2.2 “開源軟件供應鏈”的定義

          “開源軟件供應鏈”的定義是:實際業務系統在開發和運行過程中,涉及的所有開源軟件上游項目(Upstream)、源碼包(Source Package)、二進制包(Binary)、包管理器(Package Manager)、倉庫(Repository)以及開發者(Developer) 和維護者(Maintainer)、社區(Community)、基金會(Foundation)、廠商(Vendor)、用戶(User) 等,按照依賴(Depend)、打包(Package)、構建(Build)、托管(Host)、協作(Collaborate)、指導(Guide)、交付(Deliver)、反饋(Feedback) 等關系形成的供應鏈網絡。

          這個定義是較新的版本,2017 年時還沒有這么完整。這一版把開發者、社區、基金會,包括用戶等也放到供應鏈的列表里。

          在這個概念的基礎上,中科院軟件所開始建設“源圖”開源軟件供應鏈的平臺,之后升級為一項重大基礎設施,至今已經歷了多個版本。2023 年8 月21 日發布3.0版時,已覆蓋1.4 億款以上的開源軟件,代碼行數已達到1892 億行,開源許可證3257 個。

          “源圖”一直在進化。9 月15 日,數據又有所更新。

          “源圖”對整個開源世界的數據做兩項工作:①采集,②把數據進行二次加工處理。

          截至9 月15 日晚,“源圖”數據比8 月21 日的代碼行數多了200 多億行,是一直在持續變化?!霸磮D”有很多作用,例如合規性檢測、漏洞檢測等。還有一個作用是對國產操作系統與社區的全方位保障。因為近幾年,很多企業、機構在聯合構建國產操作系統的社區,現在社群較多,希望這些根社區不是打著社區的幌子,而是真的很活躍,有實際的貢獻,有大量的開發人員聚集,有軟件的快速迭代。因此,中科院軟件所對這些根社區去做實時的監測和風險評估。

          “源圖”還有很多其他功能,以API 的方式開放出來,至今有180 多個API,希望與各界合作。

          2.3 RISC-V是嵌入式指令集架構的發展方向

          指令集架構(簡稱指令集,ISA)是計算機系統中軟硬件的分界線,或交互規范標準,是軟硬件生態的起始原點。

          指令集不一定能決定硬件/ 芯片的性能高低,也不一定能決定上層的應用軟件的工作,但是能決定軟硬件的協作方式和發展方向。

          最早指令集的出現是為了解決機器兼容和軟硬件解耦的問題,例如IBM System/360 的4 種不同型號的大型機,如果需要一套軟件在上面運行,就需要一套統一的指令集,叫One ISA to rule them all( 一個ISA 統治了他們所有人),像“指環王”里的“至尊魔戒”。M.V. Wilkes(注:英國劍橋大學教授,1951 年首先提出微指令和微程序)和Fred P. Brooks( 注:IBM 360 操作系統之父) 在指令集上面做了巨大的貢獻。

          Wintel 時代的微軟和英特爾聯盟,移動智能手機時代的AA(Arm 與Android) 聯盟,都占據了IT 生態的價值高地。所以盡管整個IT 領域中,很多標準規范是開放的,但是ISA 里沒有,x86、IBM 360、Arm 都有私有的指令集,是由公司主導的。

          2.4 為何指令集領域長期缺乏開放標準?

          這是歷史形成的。例如IBM 最早成立時,就是為自己私有的大型機來做的操作系統。之后IT 業延續了這種方法,上世紀70 年代大約有二三十種不同的指令集,最后經過一系列的比拼后,x86 才勝出。到2010年代時,Arm 在移動和嵌入式領域也勝出了。所以x86和Arm 是通過殘酷的商業競爭形成的,也是它們的一種很重要的商業掌控手段,所以兩家公司都很難去把它開放出來。即便Arm 比x86 稍好一些,客戶可以去獲得授權,公版可獲得永久授權,但是Arm 還是不會去把其變成一個像RISC-V 一樣全開源的情況。包括現在Arm 上市的賣點之一就是指令集是自己掌握的。

          RISC-V 的愿景是:RISC-V 是一個自由開放的ISA,通過開放標準協作實現處理器創新的新時代。因此,RISC-V ISA 在架構上提供了一個新的自由、可擴展的軟件和硬件自由層次,為未來50 年的計算設計和創新鋪平了道路?;凇皹藴省焙汀拔磥?0 年”這兩個特點,因此最有可能成為指令集的未來國際標準。

          其實指令集非常簡單,以RISC-V 為例,它包含基礎指令集、標準擴展指令集和用戶自定義擴展指令集。RISC-V 基礎指令集的標準規范已經發布。

          RISC-V 的設計理念有很多特點,包括簡潔、開放、先進、模塊化、穩定、免授權?,F在發展速度也非???,RISC-V 國際基金會(RVI)的全球會員數已經超過了3800 家。

          2.5 RISC-V是我國眾多軟件學科方向的一次復興機遇

          從RVI 的官方網站里可以看到,RISC-V 在基礎軟件領域里需要圖2 右側的技術和產品。對應的學科方向是左邊的。這些都是軟件領域非常核心的方向,特別是有些方向可能許多高校因為在過去20 多年內沒有應用場景,課程已不再開設了,這非??上?,但在RISC-V階段確實是我國基礎軟件部門一次很久都沒有過的重復造籠子的機會。

          通常認為“重復造籠子”是貶義的,是重復和模仿,但問題是我們沒造過籠子。我們現在使用的基礎軟件大都是在美國上世紀60 年代到90 年代內形成的一套軟件系統之上,即便在2010 年代,我們也沒趕上,例如像安卓這樣的新的主流操作系統。所以RISC-V 可能給了我們一個機會,包括編譯器、虛擬機、環境、模擬器等,甚至包括安全等,都可以從全新的視角去打造。

          1700445750257899.png

          圖2

          3 開放繁榮的生態:嵌入式系統的發展目標

          3.1 “細腰”是生態的核心之一

          首先,RISC-V 的軟件在日趨豐富,基本的軟件生態框架已經搭起來了,但是它未來要走向成功,一定要跟x86、Arm 去比拼,RISC-V 的愿景是未來三分天下必有其一。怎么能做到這一點?核心就是要比x86 和Arm 有更高的生態效率。

          生態效率如何決定?從生態學的啟示看:①要有足夠豐富多樣的支持,例如大量的開源軟件代碼、文檔手冊以及社區的開發人員互助等,②為了防止碎片化、技術多樣化,需要有一個細腰的生態模型,這是從IT 生態里總結出來,中間會有一個細腰。細腰是什么?往往就是標準規范,是行業最容易達成共識的。

          如圖3,圍繞細腰的往上和往下,也是一個更容易達成共識的部分,例如上面的基礎軟件,下面的通用IP、EDA 工具等。細腰的共識部分越多,生態就越容易達成。

          1700445859716987.png

          圖3

          未來理想的生態應該是這樣一個模型:中間是指令集規范,往上是基礎軟件的開發以及基礎運行軟件的環境,這些希望是開源免費的。底下還有通用EDA 工具,希望也是開源、免費的工具。

          由此構成一個堅強的細腰,向上能夠支撐千行百業的應用場景,向下有成千上萬的芯片。

          現在已經看到有這樣的發展勢頭。例如在2023 年8 月,RISC-V 中國峰會召開,這是與北美和歐洲峰會并列的三大峰會。我們非常高興地看到了展示區有各種RISC-V 的設備出現,例如數據中心的服務器,還有交換機、筆記本、平板,甚至有手機、小型智能終端、攝像頭等安防設備等。

          為了防止碎片化,我們一定要把中間的細腰做好。貢獻。老師們不一定要去參與到商業里去跟x86、Arm 去競爭。

          生態是慢慢形成的,就像20 年前,Arm 剛進入嵌入式領域時,很多人看相關的書籍和用開發板學嵌入式,但是不知不覺地發現Arm 開發者越來越多了,生態變得越來越大?,F在也有RISC-V 相關的教材和開發板,相信再過5~10 年,人們會發現在整個開發者比例中,RISC-V 占了很大的優勢,這時候RISC-V 生態就形成了。

          4 中科院軟件所做的工作

          中科院軟件所正在打造國內開源的“根”社區,致力于打造國產的開源社區,希望在社區里有自己的成果和產品。開源歐拉操作系統(openEuler)社區是面向數字基礎設施的操作系統社區,開源鴻蒙操作系統(OpenHarmony)社區有活躍的參與者,是面向萬物智能互聯的操作系統社區。過去幾年,中科院軟件所在這兩個社區里,在高校、科研院所中影響力領先。

          關于RISC-V 的機遇,需要用共治共享共建的開源基礎軟件的模式去打造,一是軟件所做了PolyOS,可謂開發板的萬能適配器,無論什么樣的RISC-V開發板,在PolyOS 上都可以快速地構建它的操作系統。另一個是面向開發者的萬能工具箱RuyiSDK,這和嵌入式有點關系,因為現在有很多的開發板或機器還需要用交叉編譯的方式去做。軟件所還做了一些與嵌入式相關的基礎設施,例如OpenOCD,包括ADB 調試工具鏈,2023年6 月底已經發布了第一個版本。

          前期,中科院軟件所已完成了對RISC-V 的服務器和桌面辦公環境的軟件適配,保障了國產RISC-V 服務器和筆記本的率先批量出貨。

          服務器和筆記本軟件方面,軟件所也已完成了很多適配,例如基于RISC-V 的傳統的視頻播放、收發郵件、客戶端、瀏覽器等等,也完成了很多服務端的項目,諸如openGDK 這些基礎的方面。

          RISC-V 嵌入式生態的寒武紀即將到來,一定會有大量的RISC-V 相關的設備持續不斷地涌現。為了順應這一潮流,2023 年9 月算能生態部、軟件所PLC 實驗室、海外RVI 等單位在開展 “全球捐贈計劃”,捐贈1 萬塊RISC-V開發版給社群,特別是給高校去做教學科研,希望國內高校在RISC-V 嵌入式領域培養更多的人才。軟件所一直是把兩句話當做使命:①讓RISC-V 成為指令級的國際標準。②讓基礎軟件成為全人類的數字公共品。更希望中國在這次RISC-V 及開源變革中,能夠抓住機遇,占據戰略高地。

          (本文來源于EEPW 2023年11月期)



          評論


          相關推薦

          技術專區

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();