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