91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

設(shè)計(jì)安全可靠的嵌入式系統(tǒng)最佳實(shí)踐

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Ricardo Camacho ? 2022-07-01 14:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

時(shí)間限制使開(kāi)發(fā)人員面臨著在嚴(yán)格且在許多情況下不充分的時(shí)間表內(nèi)完成項(xiàng)目要求的壓力。此外,對(duì)嵌入式軟件的可靠性、準(zhǔn)確性和性能的期望高于對(duì)實(shí)時(shí)計(jì)算的期望。我們還需要考慮運(yùn)行嵌入式軟件的實(shí)際目標(biāo)硬件的約束。軟件合規(guī)性和認(rèn)證要求通常由行業(yè)強(qiáng)加以解決安全問(wèn)題。

流程標(biāo)準(zhǔn)提供流程、驗(yàn)證方法和最佳實(shí)踐,以確保軟件安全、安全和質(zhì)量有足夠的信心。這些包括:

DO-178B/C(航空電子設(shè)備)

ISO 26262(汽車)

IEC 62304(醫(yī)療)

IEC 61508(工業(yè))

EN 50128(導(dǎo)軌)

和更多

軟件驗(yàn)證和確認(rèn)是遵守流程標(biāo)準(zhǔn)的關(guān)鍵組成部分。這是一個(gè)涉及不同軟件測(cè)試技術(shù)的過(guò)程,這些技術(shù)可能是嚴(yán)格的、昂貴的和耗時(shí)的。

使用一種或兩種軟件測(cè)試技術(shù)并不能解決問(wèn)題。在開(kāi)發(fā)生命周期中使用各種自動(dòng)化方法將為您節(jié)省時(shí)間和金錢。它還將有助于建立無(wú)價(jià)的可靠性聲譽(yù)。

嵌入式軟件開(kāi)發(fā)的自動(dòng)化測(cè)試方法

自動(dòng)化對(duì)于測(cè)試嵌入式軟件至關(guān)重要,因?yàn)槭謩?dòng)方法容易出錯(cuò)且耗時(shí)。讓我們討論對(duì)您的團(tuán)隊(duì)有幫助的重要自動(dòng)化測(cè)試方法。

靜態(tài)代碼分析

首先,我強(qiáng)烈建議始終將靜態(tài)代碼分析作為第一種測(cè)試方法。執(zhí)行靜態(tài)分析的一個(gè)絕妙優(yōu)勢(shì)是您可以在項(xiàng)目的任何階段引入和使用它。即使項(xiàng)目不完整且部分編碼,靜態(tài)代碼分析也是有效的,因?yàn)椴恍枰獔?zhí)行代碼。

引入靜態(tài)分析的最大挑戰(zhàn)是大量代碼會(huì)產(chǎn)生大量警告。將靜態(tài)分析集成到項(xiàng)目中時(shí),建議關(guān)注以下內(nèi)容:

盡快讓團(tuán)隊(duì)高效工作。

最大限度地減少團(tuán)隊(duì)被所有靜態(tài)分析警告淹沒(méi)的機(jī)會(huì)。

這并不是要降低這些警告的重要性。但是,大多數(shù)開(kāi)發(fā)人員沒(méi)有修復(fù)現(xiàn)有或遺留代碼的奢侈。至少不是馬上。

因?yàn)橛懈鞣N編碼合規(guī)性標(biāo)準(zhǔn)(MISRA C:2012、AUTOSAR C++14、SEI CERT、CWE 等)從一個(gè)目標(biāo)開(kāi)始。如果安全是關(guān)鍵目標(biāo),那么啟用所有與安全相關(guān)的規(guī)則、禁用不太重要的規(guī)則并啟用一種內(nèi)置的安全編碼標(biāo)準(zhǔn)(如 CERT C/C++)是有意義的。

動(dòng)態(tài)分析方法或運(yùn)行時(shí)錯(cuò)誤檢測(cè)

如前所述,一種測(cè)試方法是不夠的。僅通過(guò)靜態(tài)分析無(wú)法識(shí)別所有錯(cuò)誤或缺陷。動(dòng)態(tài)分析方法或運(yùn)行時(shí)錯(cuò)誤檢測(cè)也是一種可以采用的測(cè)試實(shí)踐。

