天天看點

"安全第一"的c語言程式設計規範,“安全第一”的C語言程式設計規範

摘要:

C語言是開發嵌入式應用的主要工具,然而C語言并非是專門為嵌入式系統設計,相當多的嵌入式系統較一般計算機系統對軟體安全性有更苛刻的要求。1998年,MISRA指出,一些在C看來可以接受,卻存在安全隐患的地方有127處之多。2004年.MISRA對C的限制增加到141條。嵌入式系統應用工程師借用計算機專家建立的C語言.使嵌入或樂統應用得以飛速發展.而MISRA—C是嵌入式系統應用工程師對C語言嵌入式應用做出的貢獻。如今MISRAC已經被越來越多的企業接受.成為用于嵌入武系境的C語言标準,特别是時安全性要求極高的嵌入式系統,軟體應符合MISRA标準。從本期開始,本刊将分6期,與讀者共同學習MISRA—C,第一講:“安全第一”的C語言程式設計規範”,簡述MISRA—C的概況。第二講:“跨越資料類型的重要陷阱”,介紹規範的資料定義和操作方式,重點在隐式資料類型轉換中的問題。第三講:“指針,結構體,聯合體的安全規範”,解析如何安全而高效地應用指針,結構體和聯合體。第四講:“防範表達式的失控”,剖析MISRA-C中關于表達式,函數聲明和定義等的不良使用習慣,最大限度地減小各類潛在錯誤。第五講:“準确的程式流控制”,表述C語言中控制表達式和程式流控制的規範做法。第六講:“建構安全的編譯環境”,講解與編譯器相關的規範編寫方式,避免來自編譯器的隐患。

展開