很久以前,汽車工程師從機械化控制轉向軟件組件和編碼,并發(fā)展到C語言。C編程語言本身非常流行,以至于整個Linux都是用C編寫的。然而,C語言的標準是不完整的,并且有很多未定義/未指定的行為,其中標準導致高度的不確定性。使用 C 語言的關鍵問題是,開發(fā)人員需要編寫代碼的地方沒有運行時錯誤檢查。
MISRA C作為嵌入式系統(tǒng)可靠指南的演變
C編程語言的靈活性伴隨著未定義和不確定行為的權衡,如果軟件失敗,這些行為可能無法以可預測的方式運行。為了確保關鍵嵌入式系統(tǒng)中的軟件安全性和可靠性,汽車行業(yè)軟件可靠性協(xié)會(MISRA)創(chuàng)建了一套正式的軟件開發(fā)指南,用于C語言的可預測子集,并開發(fā)安全可靠的嵌入式應用程序。下面描述了MISRA C從1998年到2020年的演變。
如今,MISRA C 在許多嵌入式行業(yè)中被廣泛接受并被稱為事實上的標準,例如航空航天、電信、汽車、醫(yī)療設備、國防、鐵路、互聯(lián)消費電子產品、過程控制、核電等等。
大型汽車公司采用MISRA C
汽車行業(yè)的一些傳奇人物,如日產汽車有限公司、菲亞特汽車有限公司、豐田汽車公司、通用汽車公司、福特汽車公司等,在不同的基于車輛軟件的系統(tǒng)中都面臨著軟件故障問題。事實上,大多數(shù)車輛系統(tǒng),如自動緊急制動系統(tǒng)、加速系統(tǒng)、發(fā)動機開/關等,都由軟件解決方案監(jiān)控和控制。因此,當軟件未能按照設計進行監(jiān)視或控制時,關鍵車輛系統(tǒng)將立即停止工作,這可能導致錯誤事故。
NHTSA(美國國家公路交通安全管理局)針對汽車故障事件的關鍵措施
在這種情況下,NHTSA可能會要求汽車公司召回他們的車輛,并解決與召回相關的巨額成本和汽車公司聲譽堆棧可能帶來的問題。
然而,在過去,由于由一家著名汽車公司設計的某些汽車中的自動緊急制動 (AEB) 系統(tǒng)的軟件故障,NHTSA 被報告了大約 14 起撞車事故和 5 起受傷事故。AEB系統(tǒng)使用攝像頭或雷達掃描前方道路,如果檢測到與其他物體發(fā)生碰撞,則自動制動。AEB系統(tǒng)中的軟件故障可能會將情況讀取為緊急情況,并觸發(fā)AEB系統(tǒng)自動制動,從而導致車輛突然停止并防止意外車禍。
根據規(guī)章制度,汽車制造商對機動車輛的安全負責。他們還對由于汽車車輛中的軟件故障而導致的乘員車輛的任何碰撞或傷害負責。汽車行業(yè)軟件可靠性協(xié)會(MISRA)積極致力于解決由于使用C語言設計的軟件故障而發(fā)生的碰撞或傷害的挑戰(zhàn)。MISRA致力于處理C語言的未定義和未指定行為,并為開發(fā)人員提出了MISRA C指南,以設計和開發(fā)最安全可靠的汽車行業(yè)軟件。
由于在汽車軟件開發(fā)
中疏忽MISRA C指南,可能會出現(xiàn)挑戰(zhàn)
汽車網絡安全問題:NHTSA報告了其中一個事實,即兩名黑客能夠入侵由大型汽車制造商之一設計的汽車系統(tǒng)。這些黑客能夠禁用汽車的制動器并控制方向盤。這是發(fā)生在汽車行業(yè)的一個令人大開眼界的事件,汽車制造商需要積極主動地設計最安全的嵌入式軟件,并為買家提供更多的安全性和信心。
電子油門控制系統(tǒng)的意外加速:電子油門控制系統(tǒng)(ETCS)具有巡航控制功能,該功能旨在學習駕駛員在用戶駕駛車輛時使用油門踏板的行為,并通過使用執(zhí)行器產生相同的加速度來復制相同的行為,這有助于保持車輛的速度,并確保舒適性和放松感,即使是長時間的放松駕駛。NHTSA報告了ETCS軟件故障,該故障會產生意外加速,只有當駕駛員將腳完全從制動踏板上移開時才能避免該軟件
被發(fā)現(xiàn)出現(xiàn)故障,因為違反了MISRA C規(guī)則之一,導致其中一個遞歸例程中的堆棧溢出并最終導致數(shù)據損壞, 因此,該軟件根據自動加速做出決定
碰撞期間安全氣囊展開故障:安全氣囊展開系統(tǒng)是汽車行業(yè)最重要的乘員安全系統(tǒng)之一。NHTSA報告了其中一家汽車巨頭制造的車輛的此類案例,其中安全氣囊系統(tǒng)的軟件無法在特定駕駛條件下檢測到碰撞狀況,并且未能展開安全氣囊并導致乘員的生命在堆棧上
點火開/關系統(tǒng)中的軟件故障:這種情況過去也發(fā)生過,汽車軟件出現(xiàn)故障,即使他們取下鑰匙,也不允許汽車的乘員關閉發(fā)動機。
汽車行業(yè)需求的增加給制造商和開發(fā)人員帶來了確保軟件質量(包括用戶安全)的挑戰(zhàn)。這可以實現(xiàn),或者可以使用MISRA C的定義準則在更大程度上最小化概率。
審核編輯:郭婷
-
嵌入式
+關注
關注
5152文章
19675瀏覽量
317633 -
編程語言
+關注
關注
10文章
1956瀏覽量
36664
發(fā)布評論請先 登錄
Arm計算平臺助力汽車行業(yè)轉型
軟件定義汽車將如何變革汽車行業(yè)
MISRA C:2025新標準解析:新增規(guī)則、優(yōu)化點與靜態(tài)代碼分析工具支持(Perforce QAC、Klocwork)

歐姆龍在新能源汽車行業(yè)的應用案例

BlackBerry展望2025年汽車行業(yè)發(fā)展趨勢
Gartner發(fā)布2025年汽車行業(yè)重要趨勢

汽車行業(yè)AI視覺檢測(下):創(chuàng)新驅動品質提升

評論