該測(cè)試應(yīng)與需求相關(guān)聯(lián)。它檢查正在運(yùn)行的代碼,暴露架構(gòu)和行為缺陷、其他弱點(diǎn)和/或安全漏洞,包括內(nèi)存泄漏等。

團(tuán)隊(duì)可以在不同級(jí)別的軟件抽象上應(yīng)用這種類型的測(cè)試。從測(cè)試每個(gè)單獨(dú)的單元或功能開(kāi)始,然后集成其他軟件部分。最終軟件測(cè)試系統(tǒng)作為一個(gè)整體或黑盒。這通常體現(xiàn)在著名的 V 模型軟件生命周期中。

結(jié)構(gòu)代碼覆蓋率

在動(dòng)態(tài)分析方法中,可以應(yīng)用其他技術(shù),如結(jié)構(gòu)代碼覆蓋。

簡(jiǎn)而言之,結(jié)構(gòu)覆蓋是為了確定系統(tǒng)是否經(jīng)過(guò)充分測(cè)試而執(zhí)行和記錄的代碼的標(biāo)識(shí)。如果您可以確定已通過(guò)測(cè)試用例執(zhí)行的代碼,那么未發(fā)現(xiàn)或未執(zhí)行的代碼將暴露出對(duì)額外測(cè)試的需求。

如果您的合規(guī)性要求是獲得 100% 的代碼覆蓋率,那么您至少需要通過(guò)單元測(cè)試和手動(dòng)測(cè)試來(lái)執(zhí)行覆蓋率。雖然我們可以繼續(xù)揭示其他測(cè)試方法,如回歸、性能、壓力、API、UI、接受度等,但讓我們深入研究嵌入式系統(tǒng)測(cè)試的現(xiàn)代部署。

持續(xù)集成和持續(xù)交付

在過(guò)去幾年中越來(lái)越受歡迎的一個(gè)主題是持續(xù)集成和持續(xù)交付 (CI/CD)。CI/CD 是夜間集成的軟件開(kāi)發(fā)實(shí)踐(將較小的構(gòu)建單元組合到應(yīng)用程序、庫(kù)或組件中),旨在構(gòu)建可測(cè)試的軟件以實(shí)現(xiàn)持續(xù)交付和早期檢測(cè)構(gòu)建/集成問(wèn)題和錯(cuò)誤。

嵌入式軟件開(kāi)發(fā)中的 CI/CD 通常受到應(yīng)用程序開(kāi)發(fā)不受限制的方式。除了目標(biāo)硬件平臺(tái)的物理和計(jì)算約束之外,還有合規(guī)性約束。嵌入式軟件市場(chǎng)對(duì)具有極長(zhǎng)生命周期的安全性有獨(dú)特的要求。產(chǎn)品可以在市場(chǎng)上保留數(shù)十年。

如今,一些組織將靜態(tài)分析納入其 CI/CD 現(xiàn)代開(kāi)發(fā)工作流程中。適應(yīng)通常圍繞基于 Git 的開(kāi)發(fā)環(huán)境,采用動(dòng)態(tài)方法進(jìn)行分支和合并,開(kāi)發(fā)人員可以指定父/引用分支與他們當(dāng)前的開(kāi)發(fā)分支進(jìn)行比較,并自動(dòng)比較和計(jì)算增量以進(jìn)行分析。

因此,與其在整個(gè)項(xiàng)目上運(yùn)行分析,這可能需要相當(dāng)長(zhǎng)的時(shí)間,甚至幾個(gè)小時(shí),它可以在最小的文件集上運(yùn)行。這減少了評(píng)估會(huì)議的持續(xù)時(shí)間和重點(diǎn)。然后可以解決和糾正編碼違規(guī),以實(shí)現(xiàn)干凈、安全和可靠的構(gòu)建。

容器化開(kāi)發(fā)環(huán)境

另一種類型的現(xiàn)代化來(lái)自容器化開(kāi)發(fā)環(huán)境。開(kāi)發(fā)工具的容器化部署正在成為嵌入式開(kāi)發(fā)團(tuán)隊(duì)的生計(jì)。

