新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 為嵌入式列車控制系統(tǒng)選擇操作系統(tǒng)

        為嵌入式列車控制系統(tǒng)選擇操作系統(tǒng)

        作者: 時間:2012-11-17 來源:網(wǎng)絡(luò) 收藏

        為確保安全和效率,鐵路和運(yùn)輸系統(tǒng)正在實(shí)施各種保護(hù)系統(tǒng),如列車自動保護(hù)(ATP)、積極列車控制(PTC)和基于通信的列車控制(CBTC)等。地鐵和其他軌道交通系統(tǒng)正在采用自動列車操作(ATO)系統(tǒng)并運(yùn)行“無人駕駛”列車(沒有駕駛員或駕駛員只用來處理緊急情況的列車)。

        這些與安全息息相關(guān)。它們必須滿足IEC 61508和EN 5012x標(biāo)準(zhǔn)中所設(shè)定的嚴(yán)格可靠性要求。本文側(cè)重于介紹中對系統(tǒng)可靠性帶來最直接影響的一些特點(diǎn):確保實(shí)時性的架構(gòu)特性、故障分離和故障恢復(fù)等功能。

        01_opt2.jpeg

        圖1 新西蘭的ONTRACK安裝了一個四頻道RoIP裝置,命名為ORC,作為IP網(wǎng)絡(luò)和傳統(tǒng)的VHF/IHF無線電網(wǎng)絡(luò)之間的橋梁,用于促進(jìn)列車安全運(yùn)行和追蹤軌道工人的位置。

        標(biāo)準(zhǔn)

        二十年前,歐洲電工標(biāo)準(zhǔn)化委員會頒發(fā)了鐵路應(yīng)用標(biāo)準(zhǔn)EN 50126,它定義了可靠性、可用性、可維護(hù)性和安全性的規(guī)范,同時頒布了用于鐵路控制和保護(hù)系統(tǒng)軟件的標(biāo)準(zhǔn)EN50128和用于發(fā)送信號的安全相關(guān)的電子系統(tǒng)的標(biāo)準(zhǔn)EN 50129。

        EN 50128:強(qiáng)調(diào)了軟件架構(gòu)的重要性:“軟件架構(gòu)是軟件和軟件安全完整性等級開發(fā)的基本安全策略。”規(guī)定如果要求SIL 3 或SIL 4的系統(tǒng)部署COTS(商用現(xiàn)成)軟件,“應(yīng)定義一個策略以檢測COTS軟件的故障并保護(hù)系統(tǒng)免于故障”。

        可靠性和隔離性

        在一個軟件系統(tǒng)中,可靠性是可用性和可靠性的組合。這些品質(zhì)主要取決于審計架構(gòu)。

        架構(gòu)是整個系統(tǒng)可靠性的基礎(chǔ),它決定了將組件與不同的SIL要求進(jìn)行分離的難度和成本。

        例如,一個ATO系統(tǒng)可能包含了一個顯示非關(guān)鍵信息的多媒體組件。該組件只需要達(dá)到SIL1或甚至SIL 0(EN標(biāo)準(zhǔn)為非安全相關(guān)的軟件定義了SIL 0)就可以了,而關(guān)鍵組件(處理與軌旁基礎(chǔ)設(shè)施相關(guān)的通信、管理減速和制動,報警等)則需要SIL 3或更高的認(rèn)證。一個有利于SIL 0組件分離的架構(gòu)不能在系統(tǒng)的安全關(guān)鍵部分上妥協(xié):

        a) 簡化設(shè)計,允許以最少的集成工作為SIL 0組件使用COTS軟件

        b) eli消除了為滿足SIL 3要求而產(chǎn)生的設(shè)計、構(gòu)建和驗(yàn)證非關(guān)鍵組件的成本。

        c) 由于它減少了安全關(guān)鍵系統(tǒng)的范圍,側(cè)重于關(guān)鍵系統(tǒng)組件的開發(fā)和驗(yàn)證,使得整體系統(tǒng)更為安全。

        架構(gòu)

        支持可靠性保證的操作系統(tǒng)通常被稱為實(shí)時操作系統(tǒng)(RTOS)。實(shí)時操作系統(tǒng)的架構(gòu)是不同的。最常見的架構(gòu)是實(shí)時執(zhí)行、單片式和微內(nèi)核。

        實(shí)時執(zhí)行

        盡管已有50年歷史,實(shí)時執(zhí)行模式依然是許多實(shí)時操作系統(tǒng)的基礎(chǔ)。在此模式中,所有軟件組件—內(nèi)核、網(wǎng)絡(luò)協(xié)議棧、文件系統(tǒng)、設(shè)備驅(qū)動程序和應(yīng)用程序均在單一的內(nèi)存地址空間里運(yùn)行。

        雖然有效,但該架構(gòu)有兩大弱點(diǎn)。首先,任何模塊中的單一指針錯誤均能破壞內(nèi)核或任何其它模塊所使用的內(nèi)存,從而可能導(dǎo)致系統(tǒng)范圍內(nèi)的故障。其次,系統(tǒng)崩潰也許沒有留下幫助識別錯誤的診斷信息。

        宏內(nèi)核

        宏內(nèi)核實(shí)時操作系統(tǒng)通過使用一個架構(gòu)解決了內(nèi)存錯誤所引起的系統(tǒng)崩潰的問題,在該架構(gòu)里,用戶應(yīng)用程序作為內(nèi)存保護(hù)進(jìn)程而運(yùn)行。

        該架構(gòu)保護(hù)了內(nèi)核免于錯誤的用戶代碼,但內(nèi)核組件仍舊與文件系統(tǒng)、協(xié)議棧和驅(qū)動程序共享地址空間。因此,這些服務(wù)中的任何一個錯誤都能讓系統(tǒng)崩潰。例如,在一個Linux操作系統(tǒng)中,驅(qū)動程序組成75%的代碼,每一行顯示能達(dá)到內(nèi)核的潛在錯誤。與實(shí)時執(zhí)行操作系統(tǒng)一樣,單片式操作系統(tǒng)架構(gòu)的系統(tǒng)也許難于滿足可靠性的要求。

        微內(nèi)核

        在一個微內(nèi)核實(shí)時操作系統(tǒng)中,應(yīng)用程序、設(shè)備驅(qū)動程序、文件系統(tǒng)和網(wǎng)絡(luò)協(xié)議棧存在于內(nèi)核之外的一個獨(dú)立的地址空間;它們即與內(nèi)核分離而且彼此分離。某一個組件中的故障不會波及系統(tǒng)。此外,由于它同樣以可預(yù)見的方式運(yùn)行,因此系統(tǒng)能重啟故障組件。

        02_opt2.jpeg

        圖2 微內(nèi)核:組件彼此分離,一個組件的故障不會波及整個系統(tǒng)


        對于安全相關(guān)的系統(tǒng),內(nèi)核與其它組件彼此分離是有利的。不是所有的組件都需要實(shí)現(xiàn)系統(tǒng)的安全關(guān)鍵部分所需的SIL。所要求的是較低級別的SIL組件能與安全關(guān)鍵組件分離。

        這種分離也能通過虛擬機(jī)實(shí)現(xiàn)(管理程序),但這種策略通常需要更強(qiáng)大的處理器,這限制了合適的處理器的選擇并增加了成本。它也增加了系統(tǒng)的復(fù)雜程度,并可能影響實(shí)時性能。

        實(shí)時操作系統(tǒng)的關(guān)鍵特點(diǎn)

        微內(nèi)核架構(gòu)只是實(shí)現(xiàn)操作系統(tǒng)可靠性的一個特點(diǎn)。其它關(guān)鍵特點(diǎn)包括:

        ? 通過搶占低優(yōu)先級的內(nèi)核調(diào)用來滿足實(shí)時性的承諾

        ? 由于優(yōu)先級反轉(zhuǎn),防止不可預(yù)知的行為和系統(tǒng)故障

        ? 保證CPU資源調(diào)度的可用性以防止關(guān)鍵進(jìn)程饑餓

        ? 利用軟件看門狗監(jiān)視進(jìn)程,并在組件發(fā)生故障時采取糾正行動

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 诸暨市| 都江堰市| 二连浩特市| 汉沽区| 和硕县| 溆浦县| 贡山| 宜丰县| 芦山县| 彩票| 饶阳县| 双鸭山市| 繁昌县| 林口县| 土默特左旗| 石狮市| 平舆县| 灌云县| 木兰县| 陈巴尔虎旗| 闻喜县| 泽普县| 和平县| 徐汇区| 连山| 佛山市| 永清县| 清新县| 怀来县| 新津县| 昌平区| 尉氏县| 呈贡县| 额尔古纳市| 金阳县| 乌兰浩特市| 莲花县| 六盘水市| 定西市| 无极县| 崇礼县|