我們的街道和高速公路正在成為車輪嵌入式網(wǎng)絡(luò)的道路?,F(xiàn)代公路車輛是五十個(gè)或更多嵌入式處理器的平臺(tái),包含數(shù)百萬(wàn)行計(jì)算機(jī)代碼。汽車制造商希望盡可能使用現(xiàn)成的軟件,因此他們可以將內(nèi)部軟件開(kāi)發(fā)工作集中在具有專業(yè)知識(shí)和獨(dú)特創(chuàng)造能力的汽車專用領(lǐng)域。
許多與嵌入相關(guān)的基本問(wèn)題很容易通過(guò)實(shí)時(shí)操作系統(tǒng)(RTOS)解決。一個(gè)很好的例子是歐洲汽車行業(yè)的OSEK/VDX聯(lián)盟,它為車輛中的分布式嵌入式控制單元定義了標(biāo)準(zhǔn)架構(gòu)。符合OSEK/VDX標(biāo)準(zhǔn)的RTOS可滿足當(dāng)今汽車嵌入式控制單元在以下領(lǐng)域的需求:動(dòng)力傳動(dòng)系,底盤(pán)和傳動(dòng)系統(tǒng)。然而,OSEK/VDX在以下領(lǐng)域可能無(wú)法滿足未來(lái)汽車應(yīng)用的需求:高性能動(dòng)力傳動(dòng)系,信息娛樂(lè)系統(tǒng)和安全性/安全性。
目前,這些高端汽車應(yīng)用的許多替代RTOS正在推出。
RTOS內(nèi)核大多數(shù)RTOS內(nèi)核支持基于優(yōu)先級(jí)的 preemption 用于任務(wù)調(diào)度。一些RTOS還提供更復(fù)雜的調(diào)度選擇,例如“截止日期調(diào)度”或“分區(qū)調(diào)度”。它們還提供內(nèi)存分配方案來(lái)管理大范圍的RAM內(nèi)存,以及設(shè)備I/O監(jiān)控器來(lái)管理和構(gòu)建大量不同的設(shè)備驅(qū)動(dòng)程序。例如,設(shè)備I/O監(jiān)控器可用于管理通信設(shè)備驅(qū)動(dòng)器陣列,例如可在汽車遠(yuǎn)程信息處理單元中找到的。驅(qū)動(dòng)程序可能包括:CAN(控制器區(qū)域網(wǎng)絡(luò)),LIN(本地互連網(wǎng)絡(luò)),F(xiàn)ireWire,F(xiàn)lexRay和MOST(面向媒體的系統(tǒng)傳輸)。
設(shè)備I/O監(jiān)控器提供標(biāo)準(zhǔn)通道通過(guò)哪些應(yīng)用程序軟件任務(wù)可以操作各種驅(qū)動(dòng)程序。
RTOS內(nèi)核中解決的下一個(gè)主要問(wèn)題是任務(wù)間通信和同步。
間接與直接消息傳遞大多數(shù)RTOS提供某種形式的異步消息傳遞,用于任務(wù)間通信。異步消息傳遞是一種簡(jiǎn)單直觀的松散耦合方法,用于從任務(wù)到任務(wù)的數(shù)據(jù)傳輸,其中發(fā)送消息的任務(wù)不等待來(lái)自接收器任務(wù)的任何信息。
異步消息傳遞的實(shí)現(xiàn)可能在不同的RTOS中以不同的方式完成。概念上最簡(jiǎn)單的方法稱為直接異步消息傳遞,其中任務(wù)可以將消息直接發(fā)送到另一個(gè)任務(wù),如下所示。
用于任務(wù)間通信的直接消息傳遞
這是一種簡(jiǎn)單而優(yōu)雅的軟件設(shè)計(jì)模型。另一方面,間接異步消息傳遞,其中應(yīng)用程序軟件涉及消息隊(duì)列,任務(wù)發(fā)送和接收消息,如此處所示,是一種更笨拙的軟件設(shè)計(jì)模型。
間接消息傳遞以進(jìn)行任務(wù)間通信
對(duì)于汽車信息娛樂(lè)和安全等高度復(fù)雜的應(yīng)用,最好通過(guò)以下方式控制軟件復(fù)雜性使用直接消息傳遞進(jìn)行任務(wù)間通信。出于同樣的原因,直接消息傳遞應(yīng)該是多核,分布式多處理器和容錯(cuò)汽車系統(tǒng)設(shè)計(jì)中的主要通信機(jī)制。
-
RTOS
+關(guān)注
關(guān)注
24文章
851瀏覽量
121145
發(fā)布評(píng)論請(qǐng)先 登錄
FreeRTOS如何刪除clib支持和抽象rtos?

評(píng)論