日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

AUTOSAR AP 硬核知識(shí)點(diǎn)梳理(2)— 架構(gòu)詳解

 花信風(fēng)zq 2023-09-22
圖片

以下內(nèi)容來源于《汽車電子與軟件》,作者:劉向

AUTOSAR 平臺(tái)邏輯體系結(jié)構(gòu)

圖片

圖示邏輯體系結(jié)構(gòu)描述了平臺(tái)是如何組成的,有哪些模塊,模塊之間的接口是如何工作的。


經(jīng)典平臺(tái)具有分層的軟件體系結(jié)構(gòu)。定義明確的抽象層,每個(gè)抽象層都有精確定義的角色和接口。


對(duì)于應(yīng)用程序,我們需要考慮使用的軟件組件,希望它們是可重用的,因此應(yīng)該盡可能小,依賴性盡可能少。組件被靜態(tài)地分配給ECU,并且通過靜態(tài)連接發(fā)送/接收的信號(hào)進(jìn)行通信。

  • AUTOSAR實(shí)現(xiàn)了軟件和硬件的分離,使得軟件可以在不同的硬件平臺(tái)上運(yùn)行。

  • AUTOSAR采用了一種統(tǒng)一的XML文件格式,用于描述軟件架構(gòu)和配置信息。

  • AUTOSAR具有很高的靈活性,可以根據(jù)不同的需求進(jìn)行定制和擴(kuò)展。

  • AUTOSAR支持運(yùn)行時(shí)軟件更新,可以適應(yīng)不同的應(yīng)用場(chǎng)景。

  • AUTOSAR提高了軟件集成的效率和擴(kuò)展性,使得軟件可以更容易地進(jìn)行重用和遷移

  • AUTOSAR為上層開發(fā)者提供了標(biāo)準(zhǔn)化的接口和協(xié)議,使得開發(fā)者可以專注于應(yīng)用功能的開發(fā)。

在軟件開發(fā)過程階段,CP與AP都主要都包括以下三個(gè)階段:

  • 1.設(shè)計(jì)階段:

    設(shè)計(jì)ARXML

  • 2.代碼生成:基于ARXML生成代碼

  • 3.集成:集成Application,編譯調(diào)試等

AUTOSAR AP平臺(tái)邏輯體系結(jié)構(gòu)

AP AUTOSAR的核心是自適應(yīng)應(yīng)用程序(Adaptive Application),它是一種可以根據(jù)運(yùn)行時(shí)環(huán)境動(dòng)態(tài)調(diào)整的軟件組件。那么,AP AUTOSAR是如何定義和管理自適應(yīng)應(yīng)用程序的呢?下面將為你介紹AP AUTOSAR的邏輯視圖和功能集群,詳解自適應(yīng)應(yīng)用程序的運(yùn)行環(huán)境。


AP AUTOSAR的邏輯視圖是一種抽象的軟件架構(gòu),它描述了自適應(yīng)應(yīng)用程序的功能需求,接口,依賴關(guān)系和配置。邏輯視圖由多個(gè)功能集群(Feature Cluster)組成,每個(gè)功能集群包含一組相關(guān)的功能需求和接口。功能集群可以進(jìn)一步劃分為多個(gè)功能組(Feature Group),每個(gè)功能組包含一組具體的功能需求和接口。功能需求和接口可以使用ARXML文件進(jìn)行描述和生成。


AP AUTOSAR的功能集群是一種邏輯上的分組,它不代表實(shí)際的軟件組件或部署單元。在實(shí)際的軟件開發(fā)過程中,功能集群需要被映射到具體的軟件組件或部署單元上,這就涉及到AP AUTOSAR的另一個(gè)視圖:實(shí)現(xiàn)視圖(Implementation View)。實(shí)現(xiàn)視圖描述了自適應(yīng)應(yīng)用程序的軟件結(jié)構(gòu),包括軟件組件,部署單元,運(yùn)行時(shí)對(duì)象等。實(shí)現(xiàn)視圖和邏輯視圖之間的映射關(guān)系可以使用ARXML文件進(jìn)行描述和生成。

AP AUTOSAR的運(yùn)行環(huán)境是一種軟件平臺(tái),它提供了自適應(yīng)應(yīng)用程序所需的基礎(chǔ)服務(wù),如通信,配置,診斷,安全等。運(yùn)行環(huán)境由多個(gè)服務(wù)層(Service Layer)組成,每個(gè)服務(wù)層提供了一類特定的服務(wù)。服務(wù)層之間通過面向服務(wù)架構(gòu)(Service Oriented Architecture, SOA)進(jìn)行交互,即通過發(fā)布-訂閱模式(Publish-Subscribe Pattern)進(jìn)行異步消息傳遞。運(yùn)行環(huán)境可以在不同的硬件平臺(tái)和操作系統(tǒng)上運(yùn)行,通過硬件BSP進(jìn)行適配。

圖片

自適應(yīng)平臺(tái)采用模塊化軟件體系結(jié)構(gòu)。它比經(jīng)典分層軟件架構(gòu)更模塊化,反映了平臺(tái)的動(dòng)態(tài)特性。這種動(dòng)態(tài)性也是平臺(tái)的核心需求;

AP遵循面向服務(wù)的架構(gòu),SOA設(shè)計(jì)理念,充分利用各種開源軟件成熟技術(shù),重用軟件市場(chǎng)成熟組件,縮短開發(fā)周期。在ECU的生命周期內(nèi)有獨(dú)立更新應(yīng)用程序的能力。

Adaptive Platform Architecture

AP AUTOSAR的邏輯視圖體現(xiàn)了其相應(yīng)的體系結(jié)構(gòu),如下圖所示:

圖片

AP AUTOSAR的邏輯視圖體現(xiàn)了其相應(yīng)的體系結(jié)構(gòu),如下圖所示:

lAA(Adaptive Application)

自適應(yīng)應(yīng)用程序運(yùn)行在AUTOSAR Runtime for Adaptive Applications (ARA)之上,用于實(shí)現(xiàn)碰撞預(yù)警、車道保持、自動(dòng)駕駛等復(fù)雜的汽車功能。AA可以使用C 語言編寫,也可以使用模型驅(qū)動(dòng)開發(fā)(Simulink)工具生成。

