RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

embOS的MISRA-C:2012一致性

麥克泰技術(shù) ? 來源:麥克泰技術(shù) ? 2024-08-20 11:35 ? 次閱讀

MISRA C是汽車工業(yè)軟件可靠性協(xié)會(huì)(MISRA)開發(fā)的一套針對(duì)C編程語言的軟件開發(fā)指南,目的是提升嵌入式系統(tǒng)的安全性和可移植性。2012發(fā)布的MISRA C第三版,稱為MISRA C:2012。MISRA C不能100%確保程序不出問題,但能有效預(yù)防編程帶來的問題,提升代碼的可靠性。

embOS是SEGGER提供的一款搶占式的RTOS,旨在成為開發(fā)嵌入式應(yīng)用程序的基礎(chǔ),可用于所有流行的內(nèi)核、編譯器和開發(fā)工具,符合MISRA-C:2012標(biāo)準(zhǔn)。

為了符合MISRA-C:2012標(biāo)準(zhǔn),

需要做些什么?

MISRA-C:2012的官方文檔,在關(guān)鍵系統(tǒng)中使用C語言的指南,解釋了為了達(dá)到MISRA-C:2012的要求需要做的工作。

MISRA-C:2012定義了一組C編程人員必須遵循的準(zhǔn)則。這些準(zhǔn)則分為兩類,指示(Directives)和規(guī)則(Rules)。此外,所有準(zhǔn)則分類為強(qiáng)制 (mandatory)、必需 (required)或建議(advisory)。強(qiáng)制準(zhǔn)則絕不能被違反。必需或建議類型的準(zhǔn)則,可以違反,但每一次違反規(guī)定的行為都必須在專門的MISRA文件中進(jìn)行記錄和解釋。

大多數(shù)準(zhǔn)則都可以用靜態(tài)分析工具進(jìn)行測試,其他準(zhǔn)則可以使用C編譯器或手動(dòng)代碼審查來檢查。因此,靜態(tài)分析工具沒有報(bào)告問題,不意味著C源代碼完全符合MISRA-C:2012。專用的MISRA文檔是強(qiáng)制性的,MISRA-C:2012官方文件解釋了這種文件的結(jié)構(gòu)。

embOS代碼的哪部分符合MISRA標(biāo)準(zhǔn)?

一般來說,embOS由三部分組成:

1、通用源代碼,對(duì)于所有embOS移植都是一樣的。

2、內(nèi)核/編譯器特定的源代碼。

3、板級(jí)支持包文件。

embOS MISRA合規(guī)性僅涵蓋通用源代碼。如果需要內(nèi)核/編譯器特定的移植代碼符合MISRA規(guī)范,則向SEGGER申請(qǐng)。但通常不檢查板支持包文件是否符合MISRA規(guī)范。

使用的靜態(tài)分析工具?

embOS使用的分析工具為PC-lint v9。OS源代碼包含了一些MISRA指南的Lint抑制注釋,這些有助于分析哪些MISRA- C:2012指南被違反,需要在我們的MISRA文檔中解釋。必需的和建議型的準(zhǔn)則一樣,我們需記錄并解釋違反要求的準(zhǔn)則是正確的。

使用其它靜態(tài)分析工具報(bào)告的違規(guī)行為,

如何處理?

如果使用的靜態(tài)分析工具報(bào)告違反MISRA-C:2012,并不表明embOS不符合MISRA-C:2012。embOS僅僅沒有包含你所選擇的靜態(tài)分析工具的抑制注釋。有許多不同的分析工具可用,我們無法在embOS源代碼中為所有工具包含相應(yīng)的注釋。

處理這個(gè)問題的最簡單的方法是禁用項(xiàng)目中所有embOS文件的MISRA檢查,沒有必要檢查embOS文件的合規(guī)性,因?yàn)镾EGGER已經(jīng)完成了該項(xiàng)工作。

如何獲得embOS MISRA-C:2012文件?

如果應(yīng)用中集成了embOS,并且你需要證明應(yīng)用符合MISRA-C:2012,則可以從SEGGER購買embOS MISRA-C:2012文件。

麥克泰公司代理SEGGER全線產(chǎn)品,具有豐富的RTOS、中間件、分析軟件與調(diào)試工具使用方面的知識(shí)和經(jīng)驗(yàn)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3587

    瀏覽量

    129433
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1942

    瀏覽量

    34707
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4779

    瀏覽量

    68521

原文標(biāo)題:embOS的MISRA-C:2012一致性

