首頁 > 新能源汽車

汽車操作系統(tǒng)開發(fā)要考慮哪些問題?

來源:新能源汽車網(wǎng)
時間:2022-07-11 18:01:59
熱度:

汽車操作系統(tǒng)開發(fā)要考慮哪些問題?汽車操作系統(tǒng)隨著汽車智能化的發(fā)展越來越發(fā)重要,我之前一篇文章《汽車操作系統(tǒng)概覽 101》大概介紹了什么是汽車操作系統(tǒng)。顯然對于操作系統(tǒng)來講,這是IT

汽車操作系統(tǒng)隨著汽車智能化的發(fā)展越來越發(fā)重要,我之前一篇文章《汽車操作系統(tǒng)概覽 101》大概介紹了什么是汽車操作系統(tǒng)。顯然對于操作系統(tǒng)來講,這是IT電腦界玩了幾十年的東西,但是到了汽車上面顯得不是那么簡單,好像又是一個新的種類,吸引了大量的人力和資金,所以本文根據(jù)相關(guān)文章進(jìn)行整理來看看。

為什么汽車操作系統(tǒng)復(fù)雜?

汽車操作系統(tǒng)開發(fā)要考慮哪些問題?

汽車操作系統(tǒng)未來趨勢發(fā)展?

希望能給大家一些知識和信息幫助,幫助大家看懂汽車操作系統(tǒng)。

復(fù)雜的汽車操作系統(tǒng)

操作系統(tǒng)提供計算機(jī)硬件和應(yīng)用程序之間的接口。通過遵循編程到操作系統(tǒng)中的規(guī)則和程序來限制應(yīng)用程序使用硬件。操作系統(tǒng)還包括簡化應(yīng)用程序開發(fā)和執(zhí)行的服務(wù)。這些服務(wù)包括管理應(yīng)用程序?qū)⑹褂玫乃杏布Y源——將程序加載到內(nèi)存中、與傳感器和執(zhí)行器通信、存儲結(jié)果以及許多其他功能。

所以廣義的操作系統(tǒng)范圍非常廣泛,小到一個芯片上運(yùn)行的輸入輸出;大到多個多個芯片組成的域或者異構(gòu)芯片上運(yùn)行的交互系統(tǒng)。

當(dāng)前汽車操作系統(tǒng)面對的復(fù)雜性體現(xiàn)在——多ECU,豪車高達(dá)150多個ECU,就特斯拉Model Y ECU也多達(dá)26個 ,多種沖突需求,以及不斷發(fā)展的新ECU,所以汽車操作系統(tǒng)的復(fù)雜性體現(xiàn)在如下幾個方面:

汽車操作系統(tǒng)能力范圍需求廣泛:

單任務(wù)和多任務(wù)操作系統(tǒng),有些系統(tǒng)需要講究時效性,有些系統(tǒng)需要同時運(yùn)行多個程序。

單用戶和多用戶操作系統(tǒng),可以支持一個用戶或者多個用戶在線,未來汽車是需要跟電腦一樣,不同的用戶登陸進(jìn)去有不同的模式和應(yīng)用。

一體化內(nèi)核和微內(nèi)核操作系統(tǒng),微內(nèi)核有模塊化結(jié)構(gòu)

虛擬機(jī)管理程序操作系統(tǒng),可以支持多個系統(tǒng)共存運(yùn)行

功能安全認(rèn)證操作系統(tǒng),ISO26262 和ASIL 評級認(rèn)證

多控制單元ECU對操作系統(tǒng)的不同需求

當(dāng)前汽車動輒幾十個ECU,相對電腦手機(jī)一個或者幾個他的復(fù)雜的應(yīng)用需求更多,例如娛樂系統(tǒng)和智能駕駛ECU需求不同

有的ECU需要功能安全,通常需要實(shí)時響應(yīng)

有的需要融合多個ECU,例如域控里面的ECU 集合。

多控制單元ECU導(dǎo)致操作系統(tǒng)的多生態(tài)支持

軟件平臺的生態(tài),軟件平臺來支持操作系統(tǒng)

軟件開發(fā)支持生態(tài),多種選擇來支持ECU軟件開發(fā)

芯片處理器的支持,系統(tǒng)是否支持多種芯片平臺運(yùn)行

ECU軟件開發(fā),傳統(tǒng),現(xiàn)代,發(fā)展并存

一體化的開發(fā)環(huán)境,傳統(tǒng)ECU軟件創(chuàng)建方法

網(wǎng)絡(luò)為中心的開發(fā)平臺,增長軟件創(chuàng)建方法功能安全軟件開發(fā),新興軟件創(chuàng)建方法