lARA(AUTOSAR Runtime for Adaptive applications)

自適應(yīng)應(yīng)用程序的運(yùn)行平臺(tái):提供了AA所需的運(yùn)行時(shí)環(huán)境,包括內(nèi)存管理、進(jìn)程管理、文件安全讀寫、日志記錄等。ARA由功能集群(Functional Clusters,F(xiàn)Cs)提供的應(yīng)用程序接口組成,這些群集屬于Adaptive Foundation或Adaptive Services。Adaptive Foundation提供了AP的基本功能,而Adaptive Services提供了AP的平臺(tái)標(biāo)準(zhǔn)服務(wù)。

lAdaptive Foundation

提供了AP AUTOSAR的基礎(chǔ)功能,如服務(wù)發(fā)現(xiàn)、事件發(fā)布訂閱、請(qǐng)求回復(fù)、持久化數(shù)據(jù)管理等。這些服務(wù)主要是為了實(shí)現(xiàn)AA之間以及AA與外部系統(tǒng)之間的面向服務(wù)的通信(Service-Oriented Communication,SOC),基于以太網(wǎng)和SOME/IP協(xié)議。此外,還包括操作系統(tǒng)接口、執(zhí)行管理、平臺(tái)健康管理(看門狗)、網(wǎng)絡(luò)管理、診斷通信、時(shí)間同步等。這些功能主要是為了支持ARA和AA的運(yùn)行。

lAdaptive Services

提供了AP AUTOSAR的標(biāo)準(zhǔn)服務(wù),狀態(tài)管理(特定于項(xiàng)目實(shí)現(xiàn)),網(wǎng)絡(luò)管理,更新配置管理(UCM)即我們比較熟悉的運(yùn)行時(shí)軟件更新(OTA)。


Adaptive AUTOSAR構(gòu)建在POSIX操作系統(tǒng)之上,ARA可以提供多種功能供應(yīng)用程序調(diào)用來實(shí)現(xiàn)軟硬件解耦、為上層應(yīng)用提供服務(wù)。

Adaptive AUTOSAR 術(shù)語——Machine

Adaptive AUTOSAR是一種基于服務(wù)的軟件平臺(tái),它支持高性能、靈活和可更新的汽車應(yīng)用程序。


Adaptive AUTOSAR的邏輯體系結(jié)構(gòu)是基于Machine的概念構(gòu)建的,Machine是指運(yùn)行環(huán)境所需的物理資源,如處理器、內(nèi)存、網(wǎng)絡(luò)等。


一個(gè)Machine可以包含一個(gè)或多個(gè)ECU,但只能運(yùn)行一個(gè)AUTOSAR Adaptive Instance(AUTOSAR平臺(tái)的實(shí)例即AP實(shí)例)。每個(gè)AP實(shí)例都有自己的功能集群,可以實(shí)現(xiàn)不同的服務(wù)和應(yīng)用。


在Adaptive AUTOSAR中,Adaptive Application是用C 編寫的,它們?cè)贛achine上以進(jìn)程的形式運(yùn)行。進(jìn)程之間通過服務(wù)進(jìn)行通信和協(xié)作。


Machine可以是高性能計(jì)算機(jī)(HPC),它們提供了數(shù)據(jù)密集型應(yīng)用所需的計(jì)算能力。HPC可以包含多個(gè)核心,Adaptive Application可以通過進(jìn)程到Machine的映射分配到不同的核心上。

圖片

一個(gè)重要的概念是,AUTOSAR的作用域是Machine,也就是運(yùn)行環(huán)境所依賴的物理資源。每個(gè)Machine都有自己獨(dú)立的功能集群和服務(wù),它們可以實(shí)現(xiàn)不同的汽車應(yīng)用程序。AUTOSAR也允許在同一個(gè)Machine上運(yùn)行一些非AUTOSAR的進(jìn)程,但是這些進(jìn)程不受AUTOSAR平臺(tái)實(shí)例的管理和約束。

圖片

adaptive autosar machine的啟動(dòng)過程包括哪幾個(gè)步驟?

adaptive autosar machine的啟動(dòng)過程包括哪幾個(gè)步驟?

  • 機(jī)器啟動(dòng),操作系統(tǒng)最先初始化,然后執(zhí)行管理(EM)作為操作系統(tǒng)的初始進(jìn)程之一啟動(dòng)。

  • EM負(fù)責(zé)啟動(dòng)其他功能簇(FC)和平臺(tái)應(yīng)用。

  • 平臺(tái)基礎(chǔ)(Foundation)啟動(dòng)后,EM繼續(xù)啟動(dòng)adaptive應(yīng)用(AA)。

  • EM根據(jù)machine manifest和execution manifest決定啟動(dòng)順序。

  • 如果AP從可信錨點(diǎn)(trust anchor)啟動(dòng),并且在啟動(dòng)過程中維護(hù)信任鏈(chain of trust),則EM可以支持認(rèn)證啟動(dòng)(authenticated startup)。認(rèn)證啟動(dòng)啟動(dòng)過程中,EM驗(yàn)證應(yīng)用的真實(shí)性和完整性,如檢測(cè)出異常,則阻止應(yīng)用運(yùn)行。

Adaptive application(AA):承載Service的應(yīng)用實(shí)體


Executable:App的運(yùn)行時(shí)實(shí)體,一個(gè)可執(zhí)行程序可以包含多個(gè)服務(wù)實(shí)例


Process :OS運(yùn)行調(diào)度的實(shí)體


Machine:運(yùn)行環(huán)境的物理資源

AUTOSAR使用ARXML格式文件進(jìn)行建模 :

  • 通過正式定義的接口來使用服務(wù)

  • 實(shí)現(xiàn)服務(wù)有三種方式Event Method Field

  • 定義服務(wù)傳輸?shù)臄?shù)據(jù)類型

  • App之間的通信端口,需要在component 元素中定義provide/require Port

adaptive autosar machine的啟動(dòng)過程涉及到以下幾個(gè)概念:


清單是一種用來描述AP AUTOSAR軟件系統(tǒng)的文件,它可以告訴我們?cè)趺窗惭b和運(yùn)行軟件。清單文件的格式是XML,它們可以通過ARXML工具進(jìn)行生成和處理。

清單有三種不同的類型,分別是:

Execution Manifest

Execution Manifest在設(shè)計(jì)期間創(chuàng)建,提供應(yīng)用部署所需的信息,定義每個(gè)可執(zhí)行文件實(shí)例化幾個(gè)進(jìn)程(幾次),每個(gè)進(jìn)程的的啟動(dòng)參數(shù)、環(huán)境變量、UID/GID、資源組、調(diào)度策略、何時(shí)啟動(dòng)、停止等都可以獨(dú)立配置。

圖片

在RTA-VRTE中配置Execution Manifest

添加一個(gè)AA進(jìn)程我們需要做幾方面的配置:


1.配置AA進(jìn)程相關(guān)的FunctionGroup state

2.選擇AA將要部署在哪個(gè)Machine上


3.AA進(jìn)程的啟動(dòng)參數(shù)和環(huán)境變量(依賴的庫和配置文件等信息)

4.AA進(jìn)程的Log模塊配置


5.AA是否向EM匯報(bào)執(zhí)行狀態(tài)


6.設(shè)置AA所屬于的Resource Group,來控制AA所在的功能組所占用的內(nèi)存和cpu使用率。


7.選擇AA進(jìn)程中的線程的調(diào)度算法(FIFO、RR、other)

Machine Manifest

Machine Manifest實(shí)際運(yùn)行在特定硬件(機(jī)器)上的adaptive平臺(tái)實(shí)例的配置,它包含了 machine屬性,特性(資源,功能安全,信息安全等),例如machine state、function group state、resource group、訪問權(quán)限組、SOME/IP配置、內(nèi)存分區(qū)、硬件資源,如處理器和核心等等。


每個(gè)machine都配置有關(guān)function groups、software clusters和process到machine的映射等相關(guān)信息。

圖片

在RTA-VRTE中配置Machine Manifest

在ARXML文件中,我們可以配置Machine的以下屬性和特征:


狀態(tài):Machine的運(yùn)行狀態(tài),如啟動(dòng)、停止、重啟等。
進(jìn)程:Machine的執(zhí)行單元,如應(yīng)用邏輯、中斷、函數(shù)等。
網(wǎng)絡(luò):Machine的通信方式,如Ethernet等。
服務(wù):Machine的提供或請(qǐng)求的功能,如診斷、校準(zhǔn)、更新等。


每個(gè)Machine都有自己獨(dú)立的功能集群和服務(wù),它們可以實(shí)現(xiàn)不同的汽車應(yīng)用程序。每個(gè)Machine需要與一個(gè)Machine Design相關(guān)聯(lián),Machine Design是用來定義不同Machine之間如何協(xié)作和交互的。

下表展示了Machine和Machine Design的關(guān)系:

圖片

每個(gè)Machine都需要至少一個(gè)IP配置,因?yàn)樵诰W(wǎng)絡(luò)中,每個(gè)Machine都是一個(gè)獨(dú)立的end point。IP配置包括IP地址、子網(wǎng)掩碼、網(wǎng)關(guān)等信息,用于標(biāo)識(shí)和定位Machine。沒有IP配置,Machine就無法與其他Machine或設(shè)備進(jìn)行通信。

軟件集群(software cluster)一種原子的、可更新的、可擴(kuò)展的軟件單元,由一個(gè)或多個(gè)進(jìn)程組成,實(shí)現(xiàn)了一組特定的功能或應(yīng)用程序。軟件集群的作用是將應(yīng)用程序和服務(wù)按照功能或特性進(jìn)行分組和管理,提高了開發(fā)和部署的靈活性和效率。

軟件集群通常需要配置以下幾項(xiàng)內(nèi)容:

功能組(Function group)

用來說明軟件集群包含了什么樣的功能,比如導(dǎo)航、泊車、通訊等。

進(jìn)程

用來執(zhí)行具體的軟件代碼,比如導(dǎo)航進(jìn)程、泊車進(jìn)程、通訊進(jìn)程等。一個(gè)軟件集群可以包含多個(gè)進(jìn)程,但是它們要有相同的功能組。

設(shè)計(jì)(software cluster design)

用來描述軟件集群的結(jié)構(gòu)和屬性,比如名稱、版本、大小、依賴關(guān)系等。

software cluster design需要和MachineDesign相關(guān)聯(lián)
software cluster需要和software cluster design相關(guān)聯(lián)


Function Group State:功能組狀態(tài),是指一個(gè)功能集群(Function Group)的整體狀態(tài),它反映了該功能集群內(nèi)部所有進(jìn)程或自適應(yīng)應(yīng)用程序的執(zhí)行狀態(tài)的綜合情況。功能組狀態(tài)由狀態(tài)管理(State Management)模塊控制和監(jiān)視。


在ARXML文件中,我們可以配置執(zhí)行管理的以下功能:
·控制進(jìn)程(Process)的啟動(dòng)和停止,根據(jù)功能組(Function Group)的狀態(tài)(Function Group State)。


·定義功能組,需要?jiǎng)?chuàng)建一個(gè)新的模式聲明組(Mode Declaration Group),并將它和功能組集(Function Group Set)關(guān)聯(lián)。功能組集和軟件集群(Software Cluster)關(guān)聯(lián)。

·在MachineFG中添加Machine的四種狀態(tài):Off、Startup、Restart、shutdown,并將MachineFG設(shè)置初始狀態(tài)為OFF。

圖片

下表展示了功能組和狀態(tài)的關(guān)系:

圖片
圖片

 MachineFG Function Group Transitions

功能組是一種邏輯分組,用于將具有相同或相似功能的進(jìn)程聚合在一起。功能組可以有多個(gè)狀態(tài),表示該功能組所包含的進(jìn)程的運(yùn)行情況。執(zhí)行管理根據(jù)功能組的狀態(tài),決定是否啟動(dòng)或停止該功能組所包含的進(jìn)程。這樣可以提高執(zhí)行效率,節(jié)省資源,實(shí)現(xiàn)動(dòng)態(tài)調(diào)度。

圖片

Service Instance Manifest

