日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

分享配置Polyspace分析C代碼的方法和簡介

MATLAB ? 來源:djl ? 作者:龔小平 ? 2019-09-16 16:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Polyspace可以分析C、C++以及Ada代碼,本文以嵌入式系統(tǒng)中最為常見的C代碼分析為例說明Polyspace配置一個(gè)工程的過程和注意事項(xiàng)。

1. 配置語言和處理器類型

C語言由于其靈活性,在不同的編譯器中有不同的約束和擴(kuò)展,會(huì)影響最終生成的目標(biāo)碼的行為。Polyspace分析C代碼時(shí)首先要最大程度和目標(biāo)編譯器的行為保持一致,這樣才能保持代碼分析的意義。因此在開始創(chuàng)建Polyspace工程時(shí),我們需要配置編譯器和處理器類型:

分享配置Polyspace分析C代碼的方法和簡介

所選用的C語言標(biāo)準(zhǔn):C90/C99

所用編譯器類型:Keil/Tasking/Diab/IAR…

(編譯器通常定義了標(biāo)準(zhǔn)C語言之外的擴(kuò)展,如關(guān)鍵字sfr、sbit等。選定編譯器類型相當(dāng)于告知了Polyspace在遇到此類非標(biāo)擴(kuò)展時(shí)如何解釋其行為。)

目標(biāo)處理器類型:定義不同數(shù)據(jù)類型的大小和字節(jié)順序類型,如mpc5xx系列處理器定義如下:

分享配置Polyspace分析C代碼的方法和簡介

(某些運(yùn)行時(shí)錯(cuò)誤檢查與此有關(guān),如同一變量在Int定義為16位時(shí)會(huì)發(fā)生溢出,而在Int定義為32位時(shí)不會(huì)發(fā)生溢出。)

其他編譯器行為設(shè)定:如負(fù)除取整方向、有符號(hào)數(shù)右移邏輯、枚舉類型定義方式等。

2.選擇驗(yàn)證分析模式

Polyspace有兩種基本的驗(yàn)證分析模式:應(yīng)用級(jí)分析和模塊級(jí)分析,可以分別對(duì)應(yīng)于集成測試和單元測試。

所謂應(yīng)用級(jí)分析指用戶待分析的源代碼中包含了 main函數(shù),選擇應(yīng)用級(jí)分析即分析進(jìn)程從用戶main函數(shù)入口,為了更好地模擬實(shí)際程序運(yùn)行和調(diào)度情形,有時(shí)需要進(jìn)行多任務(wù)(Multitasking)設(shè)置,有機(jī)會(huì)在以后再進(jìn)一步介紹。

模塊級(jí)分析通常待分析代碼不包含main函數(shù),Polyspace會(huì)自動(dòng)打樁生成main函數(shù)并建立待分析函數(shù)的調(diào)用關(guān)系進(jìn)行分析,并可進(jìn)一步根據(jù)需要細(xì)化配置。如對(duì)于以下被調(diào)函數(shù)Function_sub和主調(diào)函數(shù)Function_top,可以設(shè)置為以下兩種分析入口形式:

Function_sub(){ ……};

Function_top(){……

Function_sub();

……};

自動(dòng)生成的main函數(shù)中只調(diào)用Function_top:在分析Function_top的進(jìn)程中分析Function_sub,即Function_sub在Function_top的上下文中被分析。

自動(dòng)生成的main函數(shù)中同時(shí)調(diào)用Function_top和Function_sub:Function_sub除了在Function_top的上下文中被分析,也會(huì)在直接在main函數(shù)上下文中被分析。對(duì)應(yīng)的可能場景是Function_sub會(huì)被其他函數(shù)調(diào)用,需要更為魯棒地分析其安全性。

分享配置Polyspace分析C代碼的方法和簡介

— 總結(jié) —

Polyspace的配置是一個(gè)既簡單又靈活的過程,通過對(duì)編譯器行為的模擬和分析模型的選擇,我們可以得到更為有意義和更符合需要的結(jié)果。

往期 | 代碼分析驗(yàn)證

Polyspace應(yīng)用到軟件開發(fā)和驗(yàn)證流程

淺談Polyspace的靜態(tài)分析