盡管容器最初是為了解決微服務(wù)和基于 Web 的應(yīng)用程序的部署問(wèn)題而開(kāi)發(fā)的,但它們最近在嵌入式團(tuán)隊(duì)中流行起來(lái)。尤其是對(duì)于使用容器來(lái)管理復(fù)雜工具鏈的大型團(tuán)隊(duì)。

在管理復(fù)雜的開(kāi)發(fā)環(huán)境時(shí),尤其是在安全關(guān)鍵領(lǐng)域,團(tuán)隊(duì)通常會(huì)遇到以下挑戰(zhàn),這些挑戰(zhàn)很容易通過(guò)容器解決:

將整個(gè)團(tuán)隊(duì)的升級(jí)同步到編譯器、構(gòu)建工具鏈等工具的最新版本。

動(dòng)態(tài)響應(yīng)庫(kù)或軟件開(kāi)發(fā)工具包 (SDK) 等的新安全補(bǔ)丁。

確保所有團(tuán)隊(duì)成員和自動(dòng)化基礎(chǔ)設(shè)施 (CI/CD) 的工具鏈的一致性。

能夠?qū)﹂_(kāi)發(fā)環(huán)境進(jìn)行版本化并恢復(fù)它以服務(wù)于通過(guò)特定工具鏈認(rèn)證的舊版本產(chǎn)品。

入職和設(shè)置新的開(kāi)發(fā)人員。

在下面的示例中,您讓Parasoft C/C++test訪問(wèn)容器化編譯器 (GNU GCC) 和運(yùn)行時(shí)環(huán)境。有兩個(gè)獨(dú)立的 Docker 容器,一個(gè)用于編譯器和構(gòu)建工具,另一個(gè)用于執(zhí)行環(huán)境(例如,嵌入式 Linux 的剝離版本)。

在這個(gè)例子中,Parasoft C/C++test 標(biāo)準(zhǔn)可以用作基于命令行的工具,適用于容器內(nèi)部署。它可以與編譯器和構(gòu)建系統(tǒng)一起打包成一個(gè)容器鏡像,用于 CI/CD 并部署到開(kāi)發(fā)人員的桌面上進(jìn)行本地命令行掃描。下圖顯示了此設(shè)置的高級(jí)概述。

以下示例可以通過(guò)自動(dòng)化完成,或者每個(gè)團(tuán)隊(duì)成員都可以拉出一致的開(kāi)發(fā)環(huán)境,其中容器化提供以下功能:

開(kāi)發(fā)環(huán)境版本控制

集中管理和部署

對(duì)安全漏洞的即時(shí)反應(yīng)

較低的入職成本

了解行業(yè)領(lǐng)導(dǎo)者如何提供安全可靠的軟件

如果您想簡(jiǎn)化團(tuán)隊(duì)工作流程、削減成本并縮短上市時(shí)間,那么了解嵌入式安全和安全關(guān)鍵系統(tǒng)開(kāi)發(fā)中的挑戰(zhàn)、解決方案和現(xiàn)代方法對(duì)您來(lái)說(shuō)很重要。