Service Instance Manifest 主要包含面向服務(wù)通信的配置信息 ,描述針對(duì)特定的傳輸協(xié)議(如SOME/IP),進(jìn)行面向服務(wù)通信的配置和可執(zhí)行代碼綁定(服務(wù)實(shí)例到機(jī)器的映射、服務(wù)實(shí)例到應(yīng)用端點(diǎn)的映射),還包含基于服務(wù)的通信相關(guān)信息,如應(yīng)用層及相應(yīng)的傳輸層、網(wǎng)絡(luò)層通信參數(shù)信息。

圖片

在RTA-VRTE中配置Service Instance Manifest

Processed Manifest

Execution Manifest和Machine Manifest可以從原始的標(biāo)準(zhǔn)化ARXML轉(zhuǎn)換為特定于平臺(tái)的格式(稱為Processed Manifest處理清單),在機(jī)器啟動(dòng)時(shí)可以有效地讀取。

格式轉(zhuǎn)換可以在集成時(shí)在板外或部署時(shí)進(jìn)行,也可以在安裝時(shí)在機(jī)器上(通過更新和配置管理)進(jìn)行。

借著狀態(tài)轉(zhuǎn)換圖來介紹一下AP AUTOSAR中用來描述Machine和功能集群的狀態(tài)和行為的process state, Execution state, Function Group State, Machine State概念。

圖片

它們的含義如下:

process state:

進(jìn)程狀態(tài),是指一個(gè)功能集群(Function Group)內(nèi)部的一個(gè)進(jìn)程(Process)或者一個(gè)AA的生命周期狀態(tài)。進(jìn)程狀態(tài)有四種可能的值:未創(chuàng)建(NotCreated)、創(chuàng)建中(Creating)、已創(chuàng)建(Created)和銷毀中(Destroying)。進(jìn)程狀態(tài)由進(jìn)程管理(Process Management)模塊控制和監(jiān)視。

Execution state:

執(zhí)行狀態(tài),是指一個(gè)功能集群(Function Group)內(nèi)部的一個(gè)進(jìn)程(Process)或者一個(gè)AA的運(yùn)行狀態(tài)。執(zhí)行狀態(tài)有四種可能的值:未啟動(dòng)(NotStarted)、啟動(dòng)中(Starting)、運(yùn)行中(Running)和停止中(Stopping)。執(zhí)行狀態(tài)由執(zhí)行管理(Execution Management)模塊控制和監(jiān)視。

Function Group State:

功能組狀態(tài),是指一個(gè)功能集群(Function Group)的整體狀態(tài),它反映了該功能集群內(nèi)部所有進(jìn)程或自適應(yīng)應(yīng)用程序的執(zhí)行狀態(tài)的綜合情況。功能組狀態(tài)有五種可能的值:未啟動(dòng)(NotStarted)、啟動(dòng)中(Starting)、運(yùn)行中(Running)、停止中(Stopping)和已停止(Stopped)。功能組狀態(tài)由狀態(tài)管理(State Management)模塊控制和監(jiān)視。

Machine State:

機(jī)器狀態(tài),是指一個(gè)Machine的整體狀態(tài),它反映了該Machine上所有功能集群的功能組狀態(tài)的綜合情況。機(jī)器狀態(tài)有幾種可能的值:未啟動(dòng)(Off)、啟動(dòng)(Startup)、關(guān)機(jī)(Shutdown)和重啟(Restart)。機(jī)器狀態(tài)通常會(huì)引用功能組狀態(tài)。

圖片

狀態(tài)金字塔

Adaptive AUTOSAR 平臺(tái)架構(gòu)

在AP架構(gòu)下,同一臺(tái)機(jī)器上的自適應(yīng)應(yīng)用程序都實(shí)現(xiàn)為一個(gè)獨(dú)立的進(jìn)程,都有自己的邏輯內(nèi)存和命名空間相互隔離,以確保相互不受干擾。這是由操作系統(tǒng)的MMU內(nèi)存管理單元提供的。這也是AP模塊化的由來。

圖片


單個(gè)AA可能包含一個(gè)或多個(gè)進(jìn)程,可以部署到單個(gè)AP實(shí)例上,也可以分布在多個(gè)AP實(shí)例上。從模塊來看,每個(gè)進(jìn)程都是由操作系統(tǒng)從可執(zhí)行文件中實(shí)例化的,一個(gè)可執(zhí)行文件可實(shí)例化多次。這些進(jìn)程都是運(yùn)行在操作系統(tǒng)之上的,進(jìn)程是動(dòng)態(tài)運(yùn)行的,何時(shí)調(diào)用、進(jìn)程生存周期、資源占用及進(jìn)程結(jié)束等,都是系統(tǒng)動(dòng)態(tài)管理,好比你手機(jī)上的App何時(shí)打開、運(yùn)行后其會(huì)調(diào)用的資源及何時(shí)關(guān)閉都是動(dòng)態(tài)進(jìn)行的。

AP平臺(tái)需要提供相關(guān)模塊的SDK和守護(hù)進(jìn)程等。應(yīng)用程序可以調(diào)用SDK提供的API來調(diào)用模塊的功能,比如應(yīng)用程序之間的通信,我們可以調(diào)用COM模塊提供的API,可以進(jìn)行片內(nèi)或片間通信。


這跟CP架構(gòu)有著顯著的區(qū)別,在CP架構(gòu)下,所有應(yīng)用都是靜態(tài)配置的,即應(yīng)用的進(jìn)程在OS中被寫死,軟件功能在編譯階段就確定了,其調(diào)用的周期也是確定,因此基于CP架構(gòu)的軟件一旦有小的應(yīng)用變更就得重新配置和編譯。

應(yīng)用程序的加載/啟動(dòng)是通過使用EM的功能進(jìn)行管理的,并且需要在系統(tǒng)集成或運(yùn)行時(shí)進(jìn)行適當(dāng)?shù)呐渲貌拍軉?dòng)應(yīng)用程序,軟件功能在運(yùn)行時(shí)才可以確定。從EM的角度來看,所有功能集群都是應(yīng)用程序。

圖片
圖片

Adaptive autosar是一種用于高性能計(jì)算ECU的軟件平臺(tái),它支持自適應(yīng)應(yīng)用程序的開發(fā)和運(yùn)行1。它由兩部分組成:基礎(chǔ)(Foundation)和服務(wù)(Service)。基礎(chǔ)包括了操作系統(tǒng)接口、執(zhí)行管理、網(wǎng)絡(luò)管理、識(shí)別訪問管理、加密、更新和配置管理等功能。服務(wù)包括了通信管理、RESTful、時(shí)間同步、診斷、狀態(tài)管理、持久性、平臺(tái)健康管理、日志和跟蹤等功能。