依然不斷出現(xiàn)的新興ECU需求

網(wǎng)絡(luò)安全的軟硬件,組成操作系統(tǒng),嵌入式以及云端軟件

OTA實(shí)時軟件升級,操作系統(tǒng)支持,嵌入式以及云端軟件

車聯(lián)網(wǎng)以及ECU數(shù)據(jù)提取,操作系統(tǒng)支持,嵌入式以及云端軟件所以汽車的操作系統(tǒng)復(fù)雜性,伴隨著汽車供應(yīng)鏈的歷史和發(fā)展,短時間還難以消除,但長期應(yīng)該是化繁為簡,需要幾個十年的發(fā)展過程。

汽車操作系統(tǒng)的開發(fā)

開發(fā)操作系統(tǒng)大概是目前主機(jī)廠們都在暗暗較勁的一個主要項目,但顯然汽車操作系統(tǒng)很多種類。一般我們談汽車系統(tǒng)都會聽到以下:

操作系統(tǒng)內(nèi)核,操作系統(tǒng)內(nèi)核包括管理硬件和軟件的所有關(guān)鍵功能。操作系統(tǒng)一般可以分為兩種:宏內(nèi)核和微內(nèi)核操作系統(tǒng)。宏內(nèi)核架構(gòu)包括內(nèi)核空間中的所有核心操作系統(tǒng)功能——所有系統(tǒng)調(diào)用和操作系統(tǒng)服務(wù)都集中在一個地方。Linux 是領(lǐng)先的宏內(nèi)核操作系統(tǒng)。

微內(nèi)核操作系統(tǒng)具有幾乎最少數(shù)量的軟件,可以提供實(shí)現(xiàn)操作系統(tǒng)所需的機(jī)制。額外的操作系統(tǒng)服務(wù)被組織為分層服務(wù),可以根據(jù)需要由微內(nèi)核激活。這意味著微內(nèi)核操作系統(tǒng)具有模塊化架構(gòu)。優(yōu)點(diǎn)是微內(nèi)核具有較小的代碼空間,并且可以比單片內(nèi)核操作系統(tǒng)更安全。模塊化操作系統(tǒng)結(jié)構(gòu)更適合大多數(shù)汽車 ECU。QNX 是領(lǐng)先的微內(nèi)核操作系統(tǒng),還有國內(nèi)的華為鴻蒙系統(tǒng)某些領(lǐng)域應(yīng)用分支。

hypervisor虛擬機(jī),hyervisor虛擬機(jī)管理程序是一個小型軟件平臺,用于管理多個操作系統(tǒng)平臺及其應(yīng)用程序。虛擬機(jī)從1960年代一直用于計算機(jī)行業(yè),是 IT 數(shù)據(jù)中心的一項關(guān)鍵技術(shù)。它不是什么新鮮技術(shù),但現(xiàn)代智能汽車由于對于安全以及開放生態(tài)的需求,所以hypervisor應(yīng)用非常廣泛,例如《蘋果最新發(fā)布的下一代Car Play是一個汽車操作系統(tǒng)?》中分享的車機(jī)顯示中的儀表和中控系統(tǒng)通常就運(yùn)行了hypervisor

功能安全操作系統(tǒng),許多 ECU 需要具有功能安全認(rèn)證的操作系統(tǒng)。這意味著需要具有各種汽車安全完整性等級 (ASIL) 的 ISO 26262 認(rèn)證。該標(biāo)準(zhǔn)確定了四種 ASIL:ASIL A、B、C 和 D。ASIL D 是具有最高的完整性要求。所有基于 AUTOSAR 的操作系統(tǒng)《汽車行業(yè)軟件主流標(biāo)準(zhǔn) - 自適應(yīng)AUTOSAR與傳統(tǒng)AUTOSAR》——例如 Vector 的 Microsar 操作系統(tǒng)、ETAS 的 RTA-OS 和 Elektrobit 的 EB Tresos 安全操作系統(tǒng),都具有功能安全等級。還有汽車 ECU 中常用的其他三種產(chǎn)品:Green Hills Integrity RTOS、Wind River 《為什么風(fēng)河軟件Wind River Systems受到T1安波福的青睞?》VxWorks 和 BlackBerry QNX。