文章出處:【微信號(hào):麥克泰技術(shù),微信公眾號(hào):麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    c6678cache一致性

    專家您好! ? ?我現(xiàn)在在做6678 cache一致性的東西,想請(qǐng)問一下一致性的維護(hù)哪些是硬件實(shí)現(xiàn)的,哪些需要程序員實(shí)現(xiàn)?謝謝!
    發(fā)表于 06-24 04:38

    MIPI一致性測試

    MIPI一致性測試測試項(xiàng)目:> TX測試;> RX測試;> S參數(shù)和阻抗測試;> DigRF,Unipro和LLI的測試;測試環(huán)境: MIPI測試對(duì)示波器帶寬的要求 >
    發(fā)表于 09-26 13:31

    什么是霍爾元件的一致性

    什么是霍爾元件的一致性?霍爾開關(guān)元件主要是通過感應(yīng)磁性來進(jìn)行開關(guān)機(jī),霍爾元件本身又屬于無觸點(diǎn)開關(guān),因此具有感應(yīng)距離。霍爾開關(guān)都有個(gè)觸發(fā)值和釋放值,觸發(fā)值是指霍爾元件表面達(dá)到參數(shù)磁性大小,霍爾元器件
    發(fā)表于 10-12 09:34

    順序一致性和TSO一致性分別是什么?SC和TSO到底哪個(gè)好?

    如果是多核心的程序,那么順序一致性就是,對(duì)于任何個(gè)核心而言所有核心的內(nèi)存訪問實(shí)際執(zhí)行順序都和程序指定順序相同上圖中左邊是核心C1的程序指定順序,右邊是核心C2的程序指定順序,中間是實(shí)
    發(fā)表于 07-19 14:54

    一致性規(guī)劃研究

    針對(duì)一致性規(guī)劃的高度求解復(fù)雜度,分析主流一致性規(guī)劃器的求解策略,給出影響一致性規(guī)劃器性能的主要因素:啟發(fā)信息的有效,信念狀態(tài)表示方法的緊湊
    發(fā)表于 04-06 08:43 ?12次下載

    CMP中Cache一致性協(xié)議的驗(yàn)證

    CMP是處理器體系結(jié)構(gòu)發(fā)展的個(gè)重要方向,其中Cache一致性問題的驗(yàn)證是CMP設(shè)計(jì)中的項(xiàng)重要課題。基于MESI一致性協(xié)議,本文建立了CMP的Cache
    發(fā)表于 07-20 14:18 ?38次下載

    RFID協(xié)議一致性測試系統(tǒng)設(shè)計(jì)(三)

      在具體實(shí)現(xiàn)了RFID協(xié)議一致性測試系統(tǒng)之后,我們將可以應(yīng)用于對(duì)RFID單元的實(shí)際測試之中,本節(jié)以EPC UHF Class 1 Gen 2(也被稱為ISO 18000-6 Type C)標(biāo)準(zhǔn)的協(xié)議一致性測試為例,來介紹RF
    發(fā)表于 03-28 17:37 ?1294次閱讀
    RFID協(xié)議<b class='flag-5'>一致性</b>測試系統(tǒng)設(shè)計(jì)(三)

    軟件編程規(guī)范(MISRA-C)

    MISRA-C種汽車制造業(yè)嵌入式C編碼標(biāo)準(zhǔn)。FreeRTOS符合MISRA-C編程規(guī)范,就連大名鼎鼎的uCOS也宣稱基本符合MISRA-C
    發(fā)表于 11-02 18:29 ?26次下載

    加速器一致性接口

    Zynq PS上的加速器一致性接口(Accelerator Coherency Port, ACP)是個(gè)兼容AXI3的64位從機(jī)接口,連接到SCU(Snoop Control Unit),為PL
    發(fā)表于 11-17 15:04 ?3671次閱讀

    Cache一致性協(xié)議優(yōu)化研究

    問題的由來.總結(jié)了多核時(shí)代高速緩存一致性協(xié)議設(shè)計(jì)的關(guān)鍵問題,綜述了近年來學(xué)術(shù)界對(duì)一致性的研究.從程序訪存行為模式、目錄組織結(jié)構(gòu)、一致性粒度、一致性協(xié)議流量、目錄協(xié)議的可擴(kuò)展性等方面,闡
    發(fā)表于 12-30 15:04 ?0次下載
    Cache<b class='flag-5'>一致性</b>協(xié)議優(yōu)化研究

    優(yōu)化模型的乘偏好關(guān)系一致性改進(jìn)

    針對(duì)乘偏好信息下的決策問題,引入乘偏好關(guān)系的有序一致性、滿意一致性以及一致性指數(shù)等概念,建立以偏差變量最小化為目標(biāo)函數(shù)的優(yōu)化模型,進(jìn)而構(gòu)
    發(fā)表于 03-20 17:28 ?0次下載

    如何保證緩存一致性

    “ 本文的參考文章是2022年HOT 34上Intel Rob Blakenship關(guān)于CXL緩存一致性篇介紹?!?/div>
    的頭像 發(fā)表于 10-19 17:42 ?1088次閱讀
    如何保證緩存<b class='flag-5'>一致性</b>

    DDR一致性測試的操作步驟

    DDR一致性測試的操作步驟? DDR(雙數(shù)據(jù)率)一致性測試是對(duì)DDR內(nèi)存模塊進(jìn)行測試以確保其性能和可靠。在進(jìn)行DDR一致性測試時(shí),需要遵循
    的頭像 發(fā)表于 02-01 16:24 ?1503次閱讀

    深入理解數(shù)據(jù)備份的關(guān)鍵原則:應(yīng)用一致性與崩潰一致性的區(qū)別

    深入理解數(shù)據(jù)備份的關(guān)鍵原則:應(yīng)用一致性與崩潰一致性的區(qū)別 在數(shù)字化時(shí)代,數(shù)據(jù)備份成為了企業(yè)信息安全的核心環(huán)節(jié)。但在備份過程中,兩個(gè)關(guān)鍵概念——應(yīng)用一致性和崩潰一致性,常常被誤解或混淆。
    的頭像 發(fā)表于 03-11 11:29 ?899次閱讀
    深入理解數(shù)據(jù)備份的關(guān)鍵原則:應(yīng)用<b class='flag-5'>一致性</b>與崩潰<b class='flag-5'>一致性</b>的區(qū)別

    C2000? MISRA-C策略

    電子發(fā)燒友網(wǎng)站提供《C2000? MISRA-C策略.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 11:43 ?0次下載
    <b class='flag-5'>C</b>2000? <b class='flag-5'>MISRA-C</b>策略
    RM新时代网站-首页