實時操作系統(tǒng) (RTOS) 是嵌入式設備的基礎。所有特定于應用程序的代碼都依賴于 RTOS 來執(zhí)行。RTOS 類似于建筑物的地基 - 如果地基不牢固,整棟建筑物可能會倒塌。嵌入式系統(tǒng)中的 RTOS 也是如此。如果它出現(xiàn)故障,整個應用程序可能會失敗。
嵌入式市場上有 100 多種開源和商用 RTOS,但絕大多數都沒有功能安全認證。事實上,許多最常用的 RTOS 都沒有。鑒于此,應更加關注 RTOS 功能安全認證,不僅針對安全關鍵設備,而且針對所有嵌入式設備,以此作為縮短上市時間、提高產品質量和減少產品責任的手段。
對功能安全和保障的需求不斷增長
對于汽車、工業(yè)、醫(yī)療和其他行業(yè)的安全關鍵型設備開發(fā)人員來說,功能安全是首要考慮的問題。在安全關鍵型系統(tǒng)中使用 RTOS(無論是專有還是開源)都需要對嵌入式 RTOS 進行嚴格驗證。當監(jiān)管認證是強制性要求,并且需要針對目標安全標準的特定文檔和測試流程時,這一點尤其重要。
嵌入式系統(tǒng)、設備和裝置的客戶尋求的是軟件和硬件的安全性和可靠性能夠得到保證的信任和信心。對于涉及保護人類生命或與人類一起操作機器的系統(tǒng)而言,風險尤其高。
功能安全的范圍是端到端的,這意味著它必須將組件或子系統(tǒng)的任何功能視為整個系統(tǒng)自動保護功能運行的一部分。實現(xiàn)功能安全就是通過相關測試和認證機構的認證,提供硬件或軟件系統(tǒng)符合適當規(guī)定的功能安全要求的保證和證據。
最常見的功能安全標準
最常見的 RTOS 功能安全標準是IEC 61508,這是國際電工委員會 (IEC) 發(fā)布的一項國際標準。該標準通常適用于電氣、電子和可編程產品的功能安全。它適用于各種設備。該標準有四個安全完整性等級 (SIL),范圍從 SIL 1 到 SIL 4。SIL 等級越高,安全等級越高。例如,僅滿足 SIL 1 要求的軟件不應在需要 SIL 4 的安全關鍵設備中使用。
IEC 61508 衍生的其他功能安全標準包括醫(yī)療設備軟件國際標準 IEC 62304 和道路車輛功能安全標準 ISO 26262,后者適用于汽車電子電氣安全相關系統(tǒng)。對于鐵路運輸,有 EN 50126/8/9。
對于航空市場,美國聯(lián)邦航空管理局 (FAA) 已實施了類似的功能安全認證流程。軟件認證稱為 RTCA DO-178C,復雜電子硬件認證稱為 DO-254,這些認證適用于整個航空航天業(yè)。在歐洲,相應的認證是 EURICAE ED-12C。
RTOS 功能安全認證
從最高層面來看,RTOS 功能安全認證是正確操作的客觀衡量標準,進而也是質量的客觀衡量標準。例如,RTOS 功能安全認證通常需要 100% 的 C 語句測試覆蓋率和 100% 的分支/決策測試覆蓋率。它還需要經過驗證的軟件生命周期和安全手冊,以確保開發(fā)人員正確使用 RTOS。這代表了超越常見 RTOS 解決方案的嚴格程度。這種額外的嚴格程度實際上相當于行業(yè)最佳實踐。
更輕松地獲得 RTOS 認證
如果 RTOS 功能安全認證看起來令人望而生畏且耗時,那么針對 PX5 RTOS 的全新現(xiàn)成功能安全認證可讓嵌入式開發(fā)人員利用此 RTOS 預認證結合其嵌入式軟件認證來構建安全認證設備,適用于汽車、工業(yè)和醫(yī)療行業(yè)以及非安全關鍵設備。
SGS-TüV Saar 是一家領先的獨立認證公司,專門為安全相關系統(tǒng)測試、審核、驗證和認證嵌入式軟件。PX5 RTOS 獲得了最高級別的功能安全認證,具體為 IEC 61508 SIL 4、IEC 62304 C 級、ISO 26262 ASIL D 和 EN 50128 SW-SIL 4。
需要功能安全認證的設備的優(yōu)勢
對于需要功能安全認證的嵌入式設備,預先認證的 RTOS 具有直接價值。安全認證的 RTOS 的認證文檔可用于設備認證,這樣開發(fā)人員就無需在應用程序代碼之外再認證 RTOS 代碼。相反,開發(fā)人員只需提供 RTOS 認證工件作為應用程序認證的一部分即可,從而節(jié)省大量時間和金錢。
即使您的應用程序目前沒有功能安全認證要求,未來也很有可能需要。有關產品安全的新法規(guī)越來越多,例如《通用產品安全法規(guī)》(GPSR)、《歐盟機械法規(guī)》、《歐洲醫(yī)療器械法規(guī)》(EU MDR)、《歐洲網絡彈性法案》(CRA)等。使用經過安全認證的 RTOS 有助于確保您的設備面向未來。
認證之外的益處
經過安全認證的 RTOS 對所有設備制造商都大有裨益。遵循行業(yè)最佳實踐是產品責任的第一道防線。沒有經過功能安全認證的 RTOS 通常不遵循最佳實踐 — 它在軟件生命周期的某些元素上存在缺陷,最明顯的是驗證不足。使用這樣的 RTOS 很容易導致產品責任。
具有功能安全認證的 RTOS 經過了廣泛的測試,有助于縮短開發(fā)時間。更高質量的 RTOS 還有助于提高設備的整體質量,并降低設備在生產過程中被召回的風險。避免召回的成本很容易抵消安全認證 RTOS 的成本。
嵌入式設備安全與功能安全重疊。例如,如果 RTOS 中的問題導致內存損壞,黑客可以利用此問題進行拒絕服務、不當信息訪問甚至遠程執(zhí)行攻擊。經過安全認證的 RTOS 不太可能存在這些漏洞。
功能安全認證成功秘訣
RTOS 功能安全認證需要大量工作,這些工作都包含在一套廣泛的文檔中。這套文檔涵蓋軟件設計、開發(fā)計劃、軟件集成測試程序、軟件集成測試計劃、軟件集成測試報告、軟件要求、安全要求規(guī)范、編碼約定和 RTOS 安全手冊。安全手冊為軟件開發(fā)人員提供了如何在安全關鍵應用中使用 RTOS 的指導。
該套件中最有趣的文檔可能是軟件集成測試報告,其中包含所有測試結果,包括集成測試、測試期間的代碼覆蓋率和靜態(tài)分析。對于 PX5 RTOS 認證,IAR Systems 開發(fā)工具也具有廣泛的功能安全認證。
集成測試(圖 1)是一系列連續(xù)的測試,用于測試 RTOS 的所有功能。每個測試都會返回 PASS 或 FAIL 指示。PX5 RTOS 集成測試包含近 200 個功能測試。
圖 1:這是集成測試的一個示例,該測試是一系列連續(xù)的近 200 個功能測試,用于測試 RTOS 的所有功能。
除了功能測試之外,集成測試報告還包含代碼覆蓋率分析,即在 RTOS 代碼庫中測試的語句、分支和條件的報告。為了達到最高級別的 IEC 61508 功能安全認證(SIL 4、C 級、ASIL D),必須覆蓋 RTOS 代碼庫中的每個 C 語句。此外,還必須覆蓋所有可能的條件和分支組合,這稱為 100% 分支決策覆蓋率測試。PX5 RTOS 使用 IAR 的代碼覆蓋率工具來演示這一點。圖 2 是 IAR 代碼覆蓋率在報告中顯示方式的示例。
圖 2:為了達到最高級別的 IEC 61508 功能安全認證(SIL 4、C 級、ASIL D),必須涵蓋 RTOS 代碼庫中的每個 C 語句。
實心綠色菱形表示該語句在測試執(zhí)行期間被覆蓋,并且所有可能的條件和分支路徑都已執(zhí)行。PX5 RTOS 的編碼標準之一是不允許任何復合條件的規(guī)則。這簡化了測試覆蓋范圍并有助于避免更復雜的 MC/DC 分析。
認證過程會產生一份官方證書、一份功能安全技術報告和一份功能安全認證報告,這些報告均由 TüV 出具。開發(fā)人員可以使用這些文檔來避免認證 RTOS 代碼 — 只需將這些文檔與應用程序認證一起提交即可。
所有實時嵌入式設備的必備品
由于嵌入式 RTOS 功能安全認證惠及所有設備并代表行業(yè)最佳實踐,因此它對于實時嵌入式系統(tǒng)而言必不可少。利用具有功能安全認證的 RTOS 的設備制造商可以遵守通用行業(yè)標準,縮短上市時間并提高產品質量,并減少產品責任。