Adaptive autosar各模塊的功能如下:

執(zhí)行管理 execution management (EM)

圖片

功能描述:EM負(fù)責(zé)系統(tǒng)執(zhí)行管理的所有方面,包括平臺(tái)初始化和應(yīng)用的啟動(dòng)和關(guān)閉。EM和OS一起工作執(zhí)行應(yīng)用運(yùn)行時(shí)間的調(diào)度。


AP AUTOSAR執(zhí)行管理模塊可以實(shí)現(xiàn)以下功能:


1.啟動(dòng)和關(guān)閉Machine,配置和加載應(yīng)用程序,處理啟動(dòng)和關(guān)閉過程中的錯(cuò)誤和異常。


2.控制應(yīng)用程序的執(zhí)行狀態(tài),設(shè)置應(yīng)用程序的調(diào)度參數(shù),監(jiān)控應(yīng)用程序的狀態(tài)、資源、性能,處理應(yīng)用程序之間的同步和通信。


3.管理功能組的狀態(tài),實(shí)現(xiàn)功能組之間的協(xié)調(diào)和一致性,根據(jù)不同的場(chǎng)景和需求,動(dòng)態(tài)地切換功能組的狀態(tài)。


4.處理平臺(tái)和應(yīng)用程序中發(fā)生的錯(cuò)誤和異常,根據(jù)不同的錯(cuò)誤類型和嚴(yán)重程度,采取相應(yīng)的恢復(fù)措施。

狀態(tài)管理(State Management)

圖片

功能描述:

SM模塊(State Management)是一種實(shí)現(xiàn)狀態(tài)管理和事件處理功能的軟件組件。SM模塊負(fù)責(zé)所有和AP平臺(tái)運(yùn)行狀態(tài)相關(guān)的方面。

主要功能:

?處理輸入的事件,如診斷請(qǐng)求、喚醒事件、錯(cuò)誤恢復(fù)等,并根據(jù)事件類型和優(yōu)先級(jí)來設(shè)置內(nèi)部狀態(tài)。


? 將自適應(yīng)應(yīng)用程序進(jìn)程分配到功能組狀態(tài)(inc. the Machine State)

? 根據(jù)狀態(tài)更改啟動(dòng)/停止應(yīng)用程序


? AUTOSAR觸發(fā)器接口——用于提示狀態(tài)更改


? AUTOSAR ara::exec::StateClient API

? 與ara::diag, ara::exec, ara::nm & ara::ucm模塊的交互

圖片

執(zhí)行管理與SM的交互

核心類型:Core TYPES:

功能描述:
定義了多個(gè)FCs的公共類接口和公共功能。包括接口定義中經(jīng)常使用的常見復(fù)雜數(shù)據(jù)類型。

主要功能:
·由于AP平臺(tái)它具有功能安全的屬性,通常而言我們是不可以使用C 的異常機(jī)制的(由于ASIL認(rèn)證的c 編譯器缺乏異常支撐),因此AP平臺(tái)它引入了ara::core::ErrorCode錯(cuò)誤碼以及ara::core::Result的概念。允許進(jìn)程在不拋出異常的情況下進(jìn)行錯(cuò)誤處理。


·AP還定義了一些了增強(qiáng)的數(shù)據(jù)類型,這些數(shù)據(jù)類型統(tǒng)一封裝在了ARA::core的命名空間。包括AP自己的內(nèi)存分配相關(guān)的數(shù)據(jù)類型如:Vector、Map和String,以及Manifest中一些constructs用到的類型如StringView,Span,Optional和Variant。

·全局初始化函數(shù),ara::core::Initialize和ara::core:: Deinitialize,此調(diào)用必須在main()內(nèi)部進(jìn)行。

操作系統(tǒng)接口OSI

功能描述:
AUTOSAR Adaptive platform(AP)運(yùn)行在高性能處理器上,直接基于通用的操作系統(tǒng)。


操作系統(tǒng)接口的要求如下:


1.OS提供符合PSE51標(biāo)準(zhǔn)的POSIX兼容的API接口。


2.OS支持周期性時(shí)間觸發(fā)的執(zhí)行功能,進(jìn)程中的算法可以是時(shí)間觸發(fā)的。


3.OS需要提供允許應(yīng)用程序的時(shí)間觸發(fā)執(zhí)行的機(jī)制。觸發(fā)因素需要至少但不限于包含外部計(jì)時(shí)器。


4.OSI支持C 11,AP進(jìn)程是用C 編寫的,接口應(yīng)該符合c 11


5.OS支持把EM拉起作為第一個(gè)執(zhí)行進(jìn)程。


6.OS支持為進(jìn)程或進(jìn)程組配置內(nèi)存和CPU資源預(yù)算。
7.OS提供進(jìn)程綁定到CPU Core的機(jī)制。


8.OS支持軟件實(shí)體對(duì)系統(tǒng)對(duì)象訪問的權(quán)限管理機(jī)制,應(yīng)用進(jìn)程只能通過授權(quán)的系統(tǒng)調(diào)用來


9.OS提供多進(jìn)程,以便支持應(yīng)用程序隔離。

通信管理(Communication Management)

圖片

功能描述:

通信管理模塊是一個(gè)用于實(shí)現(xiàn)服務(wù)導(dǎo)向通信的模塊,它支持多種通信協(xié)議,如SOME/IP, DDS, IPC等。

圖片

主要功能:


1.將協(xié)議無關(guān)的服務(wù)導(dǎo)向通信映射到配置的協(xié)議綁定,并執(zhí)行相應(yīng)的協(xié)議。應(yīng)用程序代碼使用服務(wù)導(dǎo)向通信的API,而不需要關(guān)心底層的協(xié)議細(xì)節(jié)。


2.支持服務(wù)發(fā)現(xiàn)、服務(wù)注冊(cè)、服務(wù)請(qǐng)求、服務(wù)響應(yīng)等功能,實(shí)現(xiàn)不同的通信模式和質(zhì)量,如點(diǎn)對(duì)點(diǎn)、發(fā)布訂閱、可靠、實(shí)時(shí)等。


