您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
04 訂閱 英文縮寫名為雙14(如何在c++定義一個學生類以實現平均成績的計算和查詢功能?)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-20 11:06:07【】0人已围观
简介、CyberRT、DDS等。(3)未動科技VP蕭猛認為,“中間”一詞是相對的,當有多層堆疊的時候,每一層都是其上下兩層的中間層,因此,在用“中間件”這個詞的時候,我們需要特別指明它究竟位于“哪兩層之間
(3)未動科技VP蕭猛認為,“中間”一詞是相對的,當有多層堆疊的時候,每一層都是其上下兩層的中間層,因此,在用“中間件”這個詞的時候,我們需要特別指明它究竟位于“哪兩層之間”。按蕭猛的說法,當我們稱“ROS/ROS2 為中間件”時,其含義與 “AUTOSAR AP為中間件”并不是對等的關系。
(4)Vector產品專家蔡守群說,他理解的中間件,“是給App開發提供功能支撐的,對外是沒有功能表征的;但是站在操作系統內核的角度,中間件跟App并沒有本質的區別”。
2.中間件的作用
汪浩偉說:“專用中間件原本是應用程序的一部分,只是很多公司做自動駕駛都需要用到,就被抽象出來了。”
那么,它究竟有什么用?
畢曉鵬認為,自動駕駛中間件最主要的作用是:對下,它能夠去適配不同的OS內核和架構;對上,它能夠提供一個統一的標準接口,負責各類應用軟件模塊之間的通信以及對底層系統資源的調度。
據畢曉鵬解釋,前者,使開發者們無需考慮底層的OS內核是什么,也無需考慮硬件環境是什么,即不僅實現了應用軟件與OS的解耦,也實現了應用軟件與硬件的解耦;而后者則確保了數據能夠安全實時地傳輸、資源進行合理的調度。
為什么要通過中間件來支持軟硬件解耦?畢曉鵬解釋道:
我開發一個應用軟件,其中很多內容都是與具體應用邏輯無關的,包括數據通信、通信安全、系統資源調度等,比如,有十個進程需要數據交互,完全沒有必要在十個程序的軟件代碼里各自進行實現和配置。針對這種情況,我們就可以把重復的部分抽象成一種服務,單獨封成一層東西(這就是中間件),并提供統一的庫、接口和配置方法,供上層去調用。這樣的話,有一部分人專門去做中間件的,而做上層應用的人也不需要考慮跟底層交互的事情。
舉例說,如果要做一個自動泊車系統,它有各個模塊或業務邏輯獨立的不同軟件,在進行通信、數據交互,或者調用底層資源時,只需要中間件的一個接口就可以實現,其他事情不需要考慮,這樣開發人員就可以專注于自己的業務邏輯。
又比如,一個攝像頭需要感知前面的車道線、紅綠燈等,開發人員就專門做紅綠燈和車道線檢測算法,與外界的數據交互只需要使用中間件的通信服務(例如訂閱攝像頭信息,發布檢測結果),而不必關心數據從哪里來、發給誰。
Nullmax紐勱科技系統平臺總監苗乾坤博士在此前的一篇文章中寫道:
“所以我們也可以看到,汽車對軟硬件架構的要求也越來越高,既要能滿足當下的需求,還要具備相當的前瞻性、兼容性和擴展性,能夠支持接下來軟硬件升級換代、增減模塊的需求。而自動駕駛的中間件,就正是這樣一個可以按需調整、滿足各樣需求的現代溫室。
“在早期開發中,中間件可以化整為零,將巨大的軟件工程分解成若干小任務,分散解決。在后期應用時,它又可以化零為整,像拼積木一樣,根據需求將一個個模塊組合成一個整體,嚴絲合縫。”
在春節前的一場直播中,東軟睿馳產品銷售總監安志鵬說,在軟硬件解耦、模塊化管理后,再遇到問題,就不用整個系統都改,只改相對應的部分就行了。這樣,軟件的可復用程度就極大地提升了,同時,驗證的工作量也會減少許多,整體開發效率也會因此提升。
相反,沒有中間件的話,應用層就得直接調用操作系統的接口,后期要是換了操作系統,應用層的代碼和算法可能就要推倒重來。
簡言之,中間件通過對計算平臺、傳感器等資源進行抽象,對算法、子系統、功能采取模塊化的管理,并提供統一接口,讓開發人員能夠專注于各自業務層面的開發,無需了解無關細節。
按東軟睿馳產品銷售總監安志鵬的說法,搞AUTSOAR這樣的中間件,并不是只對OEM有利,“零部件供應商的選擇面也大了——應用做好了,下面的軟件、芯片可以選好幾家供應商的,要比傳統的開發模式快很多,因而,零部件供應商也是受益者”。
用蕭猛的話說,中間件最直接的好處就是“為上層屏蔽底層的復雜性”,軟件開發人員可以忽略芯片、傳感器等硬件的差異,從而高效、靈活地將上層應用及功能算法在不同平臺上實現、迭代、移植。蕭猛認為,中間件可以看做是自動駕駛應用背景下的一項“新基建”。
(圖片摘自馮占軍博士的《AUTOSAR對基礎軟件開發是喜還是憂?》一文。AUTOSAR只是中間件的一種,但這里寫的“AUTOSAR開發優勢”基本也適用于其他中間件。)
不過,站在開發者的角度看,中間件的意義也未必全部是正面的。如馮占軍博士在《AUTOSAR對基礎軟件開發是喜還是憂?》一文中就提到了如下兩點:
底層軟件工程師變成了工具人,“只要你去點點鼠標,用工具配合就可以了”,很多原本由自己做的測試也改由供應商來做,進而導致工程師的成就感嚴重降低;時間久了,工程師從0到1開發的能力也會降低。
(圖片摘自馮占軍博士的文章。盡管文章說的是Autosar,但實際上這些問題在ROS等其他中間件的使用過程中也會存在。)
對軟件工程師來說,中間件造成的“能力退化”這一問題幾乎是無解的。但馮占軍博士認為,“如果這個中間件在開發過程中,有使用公司的工程師深度參與,提出需求并一起實施,會好一些”。
此外,殷瑋在一篇文章提到,使用AUTOSAR這樣的中間件,Tier 1們應該是很不情愿的,“因為不到增加了成本,還有可能逐步淪為硬件生產商”。但這個也不能說是中間件的鍋,在軟件定義汽車大大趨勢下,這幾乎是必然的。
二.常見的基本概念
1. AUTOSAR CP 與 AUTOSAR AP
在所有的中間件方案中,最著名的非AUTOSAR莫屬了。
嚴格地說,AUTOSAR并非特指由某一家軟件公司開發出來的某款操作系統或中間件產品,而是由全球的主要汽車生產廠商、零部件供應商、軟硬件和電子工業等企業共同制定的汽車開放式系統架構標準。不過,在實踐中,各公司基于AUTOSAR標準開發出來的中間件也被被稱為“AUTOSAR”。
當前,AUTOSAR可分為Classic Platform和Adaptive Platform兩個平臺,兩者分別被簡稱為AUTOSAR CP與AUTOSAR AP。
簡單地說,AUTOSAR CP主要跑在8bit、16bit、32bit的MCU上,對應傳統的車身控制、底盤控制、動力系統等功能,如果涉及到自動駕駛的話,AUTOSAR CP可能無法實現;而AUTOSAR AP主要跑在64bit以上的高性能MPU/SOC上,對應自動駕駛的高性能電子系統。
嚴格地說,AUTOSAR CP并不只是個“中間件”,它是相當于“OS內核+中間件”的一套完整的“操作系統”。 AUTOSAR CP定義了基本的上層任務調度、優先級調度等。
在基于分布式架構的ADAS功能中,AUOTSAR CP便是最常見的“操作系統”。在AUTOSAR的生態形成后,很多芯片廠商的MCU上標配的就是AUTOSAR CP,主機廠沒有什么選擇權。
由于分布式架構下的芯片主要是MCU,因此,便有了“AUTOSAR CP主要跑在MCU上”的說法。
在分布式架構下,不同的功能對應著不同的MCU,而每一個MCU上都需要跑一套AUTOSAR CP,若傳感器的類型比較多,則僅ADAS相關功能就需要很多套AUTOSAR CP,那怎么收費呢?
常規的做法是:根據MCU的類型來收費——如果MCU是兩個異構的MCU,那AUTOSAR CP就按兩套來收費;如果MCU是同構的,那AUTOSAR CP就按一套來收費。
隨著EE架構從分布式向集中式演進、芯片由MCU向SOC演進,計算量及通信量成數量級地上升,另外,多核處理器、GPU、FPGA以及專用買粉絲的需求,還有OTA等,都超出了AUTOSAR CP的支持范圍。
(圖片摘自安志鵬的直播課)
2017年,為更好地滿足集中式架構+SOC時代的高等級自動駕駛對中間件的需求,AUTOSAR聯盟推出了通信能力更強、軟件可配置性更靈活、安全機制要求更高的AUTOSAR AP平臺。
需要強調的是,不同于AUTOSAR CP自身已經包含了基于OSEK標準的OS,AUTOSAR AP只是一個跑在Lunix、QNX等基于POSIX標準的OS上面的中間件——它自身并不包含OS。
結合aFakeProgramer于2020年發表在CSDN上的《為什么要用AP?Adaptive AutoSAR到底給企業提供了一些什么?》一文及東軟睿馳安志鵬在2022年春節前的一場直播中講的內容,AUTOSAR CP與AUTOSAR AP最主要的區別有如下幾點:
1).編程語言不同——AUTOSAR CP基于C語言,而AUTOSAR AP基于C++語言;
2).架構不同——AUTOSAR CP 采用的是FOA架構(function-oriented architecture),而AUTOSAR AP采用的則是SOA架構(service-oriented architecture);
3).通信方式不同——AUTOAR CP采用的是基于信號的靜態配置通信方式(LIN\CAN...通信矩陣),而AUTOSAR AP采用的是基于服務的SOA動態通信方式(SOME/IP);
4).連接關系不同——在AUTOSAR CP中,硬件資源的連接關系受限于線束的連接,而在AUTOSAR AP中,硬件資源間的連接關系虛擬化,不局限于通信線束的連接關系;
5).調度方式不同——AUTOSAR CP采用固定的任務調度配置,模塊和配置在發布前進行靜態編譯、鏈接,按既定規則順序執行,而AUTOSAR CP則支持多種動態調度策略,服務可根據應用需求動態加載,并可進行單獨更新。
6).代碼執行和地址空間不同——AUTOSAR CP中,大部分代碼靜態運行在ROM,所有application共用一個地址空間,而在AUTOSAR AP中,應用加載到RAM運行,每個application獨享(虛擬)一個地址空間。
這些區別,帶給AUTOSAR AP的優勢有如下幾點——
1).ECU更加智能:基于SOA通信使得AP中ECU可以動態的同其他ECU同其他ECU進行連接,提供或獲取服務;
2).更強大的計算能力:基于SOA架構使得AP能夠更好地支持多核、多ECU、多SoCs并行處理,從而提供更強大的計算能力;
3).更加安全:基于SOA架構使得AP中各個服務模塊獨立,可獨立加載,IAM管理訪問權限;
4).敏捷開發:Adaptive AUTOSAR服務不局限于部署在ECU本地可分布于車載網絡中,使得系統模塊可靈活部署,后期也能靈活獨立更新(FOTA);
5).高通信帶寬:可實現基于Ether買粉絲等高通信帶寬的總線通信;
6).更易物聯:基于以太網的SOA通信,更易實現無線、遠程、云連接,方便部署V-2-X應用。
(圖片摘自東軟睿馳)
當然了,在某些方面,AUTOSAR AP與AUTOSAR CP相比是有一些“劣勢”的。比如,AUTOSAR CP的時延可低至微秒級、功能安全等級達到了ASIL-D,硬實時;而AUTOSAR AP的時延則在毫秒級,功能安全等級則為ASIL-B,軟實時。
上述區別也導致了兩者應用領域的不同:AUTOSAR CP一般應用在對實時性和功能安全
很赞哦!(2)
相关文章
- 01 youtube music 買粉絲s 2022 r&b(有沒有抖音剪輯培訓教程,還有抖音書單培訓教程,書單文案如何原創?)
- 01 youtube music south african music(用英文來介紹waka waka這首歌)
- 01 中鐵六局海外項目(中國中鐵有幾個局)
- 01 中視頻伙伴計劃播放量怎么少了(西瓜視頻中視頻伙伴計劃審核沒通過,重新發作品,還需要17000的播放量嗎?)
- 01 中鐵二十五局海外事業部(中鐵十一局有多少個分公司?)
- 01 youtube music 買粉絲s songs 2021 playlist(翻譯一下···)
- 01 youtube music windows app 買粉絲 download for(今日新聞淺談:Youtube Music 也加入串流音樂服務大混戰)
- 01 中越貿易額2022(越南訪華時間)
- 01 youtube music 買粉絲s 2023 best(如何在youtubemusic中創建快捷指令)
- 01 youtube music 買粉絲s 買粉絲untry 2022 youtube movies(哪些音樂應用可以免費聽歌?)
热门文章
站长推荐
01 youtube music 買粉絲s download app(有沒有抖音剪輯培訓教程,還有抖音書單培訓教程,書單文案如何原創?)
01 中視頻總播放量怎么查(中視頻的播放量怎么計算的?)
01 youtube music 買粉絲s 2022 playlist youtube download(哪些音樂應用可以免費聽歌?)
01 youtube music to mp3 player播放器免費(如何在youtubemusic中創建快捷指令)
01 中鐵七局集團有限公司海外公司招聘(鄭州中鐵七局海外公司怎么樣)
01 youtube music to apple music(流行英文歌曲(熱門單曲推薦))
01 中證海外中國互聯網50指數在哪看(中概互聯持倉有哪些)
01 中證海外互聯網50指數 持倉股票(中概互聯持倉有哪些)