<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 為嵌入式列車(chē)控制系統選擇操作系統

為嵌入式列車(chē)控制系統選擇操作系統

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

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

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

01_opt2.jpeg

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

標準

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

EN 50128:強調了軟件架構的重要性:“軟件架構是軟件和軟件安全完整性等級開(kāi)發(fā)的基本安全策略?!币幎ㄈ绻骃IL 3 或SIL 4的系統部署COTS(商用現成)軟件,“應定義一個(gè)策略以檢測COTS軟件的故障并保護系統免于故障”。

可靠性和隔離性

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

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

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

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

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

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

架構

支持可靠性保證的操作系統通常被稱(chēng)為實(shí)時(shí)操作系統(RTOS)。實(shí)時(shí)操作系統的架構是不同的。最常見(jiàn)的架構是實(shí)時(shí)執行、單片式和微內核。

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

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

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

宏內核

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

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

微內核

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

02_opt2.jpeg

圖2 微內核:組件彼此分離,一個(gè)組件的故障不會(huì )波及整個(gè)系統


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

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

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

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

? 通過(guò)搶占低優(yōu)先級的內核調用來(lái)滿(mǎn)足實(shí)時(shí)性的承諾

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

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

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

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>