3.支持事件、方法和字段三種類型的服務(wù),實(shí)現(xiàn)不同的數(shù)據(jù)交換和遠(yuǎn)程調(diào)用功能。事件用于發(fā)布和訂閱數(shù)據(jù),方法用于請(qǐng)求和響應(yīng)數(shù)據(jù),字段用于獲取和設(shè)置數(shù)據(jù)。


4.支持端到端通信保護(hù),使用E2E機(jī)制對(duì)通信數(shù)據(jù)進(jìn)行校驗(yàn)和保護(hù),防止數(shù)據(jù)被篡改或丟失。


5.支持網(wǎng)絡(luò)管理,使用NM機(jī)制對(duì)網(wǎng)絡(luò)狀態(tài)進(jìn)行監(jiān)控和控制,實(shí)現(xiàn)網(wǎng)絡(luò)節(jié)點(diǎn)的加入和退出,以及網(wǎng)絡(luò)喚醒和休眠等功能。


6.支持安全通信,使用加密、簽名、認(rèn)證等技術(shù)保證通信的機(jī)密性、完整性和可信性。

診斷管理(Diagnostics)

圖片

功能描述:


診斷管理模塊(DM)是一種實(shí)現(xiàn)基于ISO 14229-1(UDS)和ISO 13400-2(DoIP)的ISO 14229-5(UDSonIP)的診斷服務(wù)的軟件組件。DM代表Foundation層上AP平臺(tái)的功能集群,支持多個(gè)診斷客戶端和多個(gè)軟件集群。


每個(gè)SWCL是一個(gè)單獨(dú)的軟件更新包, SWCL都可以創(chuàng)建自己的診斷服務(wù)器實(shí)例,每個(gè)診斷服務(wù)器都有自己的診斷地址和服務(wù),可以獨(dú)立地進(jìn)行診斷操作 。每個(gè)診斷服務(wù)器都需要一個(gè)數(shù)據(jù)庫和一個(gè)文本文件(ru:candela文件)來配置其功能 。


主要功能:


1.診斷通信:實(shí)現(xiàn)診斷服務(wù)器的功能,支持一些標(biāo)準(zhǔn)的UDS服務(wù),如例行控制、數(shù)據(jù)標(biāo)識(shí)符、故障碼讀取和清除等。DM模塊還可以將診斷請(qǐng)求調(diào)度到相應(yīng)的自適應(yīng)應(yīng)用程序,以便執(zhí)行特定的診斷操作。


2.事件存儲(chǔ):負(fù)責(zé)故障診斷代碼(DTC)的管理,包括DTC的存儲(chǔ)、更新、刪除、啟用和禁用等。DM模塊還可以管理DTC相關(guān)的快照記錄和擴(kuò)展數(shù)據(jù)記錄,以及提供內(nèi)部轉(zhuǎn)換的通知。


3.傳輸層:支持DoIP作為傳輸協(xié)議,實(shí)現(xiàn)車輛發(fā)現(xiàn)和診斷通信。DoIP是一種基于IP網(wǎng)絡(luò)的車輛診斷協(xié)議,可以與診斷基礎(chǔ)設(shè)施(如診斷客戶端、生產(chǎn)/車間測(cè)試儀)進(jìn)行車外通信。

網(wǎng)絡(luò)管理(Network Management)

圖片

Architecture overview with example applications

功能描述:

NM是一種網(wǎng)絡(luò)管理機(jī)制,用于控制和協(xié)調(diào)負(fù)責(zé)協(xié)調(diào)內(nèi)部協(xié)調(diào)狀態(tài)機(jī)中基礎(chǔ)網(wǎng)絡(luò)(部分網(wǎng)絡(luò),VLAN或物理通道)的正常運(yùn)行和總線睡眠模式之間的轉(zhuǎn)換。它的目的是在滿足ECU節(jié)點(diǎn)正常通信需求的情況下,又能節(jié)省汽車蓄電池電量。

圖片

Overview Of Network Management

主要功能:


1.網(wǎng)絡(luò)請(qǐng)求和釋放:NM模塊為狀態(tài)管理提供了一個(gè)服務(wù)接口,用于請(qǐng)求和釋放網(wǎng)絡(luò)以及查詢其實(shí)際狀態(tài)。NM模塊協(xié)調(diào)不同實(shí)例(網(wǎng)絡(luò)句柄)的請(qǐng)求,并通過網(wǎng)絡(luò)提供匯總的計(jì)算機(jī)請(qǐng)求。


2.網(wǎng)絡(luò)狀態(tài)監(jiān)測(cè):NM模塊通過周期性的NM消息來監(jiān)測(cè)網(wǎng)絡(luò)狀態(tài),包括喚醒、準(zhǔn)備睡眠、睡眠等。NM消息的接收指示發(fā)送節(jié)點(diǎn)要保持NM群集處于喚醒狀態(tài)。如果任何節(jié)點(diǎn)準(zhǔn)備好進(jìn)入睡眠模式,它將停止發(fā)送NM消息,但是只要接收到來自其他節(jié)點(diǎn)的NM消息,它將推遲過渡到睡眠模式。最后,如果由于不再接收NM消息而經(jīng)過了專用計(jì)時(shí)器,則每個(gè)節(jié)點(diǎn)都將執(zhí)行到睡眠模式的轉(zhuǎn)換。


3.部分網(wǎng)絡(luò)管理:如果使用了部分網(wǎng)絡(luò)功能,則NM消息可以包含部分網(wǎng)絡(luò)(PN)請(qǐng)求,從而使ECU可以忽略不請(qǐng)求與ECU相關(guān)的任何PN的NM消息。盡管在其他部分網(wǎng)絡(luò)中仍在進(jìn)行通訊,但這可以關(guān)閉ECU(或其部分)。

身份識(shí)別訪問管理(Identify Access Management)

圖片

功能描述:

身份識(shí)別訪問管理塊(IAM)是一種實(shí)現(xiàn)基于策略的訪問控制功能的軟件組件。IAM模塊為應(yīng)用程序提供權(quán)限隔離以及受攻擊時(shí)權(quán)限越級(jí)的保護(hù)功能,同時(shí),IAM模塊還能方便集成人員在部署時(shí)就能驗(yàn)證應(yīng)用對(duì)于資源的訪問權(quán)限。