功能安全操作系統(tǒng)一般都是管理小范圍ECU,無法管理具有大型復(fù)雜軟件代碼的 ECU,例如信息娛樂系統(tǒng)和新興領(lǐng)域的高級駕駛員輔助系統(tǒng) (ADAS) ECU 和自動駕駛汽車 (AV) ECU,但QNX 是個例外,它是信息娛樂領(lǐng)域的領(lǐng)導(dǎo)者,在 ADAS 和 AV 域控方面也有很多應(yīng)用例,如《小鵬的自動駕駛XPILOT以及智能座艙Xmart OS》小鵬的自動駕駛運(yùn)行代碼運(yùn)行在QNX。

信息娛樂中對高性能操作系統(tǒng)的需求為 Linux 版本打開了大門,并使其成為過去五年中最受歡迎的信息娛樂操作系統(tǒng)。Linux 的一個缺點(diǎn)是缺乏功能安全認(rèn)證。當(dāng)需要功能安全應(yīng)用的開發(fā)系統(tǒng)時候,虛擬機(jī)hypervior就出來幫助運(yùn)行一個安全功能。目前Linux 眾多汽車機(jī)構(gòu)都在發(fā)力研究,所以在不久的將來會有越來愈多的功能安全版本。

開發(fā)汽車操作系統(tǒng)最難的是操作系統(tǒng)生態(tài)以及開發(fā)支持,操作系統(tǒng)成功的關(guān)鍵是龐大的支持生態(tài)系統(tǒng)。支持操作系統(tǒng)的軟件平臺越多,它就越成功,這就是為什么華為的鴻蒙系統(tǒng)成不成功,不是華為能不能做出系統(tǒng),而是以后華為鴻蒙到底能不能做出生態(tài)來,這才是最重要的,安卓為什么能夠流行,想想安卓現(xiàn)在的生態(tài)覆蓋多么廣。

操作系統(tǒng)生態(tài)首先是要能夠在多種芯片上運(yùn)行,也就是要有芯片生態(tài)。現(xiàn)在汽車 ECU 大多都是基于 ARM 的IP為主的微處理器為主,所以系統(tǒng)基本上緊盯著ARM的架構(gòu)IP。

另外所有 MCU 應(yīng)用軟件都必須通過操作系統(tǒng)運(yùn)行,這意味著成功的操作系統(tǒng)應(yīng)該有良好的軟件開發(fā)生態(tài)支持。目前車載處理器的復(fù)雜性和工作量不斷增加。傳統(tǒng)的 ECU 軟件開發(fā)最初是通過來自多個供應(yīng)商的軟件開發(fā)套件 (SDK) 完成的。

軟件定義汽車時代,SDK 已被集成開發(fā)環(huán)境 (IDE) 所取代,這些環(huán)境具有更好的功能并已擴(kuò)展到基于 Web 的 IDE 系統(tǒng),可以讓主機(jī)廠實(shí)現(xiàn)車端和云端數(shù)據(jù)互通。Eclipse IDE 已成為汽車和許多其他行業(yè)最流行的軟件開發(fā)系統(tǒng)。Eclipse 由 Eclipse 基金會管理,該基金會是 IBM 于 2001 年創(chuàng)立的非營利性公司。

現(xiàn)在隨著軟件定義汽車的呼聲越來越強(qiáng)烈,以 Web 為中心的軟件開發(fā)正在迅速發(fā)展,顛覆傳統(tǒng)汽車軟件開發(fā),例如亞馬遜 AWS 尤其活躍。AWS 正在建立合作伙伴關(guān)系,以滿足對包含 SaaS 功能的更好軟件開發(fā)的需求。微軟Microsoft Azure 和其他公司也在經(jīng)歷類似的增長。

汽車操作系統(tǒng)開發(fā)還需要關(guān)注新興的ECU需求,操作系統(tǒng)還需要整合對新興技術(shù)需求的支持。例如:

網(wǎng)絡(luò)安全最為重要,所有操作系統(tǒng)都將安全作為核心功能。額外的硬件、軟件和基于云的網(wǎng)絡(luò)安全正在成為軟件定義車輛的標(biāo)準(zhǔn),并且需要盡可能多的支持,包括來自操作系統(tǒng)的支持。

OTA 軟件更新也越來越重要,并且可以使用操作系統(tǒng)服務(wù)的額外支持。OTA 平臺的嵌入式軟件和云功能的功能正在增加。

ECU 數(shù)據(jù)提取是第三類,它是擴(kuò)展聯(lián)網(wǎng)汽車功能的一部分。它還可以從操作系統(tǒng)服務(wù)和新功能中受益。

最后汽車系統(tǒng)開發(fā)需要考慮的是成本,操作系統(tǒng)成本因素,有許多因素決定了開發(fā)操作系統(tǒng)的成本:

