安全關鍵型應用,在很多人看來是個專業(yè)的詞匯,但其實它離我們的日常生活很近,比如汽車駕駛系統(tǒng)、飛機控制系統(tǒng)、電梯運行系統(tǒng)、醫(yī)療設備等與我們息息相關的事物都可以納入安全關鍵型應用的范疇。
對于這類應用,通用的或者領域相關的安全標準都有著明確的認證規(guī)范,甚至開發(fā)這類應用的工具鏈也必須以某種方式經(jīng)過認證,以確保其適用于這些安全相關的開發(fā)。本文將介紹用于安全關鍵型開發(fā)的工具鏈獲得認證的意義,以及您如何在自己的安全相關項目和應用中利用這種認證支持。
嵌入式功能安全標準
安全認證的正式標準已經(jīng)發(fā)布多年,但在過去的幾年中,特別是在嵌入式領域,人們對這些標準的興趣和實際使用程度正在顯著增加。人們對認證和經(jīng)過認證的終端產(chǎn)品的興趣日益濃厚,部分原因是法律要求,但對生產(chǎn)企業(yè)來說,獲得安全認證意味著獲得市場競爭力。
與許多功能安全相關的國際綜合標準IEC 61508,經(jīng)過了多次修訂,于2010年發(fā)布了第二版。這個標準以及它所衍生的標準,現(xiàn)在廣泛應用于對可靠性和安全性有要求的行業(yè),如過程工業(yè)、鐵路和自動化等,比如ISO 26262用于汽車領域、EN 50128用于鐵路應用、IEC 62304用于醫(yī)療軟件和醫(yī)療設備。
認證和驗證
如果您即將啟動一個具備安全關鍵功能或功能安全要求的項目,您可能已經(jīng)意識到您所使用的開發(fā)工具必須以某種方式經(jīng)過資格認證,以適用于與安全相關的開發(fā)。認證開發(fā)工具的具體要求取決于您所遵循的標準,在某種程度上也取決于產(chǎn)品故障可能引發(fā)的嚴重程度。這還與工具的性質(zhì)有關,例如,生成進入產(chǎn)品的代碼的編譯器比源代碼度量工具更難認證,而源代碼度量工具比版本控制系統(tǒng)或需求管理系統(tǒng)更難認證。
不同的標準對安全完整性(即產(chǎn)品的關鍵程度)有不同的定義,并且這些標準在工具的分類上也有所不同。以IEC 61508為例,它規(guī)定了編譯器等工具需要經(jīng)過認證,盡管并沒有明確定義“認證”的具體含義。此外,該標準還要求工具必須經(jīng)過驗證,以確保它們符合相關的規(guī)范或文檔。最糟糕的情況是,這意味著您必須在自己的項目中全面測試工具,除非能夠提供其已經(jīng)過測試的充足證據(jù)。此外,您還需要評估項目對工具的依賴程度。
還要考慮和評估的另一件事情是工具供應商支持工具的能力,最好能夠在安全關鍵產(chǎn)品的整個生命周期內(nèi)提供支持。
所有這些事情集中在一起可能會給您帶來相當大的工作量,而這還只是涉及一個工具和一個項目......從另一個方面來講,這正是IAR的工具鏈獲得認證的原因所在。
獲得認證和驗證!
IAR用于安全關鍵開發(fā)的工具獲得認證到底意味著什么呢?它意味著您為證明工具的使用合理性而必須做的工作量將大大減少。因為獨立的第三方機構TüV SüD已經(jīng)對IAR的開發(fā)活動、問題處理程序以及測試和驗證活動進行了評估,并認證了IAR的工具符合IEC 61508、ISO 26262、EN 50128和IEC 62304等安全標準的要求。這些工具包括IAR Embedded Workbench for Arm、RISC-V、STM8、Renesas RX、RL78和RH850等。這也意味著,如果您選擇C或C++作為編程語言,IAR的工具鏈是一個絕佳的選擇。
延續(xù)性服務
那么,如果選擇了經(jīng)過認證的工具,就完事大吉了嗎?
還要考慮的一個重要事情是您需要的支持程度以及您可以從工具鏈獲得的支持程度。這不僅僅限于項目開發(fā)期間,還包括產(chǎn)品的整個生命周期。如果工具舊了并且被新版本取代,工具供應商不一定會在舊版本工具上繼續(xù)支持您。這種立場與典型的安全相關項目的需求背道而馳,因為在這些安全相關項目中,應盡量避免工具的更新。
如果之前認證過的工具的更新不僅僅包含錯誤修復(Bug Fix),還包含功能更新,那么僅接受錯誤修復是沒有用的,因為需要對工具更新進行重新認證或者進行詳細的影響分析以及測試。
通過與開發(fā)安全相關且具有高可用性要求的軟件或服務的客戶多年合作,IAR了解到,對“凍結”版本的支持至關重要?!皟鼋Y”版本指的是只接受錯誤修復而永遠不添加新功能的工具版本。這種版本可以根據(jù)需要保持活躍并得到支持。過去,IAR為需要特定“凍結”版本和相關支持服務的客戶量身定制了特殊合作協(xié)議?,F(xiàn)在,通過認證,IAR有機會以簡化的方式為所有使用IAR Embedded Workbench功能安全版本的客戶提供“凍結”版本和相關支持服務。
全面支持和保護
IAR的安全解決方案包含了以下主要內(nèi)容。
IAR Embedded Workbench功能安全版本:已獲認證和凍結的工具特定版本,包括IAR Embedded Workbench for Arm、RISC-V、STM8、RL78、RX和RH850。
TüV SüD的認證報告:詳細說明了認證的有效性。
安全指南:用各種安全標準的術語來說,這是一本安全手冊,旨在指導如何在安全相關開發(fā)中使用工具鏈。該指南涵蓋了從安裝工具鏈時需要考慮的事項到如何處理語言擴展和編譯器編譯指示。
功能安全支持和更新協(xié)議:包括對已經(jīng)過認證版本的支持以及預先認證的錯誤修復更新,只要客戶的協(xié)議仍然有效。
定期更新:對工具鏈中已知問題的信息進行定期更新。
總結
綜上所述,選擇經(jīng)過認證的工具鏈可以使您輕松地在安全相關項目中使用它,選擇包含適當支持服務的工具可以使您的工具選擇和投資更具價值。
此外,即使您的產(chǎn)品沒有直接的安全要求,但如果需要滿足各種高完整性或高可用性要求,功能安全支持服務同樣非常有用。