聲明:本文內(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)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    20339

    瀏覽量

    255355
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1673

    瀏覽量

    51963
  • C代碼
    +關(guān)注

    關(guān)注

    1

    文章

    90

    瀏覽量

    15243
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    開關(guān)電源的基本概念和分析方法

    開關(guān)電源的基本概念和分析方法
    發(fā)表于 04-10 15:20 ?1次下載

    MTK平臺(tái)LK階段mt_boot.c配置:SELINUX_STATUS 2的作用與影響

    在 MTK(聯(lián)發(fā)科)平臺(tái)的 Bootloader(以 LK/Little Kernel 為例)中,mt_boot.c是負(fù)責(zé) Linux 內(nèi)核啟動(dòng)邏輯的核心文件,此次代碼變更(新增#define
    的頭像 發(fā)表于 02-03 15:46 ?987次閱讀
    MTK平臺(tái)LK階段mt_boot.<b class='flag-5'>c</b><b class='flag-5'>配置</b>:SELINUX_STATUS 2的作用與影響

    國民技術(shù)發(fā)布N32Cube芯片配置與初始化代碼生成工具

    1月30日,國民技術(shù)(NSING)正式發(fā)布N32Cube——芯片配置與初始化代碼生成工具,讓時(shí)鐘、引腳與外設(shè)的配置一目了然、輕松上手!
    的頭像 發(fā)表于 02-02 15:26 ?947次閱讀
    國民技術(shù)發(fā)布N32Cube芯片<b class='flag-5'>配置</b>與初始化<b class='flag-5'>代碼</b>生成工具

    微電網(wǎng)暫態(tài)穩(wěn)定分析方法有哪些?

    復(fù)雜,傳統(tǒng)大電網(wǎng)的暫態(tài)穩(wěn)定分析方法已難以完全適配。精準(zhǔn)的暫態(tài)穩(wěn)定分析是微電網(wǎng)規(guī)劃設(shè)計(jì)、保護(hù)配置、運(yùn)行調(diào)度的核心前提,直接關(guān)乎電網(wǎng)的安全可靠運(yùn)行。目前,微電網(wǎng)暫態(tài)穩(wěn)定
    的頭像 發(fā)表于 01-27 13:56 ?1187次閱讀
    微電網(wǎng)暫態(tài)穩(wěn)定<b class='flag-5'>分析</b><b class='flag-5'>方法</b>有哪些?

    分析嵌入式軟件代碼的漏洞-代碼注入

    進(jìn)行編譯 在大多數(shù)情況下,程序故意像執(zhí)行代碼一樣執(zhí)行數(shù)據(jù)是不尋常的,但將數(shù)據(jù)用于構(gòu)造有意執(zhí)行的對(duì)象卻很常見。 1、格式化字符串漏洞 大多數(shù)C程序員熟悉printf函數(shù)。大體上,這些格式字符串
    發(fā)表于 12-22 12:53

    維修總結(jié):Keysight E8257D典型報(bào)錯(cuò)代碼及維修方法

    Keysight E8257D典型報(bào)錯(cuò)代碼及維修方法
    的頭像 發(fā)表于 12-15 17:00 ?665次閱讀
    維修總結(jié):Keysight E8257D典型報(bào)錯(cuò)<b class='flag-5'>代碼</b>及維修<b class='flag-5'>方法</b>

    宇樹人形機(jī)器人的配置,核心代碼,調(diào)試方法,二次開發(fā)接口

    宇樹人形機(jī)器人的配置,核心代碼,調(diào)試方法,二次開發(fā)接口
    的頭像 發(fā)表于 12-10 09:05 ?5829次閱讀

    是德頻譜分析儀N9030B PXA基于5G NR信號(hào)分析配置方法

    是德科技N9030B PXA頻譜分析儀作為高性能射頻測試工具,在5G NR信號(hào)分析中發(fā)揮關(guān)鍵作用。以下是基于該儀器進(jìn)行5G NR信號(hào)分析的具體配置步驟,幫助用戶高效完成測試任務(wù)。 一、
    的頭像 發(fā)表于 11-13 11:32 ?817次閱讀
    是德頻譜<b class='flag-5'>分析</b>儀N9030B PXA基于5G NR信號(hào)<b class='flag-5'>分析</b>的<b class='flag-5'>配置</b><b class='flag-5'>方法</b>

    GPIOB模擬spi的方法及l(fā)cd屏幕的接入

    本小組用到了spi接口的lcd屏幕,在此分享GPIOB模擬spi的方法及l(fā)cd屏幕的接入。 一、spi接口簡介 如上圖所示,SPI接口的典型時(shí)序是每一個(gè)時(shí)鐘周期采集一個(gè)數(shù)據(jù)。時(shí)鐘周期頻率
    發(fā)表于 10-30 07:59

    GPIOB模擬SCCB的方法

    通過SCCB接口可對(duì)OV7725內(nèi)部寄存器寫入數(shù)據(jù),從而對(duì)攝像頭進(jìn)行配置,本文主要分享GPIOB模擬SCCB的方法。 一、時(shí)序圖分析 如上圖所示,SCCB接口與IIC非常類似,多了一條信號(hào)線
    發(fā)表于 10-30 06:00

    Perforce QAC產(chǎn)品簡介:面向C/C++的靜態(tài)代碼分析工具(已通過SO 26262認(rèn)證)

    Perforce QAC專為C/C++開發(fā)者打造,支持多種編碼規(guī)范、功能安全標(biāo)準(zhǔn)(ISO 26262)等,廣泛用于汽車、醫(yī)療、嵌入式開發(fā)領(lǐng)域,可幫助快速識(shí)別關(guān)鍵缺陷、提升代碼質(zhì)量、實(shí)現(xiàn)合規(guī)交付。
    的頭像 發(fā)表于 07-10 15:57 ?1493次閱讀
    Perforce QAC產(chǎn)品<b class='flag-5'>簡介</b>:面向<b class='flag-5'>C</b>/<b class='flag-5'>C</b>++的靜態(tài)<b class='flag-5'>代碼</b><b class='flag-5'>分析</b>工具(已通過SO 26262認(rèn)證)

    零極點(diǎn)仿真分析簡介

    零極點(diǎn)分析是用于確定電路頻率響應(yīng)特性的關(guān)鍵方法,通過找到傳遞函數(shù)的零點(diǎn)和極點(diǎn)來分析電路的穩(wěn)定性和頻率響應(yīng)。
    的頭像 發(fā)表于 05-28 17:33 ?1419次閱讀
    零極點(diǎn)仿真<b class='flag-5'>分析</b><b class='flag-5'>簡介</b>

    藍(lán)牙LE Audio技術(shù)簡介和優(yōu)勢(shì)分析

    Energy)技術(shù)的優(yōu)點(diǎn),同時(shí)又具備卓越的音頻性能。本文將從技術(shù)簡介和優(yōu)勢(shì)分析兩個(gè)方面對(duì)藍(lán)牙LE Audio技術(shù)進(jìn)行詳細(xì)的介紹。 一、藍(lán)牙LE Audio技術(shù)簡介 藍(lán)牙LE Audio技術(shù)是藍(lán)牙技術(shù)聯(lián)盟在
    的頭像 發(fā)表于 05-21 16:08 ?5277次閱讀

    N6715C?基礎(chǔ)型定制配置直流電源分析

    N6715C?基礎(chǔ)型定制配置直流電源分析儀 ? 綜述 N6715C 是一款可定制的直流電源分析儀系統(tǒng),在裝運(yùn)之前已經(jīng)過全面測試并組裝完畢。
    的頭像 發(fā)表于 05-09 17:30 ?788次閱讀
    N6715<b class='flag-5'>C</b>?基礎(chǔ)型定制<b class='flag-5'>配置</b>直流電源<b class='flag-5'>分析</b>儀

    CYPD3177可以配置充電器的電壓和電流,配置Profile 3最合適的方法是什么?

    我們?cè)谠O(shè)計(jì)中使用 CYPD3177,并喜歡配置設(shè)備以接受 USB-C 充電器 PD 配置文件 3、27-45W。 CYPD3177 可以配置充電器的電壓和電流,
    發(fā)表于 05-09 07:30
    南通市| 奈曼旗| 吴忠市| 密云县| 讷河市| 景泰县| 南宁市| 普陀区| 安国市| 老河口市| 绥滨县| 广元市| 昆明市| 泾源县| 宁城县| 永吉县| 沽源县| 娄烦县| 富锦市| 黄大仙区| 固阳县| 潼关县| 济源市| 永修县| 白沙| 湘潭县| 铁岭市| 连平县| 军事| 海盐县| 潢川县| 马龙县| 锡林郭勒盟| 图们市| 湛江市| 石棉县| 枣庄市| 江华| 毕节市| 七台河市| 石柱|