審核編輯:郭婷

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

    關(guān)注

    5198

    文章

    20449

    瀏覽量

    334048
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2124

    瀏覽量

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

    關(guān)注

    1

    文章

    1672

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    嵌入式系統(tǒng)安全設(shè)計(jì)原則

    隨著物聯(lián)網(wǎng)、工業(yè)控制和智能設(shè)備的普及,嵌入式系統(tǒng)安全問(wèn)題越來(lái)越突出。一個(gè)小小的漏洞,就可能導(dǎo)致設(shè)備被入侵、數(shù)據(jù)泄露,甚至對(duì)人身安全產(chǎn)生威脅。因此,從設(shè)計(jì)階段開(kāi)始就考慮
    的頭像 發(fā)表于 01-19 09:06 ?331次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)安全</b>設(shè)計(jì)原則

    什么是嵌入式應(yīng)用開(kāi)發(fā)?

    系統(tǒng)中,用于控制、監(jiān)測(cè)或通信等特定用途。與一般計(jì)算機(jī)系統(tǒng)不同,嵌入式系統(tǒng)通常具有較小的存儲(chǔ)容量、處理能力和功耗,且需要滿足特定的實(shí)時(shí)性、可靠
    發(fā)表于 01-12 16:13

    中斷還是輪詢?嵌入式外設(shè)驅(qū)動(dòng)的最佳實(shí)踐

    剛?cè)腴T做嵌入式開(kāi)發(fā)時(shí),很多人經(jīng)常糾結(jié):用定時(shí)器采集傳感器數(shù)據(jù),是直接while循環(huán)里輪詢標(biāo)志位,還是寫(xiě)個(gè)中斷函數(shù)?串口收發(fā)數(shù)據(jù)時(shí),是用while(!(USART_SR&RXNE))這種
    的頭像 發(fā)表于 01-04 09:15 ?380次閱讀
    中斷還是輪詢?<b class='flag-5'>嵌入式</b>外設(shè)驅(qū)動(dòng)的<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>!

    系統(tǒng)嵌入式的學(xué)習(xí)路線

    比較簡(jiǎn)單,硬件工程師工作的含金量主要體現(xiàn)在產(chǎn)品的可靠性和穩(wěn)定性設(shè)計(jì)、以及電磁兼容設(shè)計(jì),這才是硬件設(shè)計(jì)工程師的含金量所在。 一個(gè)資深的嵌入式硬件工程師年薪都在10萬(wàn)~ 30萬(wàn)之間。 要成為一個(gè)資深
    發(fā)表于 12-16 07:49

    精準(zhǔn)對(duì)時(shí)與全面加密:嵌入式工控機(jī)助力光伏儲(chǔ)能系統(tǒng)安全穩(wěn)定運(yùn)行

    英康仕工控推出的NIS-YS839嵌入式工控機(jī),以其B碼對(duì)時(shí)功能和全面國(guó)密算法支持,為光伏儲(chǔ)能行業(yè)提供安全可靠的硬件解決方案。
    的頭像 發(fā)表于 11-18 14:22 ?3883次閱讀
    精準(zhǔn)對(duì)時(shí)與全面加密:<b class='flag-5'>嵌入式</b>工控機(jī)助力光伏儲(chǔ)能<b class='flag-5'>系統(tǒng)安全</b>穩(wěn)定運(yùn)行

    嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域

    應(yīng)用系統(tǒng)在功能、可靠性、成本、體積和功耗等方面的嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。 那么,嵌入式系統(tǒng)具體應(yīng)用在哪些領(lǐng)域呢?事實(shí)上,它們的應(yīng)用非常
    發(fā)表于 11-17 06:49

    2025年最佳嵌入式編程語(yǔ)言有哪些呢?

    嵌入式系統(tǒng)是現(xiàn)代科技不可或缺的一部分。它們存在于家用電器、汽車、住宅、醫(yī)院、商店等各個(gè)領(lǐng)域。它們與我們的社會(huì)緊密相連。選擇合適的語(yǔ)言來(lái)構(gòu)建嵌入式系統(tǒng)對(duì)于成功至關(guān)重要。那么,2025年
    的頭像 發(fā)表于 11-14 10:27 ?1416次閱讀
    2025年<b class='flag-5'>最佳</b>的<b class='flag-5'>嵌入式</b>編程語(yǔ)言有哪些呢?

    嵌入式開(kāi)發(fā)的關(guān)鍵點(diǎn)介紹

    開(kāi)發(fā)需要考慮嵌入式系統(tǒng)的資源限制,例如:內(nèi)存、CPU處理能力等等。因此,嵌入式開(kāi)發(fā)需要開(kāi)發(fā)人員具備優(yōu)化代碼的能力。嵌入式系統(tǒng)
    發(fā)表于 11-13 08:12

    嵌入式實(shí)時(shí)操作系統(tǒng)的特點(diǎn)

    任務(wù)的系統(tǒng)。 實(shí)時(shí)嵌入式操作系統(tǒng)與傳統(tǒng)的桌面操作系統(tǒng)相比,更注重對(duì)實(shí)時(shí)任務(wù)的響應(yīng)和精確控制。它們?cè)谫Y源利用、可靠性、可預(yù)測(cè)性、任務(wù)調(diào)度和中斷
    發(fā)表于 11-13 06:30

    如何采用SAFERTOS和ESM保護(hù)嵌入式系統(tǒng)安全

    信任根的重要組成部分是實(shí)時(shí)操作系統(tǒng)(RTOS),它為應(yīng)用程序的運(yùn)行提供了一個(gè)安全的平臺(tái)。嵌入式系統(tǒng)的具體安全要求取決于其架構(gòu)以及所面臨的威脅
    的頭像 發(fā)表于 10-24 15:51 ?1459次閱讀

    2025全國(guó)大學(xué)生嵌入式芯片與系統(tǒng)設(shè)計(jì)競(jìng)賽應(yīng)用賽道全國(guó)總決賽圓滿閉幕-飛凌嵌入式

    8月13日2025全國(guó)大學(xué)生嵌入式芯片與系統(tǒng)設(shè)計(jì)競(jìng)賽應(yīng)用賽道全國(guó)總決賽圓滿閉幕,飛凌嵌入式作為大賽協(xié)辦單位之一,攜手瑞芯微在應(yīng)用賽道設(shè)立專屬賽題并承擔(dān)評(píng)審工作,積極為高校學(xué)子搭建高水平的嵌入式
    的頭像 發(fā)表于 08-15 08:02 ?2460次閱讀
    2025全國(guó)大學(xué)生<b class='flag-5'>嵌入式</b>芯片與<b class='flag-5'>系統(tǒng)</b>設(shè)計(jì)競(jìng)賽應(yīng)用賽道全國(guó)總決賽圓滿閉幕-飛凌<b class='flag-5'>嵌入式</b>

    嵌入式開(kāi)發(fā)入門指南:從零開(kāi)始學(xué)習(xí)嵌入式

    開(kāi)發(fā)(設(shè)備驅(qū)動(dòng)、內(nèi)核編譯) 4. 推薦的學(xué)習(xí)資源書(shū)籍:《嵌入式系統(tǒng)軟件設(shè)計(jì)基礎(chǔ)》《ARM Cortex-M系列嵌入式開(kāi)發(fā)》在線課程:慕課網(wǎng)、B站嵌入式教學(xué)視頻
    發(fā)表于 05-15 09:29

    嵌入式應(yīng)用中常見(jiàn)的安全威脅

    越來(lái)越多的嵌入式設(shè)備存在互聯(lián)需求,在安全應(yīng)用開(kāi)發(fā)中,除功能安全外,應(yīng)用還需考慮信息安全。
    的頭像 發(fā)表于 04-28 14:45 ?1185次閱讀
    <b class='flag-5'>嵌入式</b>應(yīng)用中常見(jiàn)的<b class='flag-5'>安全</b>威脅

    嵌入式適合自學(xué)嗎?

    缺乏系統(tǒng)的規(guī)劃,而學(xué)習(xí)到一些不相關(guān)或不重要的內(nèi)容。 2)缺乏實(shí)踐機(jī)會(huì):嵌入式開(kāi)發(fā)需要大量的實(shí)踐,而自學(xué)的學(xué)習(xí)者可能缺乏實(shí)際的項(xiàng)目練習(xí)和實(shí)踐機(jī)
    發(fā)表于 04-27 09:54

    可靠嵌入式主板設(shè)計(jì)

    嵌入式系統(tǒng)已廣泛應(yīng)用于各個(gè)領(lǐng)域,從航空航天、醫(yī)療設(shè)備到工業(yè)控制和智能家居,其應(yīng)用范圍不斷擴(kuò)展。隨著應(yīng)用場(chǎng)景的日益復(fù)雜和關(guān)鍵,嵌入式系統(tǒng)可靠
    的頭像 發(fā)表于 03-25 15:11 ?1075次閱讀
    高<b class='flag-5'>可靠</b>性<b class='flag-5'>嵌入式</b>主板設(shè)計(jì)