Understanding automotive operating system perspectives is paramount to ensuring safe and reliable vehicles.
操作系統 (OS) 是管理基于計算機的系統的所有硬件和軟件所必需的,它是汽車行業的關鍵軟件平臺。本文重點介紹汽車操作系統策略的教程信息和一些觀點。
每個操作系統在功能、程序大小、復雜性、開發工作量和硬件要求以及終身維護、支持工作量和成本方面都有很大差異。一個操作系統的范圍可以從幾千行代碼的簡單控制程序到Linux、macOS、iOS和Windows等主要操作系統的幾千萬行代碼。Linux 內核代碼大小因發行公司而異,GitHub 版本約有 2800 萬行代碼。
Wikipedia 是有關操作系統歷史、技術和產品信息的重要來源。有關于操作系統技術的詳細數據,但大部分內容都集中在傳統計算機系統上,從大型計算機和個人電腦到智能手機和平板電腦。有關于領先的汽車操作系統(如 Linux 和 QNX)的一般信息,但很少有關于汽車操作系統使用的上下文和信息。
操作系統概述
操作系統提供計算機硬件和應用程序之間的接口。這通過遵循編程到操作系統中的規則和程序來限制應用程序使用硬件。該操作系統還包括簡化應用程序開發和執行的服務。這些服務包括管理應用程序將使用的所有硬件資源——將程序加載到內存中、與傳感器和執行器通信、存儲結果以及許多其他功能。
還有許多其他軟件功能被認為是操作系統的一部分,包括所謂的中間件、庫和其他系統軟件。
操作系統功能和生態系統對于開發軟件定義車輛所需的應用程序和軟件平臺也很重要。換句話說,最好的操作系統選擇需要一個龐大的生態系統和基礎設施來支持未來不斷增長的軟件定義車輛。
下表總結了汽車操作系統的要求。
操作系統的許多特性決定了它的功能。單任務操作系統一次只能運行一個程序,而多任務操作系統可以運行多個程序。單用戶操作系統沒有區分用戶的功能,但可能允許多個程序同時運行。
多用戶操作系統擴展了多任務處理以運行來自多個用戶的程序。這需要跟蹤每個用戶正在使用的硬件和軟件資源。該系統允許多個用戶同時與系統交互。
操作系統內核
操作系統內核包括管理硬件和軟件的所有關鍵功能。組織內核有兩種主要方法:單片內核或微內核操作系統。單片內核架構包括內核空間中的所有核心操作系統功能——所有系統調用和操作系統服務都集中在一個地方。Linux 是領先的單片內核操作系統。
微內核操作系統具有幾乎最少數量的軟件,可以提供實現操作系統所需的機制。額外的操作系統服務被組織為分層服務,可以根據需要由微內核激活。這意味著微內核操作系統具有模塊化架構。
優點是微內核具有較小的代碼空間,并且可以比單片內核操作系統更安全。模塊化操作系統結構更適合大多數汽車 ECU。QNX 是領先的微內核操作系統。
管理程序操作系統
管理程序是一個小型軟件平臺,用于管理多個操作系統平臺及其應用程序。它也可以稱為虛擬機 (VM) 監視器,它是運行 VM 的軟件。
自 1960 年代以來,虛擬化一直用于計算機行業,是 IT 數據中心的一項關鍵技術。管理程序對于將信息娛樂和功能安全功能(例如用于備用監視器的主機顯示器)結合起來非常重要。
功能安全操作系統
許多 ECU 需要具有功能安全認證的操作系統。這意味著具有各種汽車安全完整性等級 (ASIL) 的 ISO 26262 認證。該標準確定了四種 ASIL:ASIL A、B、C 和 D。ASIL D 具有最高的完整性要求。
所有基于 AUTOSAR 的操作系統——例如 Vector 的 Microsar 操作系統、ETAS 的 RTA-OS 和 Elektrobit 的 EB Tresos 安全操作系統——都具有功能安全等級。汽車 ECU 中常用的其他三種產品:Green Hills Integrity RTOS、Wind River VxWorks 和 BlackBerry QNX。您可以在本文中了解有關功能安全信息的更多信息。
功能安全操作系統無法管理具有大型復雜軟件代碼的 ECU,例如信息娛樂系統和新興領域的高級駕駛員輔助系統 (ADAS) ECU 和自動駕駛汽車 (AV) ECU。QNX 是個例外,它是信息娛樂領域的領導者,在 ADAS 和 AV 域 ECU 方面處于有利地位。
信息娛樂中對高性能操作系統的需求為 Linux 版本打開了大門,并使其成為過去五年中最受歡迎的信息娛樂操作系統。Linux 的一個缺點是缺乏功能安全認證。當需要功能安全應用程序作為基于 Linux 的 ECU 的一部分時,管理程序操作系統一直是 Linux 的解決方案。
看起來 Linux 在不久的將來至少會有一個功能安全版本。2022 年 5 月,通用汽車宣布將使用獲得功能安全認證的紅帽 Linux 版本。通用汽車計劃在 2023 年推出產品。目前尚不清楚紅帽是否已經獲得功能安全認證,但其他 Linux 供應商很可能會嘗試獲得功能安全認證。谷歌的信息娛樂操作系統正在快速發展,看起來像是功能安全的候選者。
操作系統生態系統支持
操作系統成功的關鍵是龐大的支持生態系統。支持操作系統的軟件平臺越多,它就越成功。操作系統可以在領先的微處理器平臺和特定的 MCU 實現上運行也很重要。但是,由于汽車 ECU 以基于 ARM 的微處理器為主,因此很容易滿足這一要求。
所有 MCU 應用軟件都必須通過操作系統運行,這意味著成功的操作系統應該有良好的軟件開發支持。
操作系統成本因素
有許多因素決定了使用操作系統的成本。本討論假設操作系統是由汽車 OEM 購買而不是開發的。
The first factor is the licensing cost of the OS, which includes the OS kernel, middleware, and library software such as math, floating point, graphics, and others. The Linux kernel OS is an open–source code and is a free software platform. In most cases, there are licensing fees for Linux middleware and some libraries.
The size of an OS will impact the amount of hardware required to run software with its applications. The total code size impacts the maximum permanent storage size needed. In the disk era, this was not much of a factor, as most hard disk drives were big enough. Today, the permanent storage is primarily NAND chips or eMMC modules, which can often add extra cost for OS size.
The OS footprint is the amount of RAM needed to run the OS and its applications. Again, the size of the OS footprint can impact the memory cost of the system.
Another factor is the hardware cost, where the OS may impact the MCU cost. A large OS is likely to increase the needed MCU performance, which could increase the hardware costs.
The reason for this discussion is to weigh all potential OS cost factors. It is too easy to assume that the free OS kernel of a Linux OS will provide enough cost savings to outweigh potential extra costs that a large OS will generate.
ECU software development
ECU software development is crucial to the automotive industry, and complexity and effort continue to grow. Traditional ECU software development was initially done via software development kits (SDKs) from multiple suppliers. SDKs have been replaced by integrated development environments (IDEs) that have much better capabilities and have expanded into web–based IDE systems. The Eclipse IDE has become the most popular software development system for auto and many other industries. Eclipse is managed by the Eclipse Foundation, a nonprofit corporation founded by IBM in 2001.
Web–centric software development is growing rapidly, with Amazon AWS being especially active. AWS is building partnerships to serve the need for better software development with SaaS functionality included. Microsoft Azure and others are also experiencing similar growth.
There is also a trend to provide software development systems focused on functional–safety applications. Apex.AI is a prime example of this trend.
Emerging ECU needs
The OS also needs to incorporate support for emerging technology needs. Cybersecurity is most important, and all OSes include security as a core function. Additional hardware, software, and cloud–based cybersecurity is becoming standard in software–defined vehicles and needs as much support as possible, including from the OS.
OTA software updates are also growing in importance and can use extra support from OS services. OTA platforms are increasing in capabilities from both embedded software and cloud functionality.
ECU 數據提取是第三類,它是擴展聯網汽車功能的一部分。它還可以從操作系統服務和新功能中受益。
操作系統戰略觀點
所有汽車 ECU 都需要一個控制程序或操作系統來管理各種控制硬件組件和每個 ECU 旨在完成的應用程序的程序。隨著 ECU 復雜性的增加,操作系統的復雜性也在增加。原始設備制造商將需要多個操作系統來涵蓋廣泛的 ECU 能力和功能。
對于簡單的 ECU,OEM 似乎更喜歡基于 AUTOSAR 的操作系統。AUTOSAR 功能有所增加,但無法處理高端 ECU 復雜性,例如信息娛樂和大多數領域 ECU。Green Hills 和 Wind River 都擁有出色的操作系統,具有很強的安全性和安全性評級,是不錯的選擇。
高端 ECU 主要使用 QNX 或 Linux 版本作為操作系統,在需要功能安全時優先使用 QNX。Linux 已超越 QNX 成為最受歡迎的信息娛樂操作系統。QNX 正在成為域 ECU 的最愛,至少對于 ADAS 和 AV 域 ECU 而言。
有大量新聞報道稱,包括大眾和梅賽德斯-奔馳在內的多家 OEM 正在討論開發自己的汽車操作系統。這是否意味著他們正在考慮制造而不是購買決定?這種策略并非沒有風險。
開發操作系統是一項艱巨的任務,并且操作系統的生命周期可能為 30 到 40 年,并定期更新和不斷的技術改進。Linux 大約有 30 年的發展,而 QNX 有近 40 年的發展。
開發汽車操作系統需要大量的技術專長,但供應有限,而且需要多年的開發。
GM 使用具有功能安全認證的 Red Hat Linux 的策略是為復雜的 ECU 獲得自己的操作系統的更好方法。
最佳的長期操作系統策略是什么?最佳實踐是從兩個 ECU 類別可能最安全的操作系統開始 - 低復雜性和高復雜性。為什么?因為網絡安全問題將是汽車行業數十年來面臨的最嚴峻問題,而操作系統將發揮作用。
對于低復雜度的 ECU,Green Hills 擁有最高的安全和安全認證,包括 FAA 飛機使用認證。
對于高端 ECU,QNX 擁有比 Linux 版本更高的安全性和安全認證,并且很可能保持這一排名——即使某些 Linux 版本獲得了 ISO 26262 認證。QNX 的微內核架構使操作系統更加安全。自動駕駛汽車的新標準——ISO 21448、UL 4600 和 IEEE P2851——可以在操作系統中使用一些有用的功能,而 QNX 很可能會首先開發這些功能。
審核編輯 黃昊宇
-
汽車操作系統
+關注
關注
0文章
19瀏覽量
7238
發布評論請先 登錄
相關推薦
評論