基于OSEK/VDX規(guī)范的車控電子開發(fā)
3.3 OSEK NM規(guī)范
對于由不同生產(chǎn)商生產(chǎn)的汽車ECU產(chǎn)品,它們有通過串行數(shù)據(jù)交換連接成網(wǎng)絡的趨勢。因此,為了避免重復勞動和縮短開發(fā)時間,需要有一個基礎性的標準。OSEK NM規(guī)范(OSEK Network Management system specification)為提高ECU產(chǎn)品的網(wǎng)絡互連能力提供了一個網(wǎng)絡連接標準。OSEK NM任務的目的是提高ECU產(chǎn)品網(wǎng)絡通信的安全性和可靠性。OSEK NM規(guī)范規(guī)定了網(wǎng)絡管理的機制和應用編程接口(API)。采用OSEK NM規(guī)范的ECU產(chǎn)品具有以下功能:
◆ 經(jīng)過授權后,每一個節(jié)點必須是可以訪問的;
◆ 在允許訪問失敗的情況下,具有最大容忍限度;
◆ 支持網(wǎng)絡診斷。
作為一個基礎的配置,遵守OSEK規(guī)范的網(wǎng)絡管理實現(xiàn)必須應用在網(wǎng)絡的所有節(jié)點。每一個節(jié)點都能在規(guī)定的間隔內(nèi)獲得整個網(wǎng)絡的狀態(tài)信息。 OSEK NM為網(wǎng)絡監(jiān)控提供了兩種機制:一種是通過監(jiān)控應用的消息進行間接監(jiān)控;另一種是對于特定的網(wǎng)絡管理利用標記機制進行直接監(jiān)控。OSEK NM包括以下部分:
◆ OSEK NM與應用程序的接口(API);
◆ 節(jié)點監(jiān)控的算法;
◆ OSEK NM與OSEK COM的接口;
◆ 轉換到睡眠狀態(tài)的算法;
◆ OSEK NM協(xié)議數(shù)據(jù)單元(NMPDU)。
圖3說明了OSEK NM在整個系統(tǒng)中的位置及其與其他部分的關系。

圖3 OSEK NM在系統(tǒng)中的位置
3.4 OSEK實現(xiàn)語言規(guī)范
為了達到軟件可移植的目標,OSEK OIL規(guī)范(OSEK Implementation Language Specification)定義了一種配置和使用OSEK應用的方法。圖4表示了一個遵守OSEK規(guī)范的應用開發(fā)過程。OIL文件可以是手寫的或者是系統(tǒng)配置工具產(chǎn)生的。

圖4 基于OSEK規(guī)范的應用開發(fā)過程
OIL提供一種在特定CPU中配置OSEK應用的機制。每個CPU對應一個OIL描述,所有的OSEK系統(tǒng)對象用OIL對象來描述。OSEK應用的OIL描述是一組OIL對象的組合,CPU是這些OIL對象的容器。OIL明確地為每個OIL對象定義了所有標準屬性。每個OSEK應用可以定義附加的特殊執(zhí)行屬性和引用。每個OSEK應用可以限制每個屬性的取值范圍。
OIL中的對象包括:CPU(處理器)、OS(操作系統(tǒng))、Appmode(應用模式)、Isr(中斷服務)、Resource(資源)、 Task(任務)、Counter(記數(shù)器)、Event(事件)、Alarm(報警器)、Com(通信子系統(tǒng))、Message(消息)、Ipdu(交互層協(xié)議數(shù)據(jù)單元)、NM(網(wǎng)絡管理)。
3.5 OSEK ORTI規(guī)范
OSEK ORTI規(guī)范(OSEK RunTime InteRFace Specification)為OSEK操作系統(tǒng)開發(fā)工具提供了統(tǒng)一的接口。通過OSEK ORTI,使調(diào)試工具可以獲取和顯示操作系統(tǒng)的運行狀態(tài)和性能、各種任務的狀態(tài)、各種操作系統(tǒng)對象的狀態(tài)等信息。ORTI文件是由系統(tǒng)生成器在系統(tǒng)生成階段產(chǎn)生的。ORTI使用KIOL語言將操作系統(tǒng)內(nèi)核信息傳遞給調(diào)試器,同時為OSEK標準對象定義了一些的語法規(guī)則。ORTI信息是通過ASCII文本文件提供的。由于OSEK/VDX是基于靜態(tài)配置的,因此,ORTI不支持動態(tài)的表示和配置數(shù)據(jù)。
OSEK ORTI規(guī)范包括Part A和Part B兩部分:Part A介紹了ORTI為調(diào)試工具定義的操作系統(tǒng)內(nèi)核對象的語言(Kernel Object Interface Language,KOIL);Part B描述了OSEK/VDX標準對象、屬性和它們的含義。
評論