基于OSEK/VDX規(guī)范的車(chē)控電子開(kāi)發(fā)
3.3 OSEK NM規(guī)范
對(duì)于由不同生產(chǎn)商生產(chǎn)的汽車(chē)ECU產(chǎn)品,它們有通過(guò)串行數(shù)據(jù)交換連接成網(wǎng)絡(luò)的趨勢(shì)。因此,為了避免重復(fù)勞動(dòng)和縮短開(kāi)發(fā)時(shí)間,需要有一個(gè)基礎(chǔ)性的標(biāo)準(zhǔn)。OSEK NM規(guī)范(OSEK Network Management system specification)為提高ECU產(chǎn)品的網(wǎng)絡(luò)互連能力提供了一個(gè)網(wǎng)絡(luò)連接標(biāo)準(zhǔn)。OSEK NM任務(wù)的目的是提高ECU產(chǎn)品網(wǎng)絡(luò)通信的安全性和可靠性。OSEK NM規(guī)范規(guī)定了網(wǎng)絡(luò)管理的機(jī)制和應(yīng)用編程接口(API)。采用OSEK NM規(guī)范的ECU產(chǎn)品具有以下功能:
◆ 經(jīng)過(guò)授權(quán)后,每一個(gè)節(jié)點(diǎn)必須是可以訪問(wèn)的;
◆ 在允許訪問(wèn)失敗的情況下,具有最大容忍限度;
◆ 支持網(wǎng)絡(luò)診斷。
作為一個(gè)基礎(chǔ)的配置,遵守OSEK規(guī)范的網(wǎng)絡(luò)管理實(shí)現(xiàn)必須應(yīng)用在網(wǎng)絡(luò)的所有節(jié)點(diǎn)。每一個(gè)節(jié)點(diǎn)都能在規(guī)定的間隔內(nèi)獲得整個(gè)網(wǎng)絡(luò)的狀態(tài)信息。 OSEK NM為網(wǎng)絡(luò)監(jiān)控提供了兩種機(jī)制:一種是通過(guò)監(jiān)控應(yīng)用的消息進(jìn)行間接監(jiān)控;另一種是對(duì)于特定的網(wǎng)絡(luò)管理利用標(biāo)記機(jī)制進(jìn)行直接監(jiān)控。OSEK NM包括以下部分:
◆ OSEK NM與應(yīng)用程序的接口(API);
◆ 節(jié)點(diǎn)監(jiān)控的算法;
◆ OSEK NM與OSEK COM的接口;
◆ 轉(zhuǎn)換到睡眠狀態(tài)的算法;
◆ OSEK NM協(xié)議數(shù)據(jù)單元(NMPDU)。
圖3說(shuō)明了OSEK NM在整個(gè)系統(tǒng)中的位置及其與其他部分的關(guān)系。
圖3 OSEK NM在系統(tǒng)中的位置
3.4 OSEK實(shí)現(xiàn)語(yǔ)言規(guī)范
為了達(dá)到軟件可移植的目標(biāo),OSEK OIL規(guī)范(OSEK Implementation Language Specification)定義了一種配置和使用OSEK應(yīng)用的方法。圖4表示了一個(gè)遵守OSEK規(guī)范的應(yīng)用開(kāi)發(fā)過(guò)程。OIL文件可以是手寫(xiě)的或者是系統(tǒng)配置工具產(chǎn)生的。
圖4 基于OSEK規(guī)范的應(yīng)用開(kāi)發(fā)過(guò)程
OIL提供一種在特定CPU中配置OSEK應(yīng)用的機(jī)制。每個(gè)CPU對(duì)應(yīng)一個(gè)OIL描述,所有的OSEK系統(tǒng)對(duì)象用OIL對(duì)象來(lái)描述。OSEK應(yīng)用的OIL描述是一組OIL對(duì)象的組合,CPU是這些OIL對(duì)象的容器。OIL明確地為每個(gè)OIL對(duì)象定義了所有標(biāo)準(zhǔn)屬性。每個(gè)OSEK應(yīng)用可以定義附加的特殊執(zhí)行屬性和引用。每個(gè)OSEK應(yīng)用可以限制每個(gè)屬性的取值范圍。
OIL中的對(duì)象包括:CPU(處理器)、OS(操作系統(tǒng))、Appmode(應(yīng)用模式)、Isr(中斷服務(wù))、Resource(資源)、 Task(任務(wù))、Counter(記數(shù)器)、Event(事件)、Alarm(報(bào)警器)、Com(通信子系統(tǒng))、Message(消息)、Ipdu(交互層協(xié)議數(shù)據(jù)單元)、NM(網(wǎng)絡(luò)管理)。
3.5 OSEK ORTI規(guī)范
OSEK ORTI規(guī)范(OSEK RunTime InteRFace Specification)為OSEK操作系統(tǒng)開(kāi)發(fā)工具提供了統(tǒng)一的接口。通過(guò)OSEK ORTI,使調(diào)試工具可以獲取和顯示操作系統(tǒng)的運(yùn)行狀態(tài)和性能、各種任務(wù)的狀態(tài)、各種操作系統(tǒng)對(duì)象的狀態(tài)等信息。ORTI文件是由系統(tǒng)生成器在系統(tǒng)生成階段產(chǎn)生的。ORTI使用KIOL語(yǔ)言將操作系統(tǒng)內(nèi)核信息傳遞給調(diào)試器,同時(shí)為OSEK標(biāo)準(zhǔn)對(duì)象定義了一些的語(yǔ)法規(guī)則。ORTI信息是通過(guò)ASCII文本文件提供的。由于OSEK/VDX是基于靜態(tài)配置的,因此,ORTI不支持動(dòng)態(tài)的表示和配置數(shù)據(jù)。
OSEK ORTI規(guī)范包括Part A和Part B兩部分:Part A介紹了ORTI為調(diào)試工具定義的操作系統(tǒng)內(nèi)核對(duì)象的語(yǔ)言(Kernel Object Interface Language,KOIL);Part B描述了OSEK/VDX標(biāo)準(zhǔn)對(duì)象、屬性和它們的含義。
評(píng)論