操作系統(tǒng)的許可成本,其中包括操作系統(tǒng)內(nèi)核、中間件和庫軟件,如數(shù)學(xué)、浮點(diǎn)、圖形等。Linux 內(nèi)核操作系統(tǒng)是一個開源代碼,是一個自由軟件平臺。在大多數(shù)情況下,Linux 中間件和一些庫需要支付許可費(fèi)。

操作系統(tǒng)的大小將影響使用其應(yīng)用程序運(yùn)行軟件所需的硬件數(shù)量??偞a大小會影響所需的最大永久存儲大小。在磁盤時代,這并不是什么大問題,因?yàn)榇蠖鄶?shù)硬盤驅(qū)動器都足夠大。如今,永久存儲主要是 NAND 芯片或 eMMC 模塊,這通常會增加操作系統(tǒng)大小的額外成本。

操作系統(tǒng)占用空間是運(yùn)行操作系統(tǒng)及其應(yīng)用程序所需的 RAM 量。同樣,操作系統(tǒng)占用空間的大小會影響系統(tǒng)的內(nèi)存成本。

另一個因素是硬件成本,其中操作系統(tǒng)可能會影響 MCU 成本。大型操作系統(tǒng)可能會增加所需的 MCU 性能,這可能會增加硬件成本。

所以通過成本考慮,大家可能發(fā)現(xiàn)為什么打造一個從零開始全新的汽車操作系統(tǒng)是非常難的事情, 基于Linux 操作系統(tǒng)的免費(fèi)操作系統(tǒng)內(nèi)核將提供足夠的成本節(jié)約,是當(dāng)前比較優(yōu)的汽車操作系統(tǒng)開發(fā)路徑。

汽車操作系統(tǒng)趨勢

從上文看到的汽車操作系統(tǒng)的復(fù)雜性可知,中短期內(nèi)汽車?yán)锩鍱CU還是會多數(shù)量多種類,所以多系統(tǒng)是趨勢,汽車主機(jī)廠需要多種多個操作系統(tǒng)來覆蓋廣泛的ECU能力和功能。

所以其實(shí)當(dāng)前汽車操作系統(tǒng)的最佳實(shí)踐是,按照ECU電控單元或者處理器的復(fù)雜度,再結(jié)合他的安全需求和生態(tài)需求來選擇多系統(tǒng)融合的方式。一般汽車中按照ECU的復(fù)雜度又分兩類 - 低復(fù)雜性和高復(fù)雜性。

對于低復(fù)雜度的 ECU,他上面跑的系統(tǒng)基本是輕量化的,根據(jù)汽車供應(yīng)鏈發(fā)展的歷史基本上都是Autosar類的操作系統(tǒng),他是一類基于經(jīng)典AUTOSAR規(guī)則的微內(nèi)核系統(tǒng)的統(tǒng)稱,一般都是車輛診斷,通訊,運(yùn)動等汽車基礎(chǔ)控制。一般有Vector 的 Microsar OS、ETAS 的 RTA-OS和Elektrobit 的 EB Tresos Safety OS,還有Green Hills Integrity RTOS 等,他們擁有最高的安全和安全認(rèn)證,這類系統(tǒng)在飛機(jī)航空航天上同樣普遍使用。

對于復(fù)雜度高的ECU,或者大家現(xiàn)在又叫HPC高性能計算單元,或者整合成域控制器,之前文章《智能自動駕駛六大主流車載芯片及其方案》中講到的高通,英偉達(dá),還有恩智浦,德州儀器TI等的高性能芯片都屬于這一類。這個主要牽扯到兩個現(xiàn)代智能汽車很火的方面,智能駕駛和智能座艙。這兩個方面的需求側(cè)重點(diǎn)截然不同,智能駕駛更需要安全穩(wěn)健,而智能座艙卻更需要開放交互以及生態(tài)應(yīng)用。

復(fù)雜集成的 ECU 主要使用 QNX , Linux 版本,安卓作為操作系統(tǒng),在需要功能安全時優(yōu)先使用 QNX,例如智能駕駛方面其中QNX 擁有比 Linux 版本更高的安全性和安全認(rèn)證,并且很可能保持這一排名—即使某些 Linux 版本獲得了 ISO 26262 認(rèn)證。QNX 的微內(nèi)核架構(gòu)使操作系統(tǒng)更加安全,QNX也經(jīng)歷了幾十年的行業(yè)驗(yàn)證,所以道路上絕大部分智能駕駛系統(tǒng)都采用QNX,例如蔚來,小鵬等一系列基于英偉達(dá)方案芯片的都采用QNX。