主要功能:

1.訪問控制決策:IAM模塊通過Policy Decision Point(PDP)基于訪問控制策略來決定應(yīng)用是否被允許執(zhí)行請(qǐng)求動(dòng)作。訪問控制策略是一些約束條件,描述了訪問特定資源或服務(wù)需要哪些Capability。Capability是應(yīng)用身份信息的一個(gè)屬性,在定義Application Manifest時(shí),開發(fā)者為每個(gè)應(yīng)用分配對(duì)應(yīng)的Capability。


2.訪問控制執(zhí)行:IAM模塊通過Policy Enforcement Point(PEP)在應(yīng)用提出請(qǐng)求時(shí)中斷控制流,向PDP請(qǐng)求訪問控制決策并根據(jù)決策返回的布爾值進(jìn)行對(duì)應(yīng)操作。PEP可以實(shí)現(xiàn)對(duì)Service、Foundation FC以及相關(guān)模型資源的訪問控制。

3.應(yīng)用身份識(shí)別:IAM模塊通過Execution Management(EM)模塊獲取應(yīng)用身份信息,以便進(jìn)行訪問控制決策和執(zhí)行。EM模塊會(huì)根據(jù)模型信息,去創(chuàng)建Adaptive應(yīng)用的運(yùn)行實(shí)例,所以EM也需要去負(fù)責(zé)追蹤運(yùn)行進(jìn)程的屬性,也即正在運(yùn)行的應(yīng)用的PID、UID、Key或UUID。

加密(Cryptography)

圖片

High level architecture of Cryptography

功能描述:


加密模塊(Crypto)是一種實(shí)現(xiàn)通用加密操作和安全密鑰管理的軟件組件。Crypto模塊支持在運(yùn)行時(shí)動(dòng)態(tài)生成密鑰和加密作業(yè),以及對(duì)數(shù)據(jù)流進(jìn)行操作。為了減少存儲(chǔ)需求,可以將密鑰內(nèi)部存儲(chǔ)在加密后端中,也可以外部存儲(chǔ)并按需導(dǎo)入。Crypto模塊旨在支持將對(duì)安全敏感的操作和決策封裝在單獨(dú)的組件中,例如硬件安全模塊(HSM)。


主要功能:


1.加密操作:Crypto模塊提供了一系列標(biāo)準(zhǔn)化的加密算法和模式,用于對(duì)數(shù)據(jù)進(jìn)行加密、解密、簽名、驗(yàn)證等操作。Crypto模塊支持對(duì)稱加密(例如AES、DES、3DES等)、非對(duì)稱加密(例如RSA、ECC等)、哈希函數(shù)(例如SHA-1、SHA-2、SHA-3等)、消息認(rèn)證碼(例如HMAC、CMAC等)和數(shù)字簽名(例如ECDSA、RSA-PSS等)。


2.密鑰管理:Crypto模塊提供了一系列標(biāo)準(zhǔn)化的接口和服務(wù),用于管理密鑰的生成、存儲(chǔ)、導(dǎo)入、導(dǎo)出、更新、刪除等操作。Crypto模塊支持本地密鑰生成和基于現(xiàn)有供應(yīng)密鑰的端到端保護(hù)的密鑰引入。Crypto模塊還支持對(duì)密鑰進(jìn)行訪問控制和使用限制,以提高密鑰的安全性。


3.證書管理:Crypto模塊提供了一系列標(biāo)準(zhǔn)化的接口和服務(wù),用于管理證書的生成、存儲(chǔ)、導(dǎo)入、導(dǎo)出、驗(yàn)證等操作。Crypto模塊支持X.509證書格式,以及基于PKCS#7或PKCS#10的證書請(qǐng)求和響應(yīng)。

日志和跟蹤(Log & Trace)

圖片

功能描述:

一種實(shí)現(xiàn)日志記錄和追蹤功能的軟件組件。Log模塊可以在開發(fā)期間以及生產(chǎn)中和生產(chǎn)后使用日志記錄和追蹤功能,以便對(duì)自適應(yīng)平臺(tái)的運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè)和分析。

主要功能:

? 本地日志 (輸出到控制臺(tái)或文件)日志記錄,Log模塊提供了一系列標(biāo)準(zhǔn)化的方法,用于向不同的日志接收器發(fā)送日志信息,例如通信總線、系統(tǒng)上的文件和串行控制臺(tái)等。Log模塊支持多種日志級(jí)別,例如錯(cuò)誤、警告、信息、調(diào)試等,以及多種日志格式。Log模塊還可以自動(dòng)在日志信息中添加時(shí)間戳和其他元數(shù)據(jù),以便進(jìn)行排序和過濾。

? 遠(yuǎn)程日志記錄(使用DLT協(xié)議),Log模塊提供了一種基于DLT協(xié)議的追蹤功能,用于對(duì)自適應(yīng)平臺(tái)的運(yùn)行時(shí)行為進(jìn)行分析和優(yōu)化。DLT協(xié)議是一種標(biāo)準(zhǔn)化的交付和表示格式,可以將日志信息打包為標(biāo)準(zhǔn)化的幀,并添加一些額外的信息,例如ECU ID、軟件集群ID等。Log模塊可以將LT幀發(fā)送到追蹤工具或其他設(shè)備,以便進(jìn)行可視化和分析。

更新配置管理UCM

圖片

功能描述:


為了支持Adaptive Platform上軟件的更改,更新和配置管理器(UCM)提供了處理軟件更新請(qǐng)求的Adaptive Platform服務(wù)。


主要功能:


UCM可以接收來自后端服務(wù)器或診斷測(cè)試儀的軟件更新請(qǐng)求,負(fù)責(zé)在自適應(yīng)平臺(tái)上安裝、更新、刪除和保留軟件記錄。


UCM可以處理不同格式和類型的軟件包,包括完整包、增量包、后端包、車輛包等,根據(jù)軟件包清單中的元數(shù)據(jù)和依賴關(guān)系,執(zhí)行相應(yīng)的操作。


