基于OSEK/VDX平臺的汽車(chē)嵌入式系統開(kāi)發(fā)
2.2 OSEK/VDX的任務(wù)管理
OSEK/VDX將任務(wù)分為基本任務(wù)和擴展任務(wù)?;救蝿?wù)具有3種狀態(tài):運行狀態(tài)、就緒狀態(tài)、掛起狀態(tài);擴展任務(wù)比基本任務(wù)增加一個(gè)等待狀態(tài)?;救蝿?wù)只在開(kāi)始和結束時(shí)才有同步點(diǎn)。擴展任務(wù)運行時(shí)可能進(jìn)入等待狀態(tài),因此不僅在開(kāi)始和結束有同步點(diǎn),而且運行過(guò)程中可能有多個(gè)同步點(diǎn)。圖2所示的是擴展任務(wù)與基本任務(wù)的狀態(tài)轉化圖。本文引用地址:http://dyxdggzs.com/article/150458.htm
2.3 OSEK實(shí)現語(yǔ)言規范
為了達到軟件可移植的目標,OSEK OIL規范(OSEK Implementation Language Specification)定義了一種配置和使用OSEK應用的方法。圖3表示了一個(gè)遵守OSEK規范的應用開(kāi)發(fā)過(guò)程。OIL文件可以是手寫(xiě)的或者是系統配置工具產(chǎn)生。
OIL提供一種在特定CPU中配置OSEK應用的機制。每個(gè)CPU對應一個(gè)OIL描述。所有的OSEK系統對象用OIL對象來(lái)描述。OSEK應用的OIL描述是一組OIL對象的組合。CPU是這些OIL對象的容器。OIL明確地為每個(gè)OIL對象定義了所有標準屬性。每個(gè)OSEK應用可以定義附加的特殊執行屬性和引用。每個(gè)OSEK應用可以限制每個(gè)屬性的取值范圍。
評論