但Linux 已超越 QNX 成為最受歡迎的主機(jī)廠歡迎的操作系統(tǒng)。其實(shí)我們之前文章《透過奔馳MB.OS看其如何做軟件定義汽車》,《大眾通往VW.OS的三步電子架構(gòu)以及其MEB ID系列智能化不滿意的背后》都講到過他們都在開發(fā)自己的操作系統(tǒng),而且大都基于Linux系統(tǒng)核心開發(fā),主要是Linux是IT界主流的企業(yè)級系統(tǒng)而且開源豐富的開發(fā)生態(tài),所以軟件定義汽車時代,Linux 正在車端和云端聯(lián)合崛起。

當(dāng)然主機(jī)廠他們是否真的在開發(fā)系統(tǒng)呢?可能未必。開發(fā)操作系統(tǒng)是一項艱巨的任務(wù),并且操作系統(tǒng)的生命周期可能為 30 到 40 年,并定期更新和不斷的技術(shù)改進(jìn)。Linux 大約有 30 年的發(fā)展,而 QNX 有近 40 年的發(fā)展。開發(fā)汽車操作系統(tǒng)需要大量的技術(shù)專長,但供應(yīng)有限,而且需要多年的開發(fā)。所以汽車企業(yè)說的“開發(fā)汽車系統(tǒng)”應(yīng)該都只是應(yīng)用性更改適配而已。以豐田,日產(chǎn)英偉達(dá)等聯(lián)合的AGL,以寶馬通用等聯(lián)合的GENIVI(現(xiàn)已更名為COVESA)都在對Linux系統(tǒng)開發(fā)定義規(guī)則。

當(dāng)前應(yīng)用Linux 出名的當(dāng)屬鼎鼎大名的特斯拉其系統(tǒng),其應(yīng)用的應(yīng)該是Linux的變種Ubantu,ubantu 搞IT服務(wù)器的人可能再熟悉不過了,當(dāng)然特斯拉,如上文講到采用的是Linux ubantu ,至于是不是車規(guī)級沒人管,畢竟我們常聽到的車規(guī)級并不是強(qiáng)制性標(biāo)準(zhǔn),但可以肯定的是未來越來越多車規(guī)級Linux。通用汽車發(fā)布的ultif軟件——定義汽車平臺未來車端和云端都會采用Red Hat Linux,大概2023年上車。奔馳的基于Linux操作系統(tǒng)大概24年上車,大眾計劃25年,所以Linux系列憑借開源和軟件定義汽車車端和云端的數(shù)據(jù)完美結(jié)合是當(dāng)前各家主機(jī)廠都在走或者想走的路線。

另外一塊對于娛樂交互,安卓不言而喻,憑借其完美的應(yīng)用和開發(fā)生態(tài),基本上在娛樂系統(tǒng)方面已經(jīng)開始走向巔峰,不管新新勢力還是老牌歐美車企基本都在車機(jī)里面裝了或者改了一個安卓系統(tǒng)《做汽車的吉利為何搭上做手機(jī)的魅族?也就是方便給吉利整合改一個》來實(shí)現(xiàn)各種網(wǎng)聯(lián)應(yīng)用,目前新勢力的各種類手機(jī)的應(yīng)用app都移植于安卓端,例如視頻app,音樂音頻app。

但是不少主機(jī)廠其實(shí)對安卓是又愛又恨,如果安卓統(tǒng)一汽車操作系統(tǒng)市場,那么汽車主機(jī)廠怕僅僅成為硬件的制造商,從而錯過未來軟件定義汽車的主權(quán),所以特斯拉一開始就不考慮安卓,其他采用安卓系統(tǒng)一開始就不采用谷歌的應(yīng)用市場。

參考文章以及圖片

Perspectives on Automotive Operating Systems - Egil Juliussen

Overview of Functional Safety Measures in AUTOSAR - autosar pdf 可下載

Automotive OS - eletrobit pdf 可下載

Free Software Automotive stack(s) that run on available hardware -Jeremiah C. Foster pdf 可下載

automating next generation mobility - zf pdf 可下載

software defined vehicles a forthcoming industrial evolution - 德勤 pdf 可下載

preview - The Software-Defined Vehicle Enabling the Updatable Car - SBD pdf 可下載

Software Defined Vehicle - bosch pdf 可下載

Red Hat Software Defined Vehicle and In-Vehicle OS - red hat pdf 可下載

*未經(jīng)準(zhǔn)許嚴(yán)禁轉(zhuǎn)載和摘錄

原文標(biāo)題:汽車操作系統(tǒng)10