UCM可以與UCM主服務(wù)器協(xié)作,以在車輛內(nèi)部分發(fā)和協(xié)調(diào)多個(gè)UCM客戶端的軟件包,實(shí)現(xiàn)軟件的一致性和同步。


UCM可以在軟件安裝或更新后,執(zhí)行激活或回退操作,確保軟件的可靠性和安全性。


UCM可以提供軟件的版本信息、狀態(tài)信息、錯(cuò)誤信息等,供客戶端查詢和監(jiān)控。

PHM模塊(Platform Health Management)

功能描述:


PHM是一種實(shí)現(xiàn)平臺(tái)健康管理和功能安全功能的軟件組件。PHM模塊監(jiān)控運(yùn)行的應(yīng)用程序,當(dāng)受監(jiān)控實(shí)體發(fā)生錯(cuò)誤/故障時(shí),PHM模塊可以觸發(fā)恢復(fù)操作?;謴?fù)操作具體由集成人員根據(jù)平臺(tái)軟件架構(gòu)需求,在Manifest文件當(dāng)中定義。


主要功能:


? 全局和本地監(jiān)督(Global and local supervision)
? 邏輯監(jiān)督(Logical supervision)
? 恢復(fù)操作 (Recovery actions)
? 存活監(jiān)督(Alive supervision)
? 截止日期監(jiān)控(Deadline monitoring )

持久化(Persistence)

圖片

功能描述:


Persistence模塊是一種讓自適應(yīng)平臺(tái)的軟件可以保存和讀取數(shù)據(jù)的軟件組件。它可以把數(shù)據(jù)存儲(chǔ)在不會(huì)丟失的存儲(chǔ)器中,即使車輛關(guān)機(jī)或重啟也不會(huì)影響。它提供了一個(gè)統(tǒng)一的接口,讓軟件可以方便地訪問不同的存儲(chǔ)位置。


主要功能:


? 鍵值存儲(chǔ)(Key-Value storage)
? 文件代理訪問(File proxy access)
? 并行訪問數(shù)據(jù)(Parallel access to data)

? 持久數(shù)據(jù)的安裝、更新和回滾(Installation, Update and Rollback of Persistent Data)

時(shí)間同步(ara::tsync)

功能描述:


ara::tsync它提供了時(shí)間同步的功能,使得不同的節(jié)點(diǎn)可以共享一個(gè)全局的時(shí)間基準(zhǔn)。ara::tsync的主要特點(diǎn)有:
·基于服務(wù)的架構(gòu),可以動(dòng)態(tài)地發(fā)現(xiàn)和訂閱不同的時(shí)間基準(zhǔn)資源,如全局時(shí)間主節(jié)點(diǎn)或從屬時(shí)間基準(zhǔn)節(jié)點(diǎn)。
·支持多種網(wǎng)絡(luò)綁定,如SOME/IP、REST、DDS等,以適應(yīng)不同的通信需求和場(chǎng)景。
·支持即時(shí)時(shí)間同步和延遲時(shí)間同步兩種模式,分別用于高精度和低精度的時(shí)間同步需求。
·支持用戶數(shù)據(jù)的傳輸,可以在時(shí)間同步消息中附加額外的信息,如診斷數(shù)據(jù)、配置數(shù)據(jù)等。


主要功能:


? 啟動(dòng)和關(guān)閉 (Startup & shutdown)
? 時(shí)間校正 (Time correction)
? 時(shí)基提供者和使用者模式 (Time base provider and consumer modes)

入侵檢測(cè)系統(tǒng)管理(ara::idsm)

圖片

IDS Overview

功能描述:


ara::idsm它提供了入侵檢測(cè)系統(tǒng)管理的功能,使得不同的安全傳感器可以向它報(bào)告安全事件,并對(duì)安全事件進(jìn)行過濾和處理。ara::idsm的主要特點(diǎn)有:
·基于服務(wù)的架構(gòu),可以動(dòng)態(tài)地發(fā)現(xiàn)和訂閱不同的安全事件資源,如入侵檢測(cè)系統(tǒng)主節(jié)點(diǎn)或從屬入侵檢測(cè)系統(tǒng)節(jié)點(diǎn)。
·支持多種網(wǎng)絡(luò)綁定,如SOME/IP、REST、DDS等,以適應(yīng)不同的通信需求和場(chǎng)景。
·支持用戶定義的診斷事件內(nèi)存,可以將安全事件存儲(chǔ)在獨(dú)立于主診斷事件內(nèi)存的內(nèi)存中。
·支持用戶數(shù)據(jù)的傳輸,可以在安全事件消息中附加額外的信息,如診斷數(shù)據(jù)、配置數(shù)據(jù)等。


主要功能:


? 事件生成 (Event generation)
? 報(bào)告模式(Reporting modes)
? 過濾器鏈條 (Filter chains)
? QSevs的傳播和認(rèn)證(Propagation & authentication of Qsevs)
? Rate and traffic limitation
? 訪問控制(包括診斷訪問)Access control (including diagnostic access)

防火墻(ara::fw)

圖片

Architecture of the FC Firewall  (圖片來自AUTOSAR官網(wǎng))

功能描述:


ara::FW是AP AUTOSAR中的一個(gè)模塊,它提供了防火墻的功能,使得不同的節(jié)點(diǎn)可以根據(jù)防火墻規(guī)則來控制網(wǎng)絡(luò)訪問和通信。


ara::FW的主要特點(diǎn)有:


基于服務(wù)的架構(gòu),可以動(dòng)態(tài)地發(fā)現(xiàn)和訂閱不同的防火墻資源,如防火墻主節(jié)點(diǎn)或從屬防火墻節(jié)點(diǎn)。


支持多種網(wǎng)絡(luò)綁定,如SOME/IP、REST、DDS等,以適應(yīng)不同的通信需求和場(chǎng)景。


支持用戶定義的防火墻規(guī)則,可以在運(yùn)行時(shí)動(dòng)態(tài)地修改和應(yīng)用防火墻規(guī)則,以適應(yīng)不同的車輛狀態(tài)或外部系統(tǒng)的變化。
支持用戶數(shù)據(jù)的傳輸,可以在防火墻消息中附加額外的信息,如診斷數(shù)據(jù)、配置數(shù)據(jù)等。

圖片

更多信息請(qǐng)?jiān)L問 

www.etas.cn

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多