在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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)于集成測(cè)試和單元測(cè)試。

所謂應(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

    文章

    19833

    瀏覽量

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

    關(guān)注

    1

    文章

    1657

    瀏覽量

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

    關(guān)注

    1

    文章

    90

    瀏覽量

    14709
收藏 人收藏

    評(píng)論

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

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

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

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

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

    電池電量計(jì)的通信、配置、數(shù)據(jù)內(nèi)存訪問以及相關(guān)代碼示例

    基礎(chǔ)電量計(jì)命令:電量計(jì)通過命令與主機(jī)控制器通信,命令類似寄存器,如讀取充電狀態(tài)的命令StateOfCharge(),其命令代碼為0x1C和0x1D 。命令分為標(biāo)準(zhǔn)命令(用于獲取測(cè)量結(jié)果和更改部分配置參數(shù))和擴(kuò)展命令(主要用于訪問
    發(fā)表于 03-11 15:45 ?0次下載

    貼片電感的感值代碼與讀取方法

    貼片電感作為電子電路中的重要元件,其感值的準(zhǔn)確性和讀取方法的便捷性對(duì)于電路的性能至關(guān)重要。本文將詳細(xì)介紹貼片電感的感值代碼及其讀取方法。 貼片電感的感值代碼通常采用數(shù)碼表示法,這種
    的頭像 發(fā)表于 03-06 14:15 ?468次閱讀
    貼片電感的感值<b class='flag-5'>代碼</b>與讀取<b class='flag-5'>方法</b>

    STM32CubeMX用于STM32配置和初始化C代碼生成

    電子發(fā)燒友網(wǎng)站提供《STM32CubeMX用于STM32配置和初始化C代碼生成.pdf》資料免費(fèi)下載
    發(fā)表于 02-26 17:32 ?658次下載

    代碼加密、源代碼防泄漏c/c++與git服務(wù)器開發(fā)環(huán)境

    代碼加密對(duì)于很多研發(fā)性單位來說是至關(guān)重要的,當(dāng)然每家企業(yè)的業(yè)務(wù)需求不同所用的開發(fā)環(huán)境及開發(fā)語言也不盡相同,今天主要來講一下c++及git開發(fā)環(huán)境的源代碼防泄密保護(hù)方案。企業(yè)源代碼泄密
    的頭像 發(fā)表于 02-12 15:26 ?482次閱讀
    源<b class='flag-5'>代碼</b>加密、源<b class='flag-5'>代碼</b>防泄漏<b class='flag-5'>c</b>/<b class='flag-5'>c</b>++與git服務(wù)器開發(fā)環(huán)境

    分析C語言代碼結(jié)構(gòu)的設(shè)計(jì)問題

    分析一個(gè)C語言代碼結(jié)構(gòu)的設(shè)計(jì)問題。 這段代碼,使用了兩次malloc,分別給 p1 和 p2 申請(qǐng)了內(nèi)存。用完后,內(nèi)存釋放,防止內(nèi)存泄漏。 大家覺得,這樣的
    的頭像 發(fā)表于 02-11 09:31 ?334次閱讀

    gitee 常見問題及解決方法

    Gitee作為國內(nèi)的代碼托管平臺(tái),在使用過程中可能會(huì)遇到一些問題。以下是一些常見問題及其解決方法: 一、倉庫創(chuàng)建與代碼推送問題 倉庫已存在遠(yuǎn)程配置 問題 :在嘗試為已有項(xiàng)目添加遠(yuǎn)程倉庫
    的頭像 發(fā)表于 01-06 10:06 ?1210次閱讀

    三星貼片電容識(shí)別容值代碼方法

    三星貼片電容的容值代碼識(shí)別方法主要基于其型號(hào)編碼中的特定部分。以下是一個(gè)詳細(xì)的識(shí)別步驟和說明: ? ?一、識(shí)別容值代碼的基本步驟 ? ?查看型號(hào)編碼: ? ?三星貼片電容的型號(hào)編碼通常包含多個(gè)部分
    的頭像 發(fā)表于 12-13 16:17 ?755次閱讀
    三星貼片電容識(shí)別容值<b class='flag-5'>代碼</b><b class='flag-5'>方法</b>

    閃電定位儀的日常維護(hù)方法簡介

    閃電定位儀的日常維護(hù)方法簡介
    發(fā)表于 11-13 16:32 ?0次下載

    AIC3254的miniDSP編寫代碼和編寫C5502代碼有什么區(qū)別?

    問題:AIC3254的miniDSP編寫代碼和編寫C5502代碼有什么區(qū)別,執(zhí)行速度和代碼量來進(jìn)行分析吧,謝謝回復(fù)
    發(fā)表于 11-06 07:22

    一種簡單高效配置FPGA的方法

    本文描述了一種簡單高效配置FPGA的方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設(shè)備。這種方法減少了硬件組件、板空間和成
    的頭像 發(fā)表于 10-24 14:57 ?1494次閱讀
    一種簡單高效<b class='flag-5'>配置</b>FPGA的<b class='flag-5'>方法</b>

    Linux環(huán)境變量配置方法

    Linux上環(huán)境變量配置分為設(shè)置永久變量和臨時(shí)變量兩種。環(huán)境變量設(shè)置方法同時(shí)要考慮環(huán)境Shell類型,不同類型的SHELL設(shè)置臨時(shí)變量方法和設(shè)置永久變量對(duì)應(yīng)的配置文件不同。Linux環(huán)
    的頭像 發(fā)表于 10-23 13:39 ?617次閱讀

    hex文件如何查看原c語言代碼

    是處理器可以直接執(zhí)行的指令,而 C 語言代碼則是人類可讀的高級(jí)編程語言代碼。 然而,如果你想要從 .hex 文件中獲取一些有用的信息或者對(duì)程序進(jìn)行分析,你可以考慮以下幾種
    的頭像 發(fā)表于 09-02 10:37 ?4649次閱讀

    如何使用Polyspace Code Prover來統(tǒng)計(jì)堆棧

    前一篇文章介紹了堆棧和內(nèi)存的一些背景知識(shí)。本次介紹如何使用 Polyspace Code Prover來統(tǒng)計(jì)堆棧,如何使用這些數(shù)據(jù)為軟件優(yōu)化服務(wù)。
    的頭像 發(fā)表于 07-25 14:06 ?1113次閱讀
    如何使用<b class='flag-5'>Polyspace</b> Code Prover來統(tǒng)計(jì)堆棧
    主站蜘蛛池模板: 久久综合九色 | 天天射天 | 久色国产 | 天天干天天色综合网 | 亚洲男人的天堂在线播放 | 亚洲综合在线观看一区www | 亚洲欧美视频一区二区三区 | 男女爱爱视频免费看 | 三级网在线 | h网站免费 | 毛片在线不卡 | 亚洲人成网站色7799在线播放 | 国产精品久久久久久久久久免费 | 99久久免费午夜国产精品 | 四虎最新网址入口 | 看天堂| 国产高清在线精品 | 激情五月婷婷色 | 国产日韩精品一区二区在线观看 | 色婷婷综合在线 | 福利在线看 | 日本不卡免费新一区二区三区 | 欧美激情综合色综合啪啪五月 | 91在线播放免费不卡无毒 | 黄色网在线 | 久久噜国产精品拍拍拍拍 | 偷偷操不一样的久久 | 日本在线播放一区 | 在线观看免费黄视频 | 天堂中文字幕在线观看 | 777奇米影视笫四色88me久久综合 | 毛片午夜 | 天天摸日日舔 | 欧美一级黄色片在线观看 | 婷婷久久综合九色综合98 | aaa免费视频| 无人码一区二区三区视频 | 黄h视频| 免费人成黄页在线观看日本 | 四虎永久免费地址 | 三级国产在线观看 |