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

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

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

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Ricardo Camacho ? 2022-07-01 14:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

流程標準提供流程、驗證方法和最佳實踐,以確保軟件安全、安全和質量有足夠的信心。這些包括:

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

ISO 26262(汽車)

IEC 62304(醫(yī)療)

IEC 61508(工業(yè))

EN 50128(導軌)

和更多

軟件驗證和確認是遵守流程標準的關鍵組成部分。這是一個涉及不同軟件測試技術的過程,這些技術可能是嚴格的、昂貴的和耗時的。

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

嵌入式軟件開發(fā)的自動化測試方法

自動化對于測試嵌入式軟件至關重要,因為手動方法容易出錯且耗時。讓我們討論對您的團隊有幫助的重要自動化測試方法。

靜態(tài)代碼分析

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

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

盡快讓團隊高效工作。

最大限度地減少團隊被所有靜態(tài)分析警告淹沒的機會。

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

因為有各種編碼合規(guī)性標準(MISRA C:2012、AUTOSAR C++14、SEI CERT、CWE 等)從一個目標開始。如果安全是關鍵目標,那么啟用所有與安全相關的規(guī)則、禁用不太重要的規(guī)則并啟用一種內置的安全編碼標準(如 CERT C/C++)是有意義的。

動態(tài)分析方法或運行時錯誤檢測

如前所述,一種測試方法是不夠的。僅通過靜態(tài)分析無法識別所有錯誤或缺陷。動態(tài)分析方法或運行時錯誤檢測也是一種可以采用的測試實踐。

該測試應與需求相關聯。它檢查正在運行的代碼,暴露架構和行為缺陷、其他弱點和/或安全漏洞,包括內存泄漏等。

團隊可以在不同級別的軟件抽象上應用這種類型的測試。從測試每個單獨的單元或功能開始,然后集成其他軟件部分。最終軟件測試系統(tǒng)作為一個整體或黑盒。這通常體現在著名的 V 模型軟件生命周期中。

結構代碼覆蓋率

在動態(tài)分析方法中,可以應用其他技術,如結構代碼覆蓋。

簡而言之,結構覆蓋是為了確定系統(tǒng)是否經過充分測試而執(zhí)行和記錄的代碼的標識。如果您可以確定已通過測試用例執(zhí)行的代碼,那么未發(fā)現或未執(zhí)行的代碼將暴露出對額外測試的需求。

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

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

在過去幾年中越來越受歡迎的一個主題是持續(xù)集成和持續(xù)交付 (CI/CD)。CI/CD 是夜間集成的軟件開發(fā)實踐(將較小的構建單元組合到應用程序、庫或組件中),旨在構建可測試的軟件以實現持續(xù)交付和早期檢測構建/集成問題和錯誤。

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

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

因此,與其在整個項目上運行分析,這可能需要相當長的時間,甚至幾個小時,它可以在最小的文件集上運行。這減少了評估會議的持續(xù)時間和重點。然后可以解決和糾正編碼違規(guī),以實現干凈、安全和可靠的構建。

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

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

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

在管理復雜的開發(fā)環(huán)境時,尤其是在安全關鍵領域,團隊通常會遇到以下挑戰(zhàn),這些挑戰(zhàn)很容易通過容器解決:

將整個團隊的升級同步到編譯器、構建工具鏈等工具的最新版本。

動態(tài)響應庫或軟件開發(fā)工具包 (SDK) 等的新安全補丁。

確保所有團隊成員和自動化基礎設施 (CI/CD) 的工具鏈的一致性。

能夠對開發(fā)環(huán)境進行版本化并恢復它以服務于通過特定工具鏈認證的舊版本產品。

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

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

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

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

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

集中管理和部署

對安全漏洞的即時反應

較低的入職成本

了解行業(yè)領導者如何提供安全可靠的軟件

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

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5210

    文章

    20680

    瀏覽量

    337374
  • C++
    C++
    +關注

    關注

    22

    文章

    2131

    瀏覽量

    77419
  • 編譯器
    +關注

    關注

    1

    文章

    1673

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    深度剖析MAX32590:打造安全可靠嵌入式設備

    深度剖析MAX32590:打造安全可靠嵌入式設備 在當今數字化時代,嵌入式設備的安全性和性能成為了電子工程師們關注的焦點。MAX32590作為一款具備高度
    的頭像 發(fā)表于 03-26 16:50 ?290次閱讀

    深度解析MAX32591:打造安全可靠嵌入式系統(tǒng)

    深度解析MAX32591:打造安全可靠嵌入式系統(tǒng) 在當今數字化時代,嵌入式系統(tǒng)安全性和性能至
    的頭像 發(fā)表于 03-26 16:50 ?384次閱讀

    DeepCover? MAX32555:打造安全可靠嵌入式設備

    DeepCover? MAX32555:打造安全可靠嵌入式設備 在當今數字化時代,數據安全愈發(fā)重要,尤其是在涉及敏感信息的設備中。DeepCover?嵌入式
    的頭像 發(fā)表于 03-26 16:40 ?224次閱讀

    嵌入式AI開發(fā)必看:杜絕幻覺,才是工業(yè)級IDE的核心底氣

    入門開發(fā)者也能快速完成工業(yè)級 AI 應用開發(fā),同時減少多平臺切換帶來的工具鏈維護成本。 在工業(yè)嵌入式領域,AI 的價值從來不是“能寫代碼”,而是“能寫出安全可靠、可直接落地的代碼”。PPEC
    發(fā)表于 03-18 13:49

    知識分享-嵌入式系統(tǒng)可靠性模型

    嵌入式系統(tǒng)可靠性設計技術及案例解析1.3嵌入式系統(tǒng)可靠性模型
    的頭像 發(fā)表于 03-11 16:43 ?422次閱讀
    知識分享-<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>可靠</b>性模型

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

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

    什么是嵌入式應用開發(fā)?

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

    中斷還是輪詢?嵌入式外設驅動的最佳實踐

    剛入門做嵌入式開發(fā)時,很多人經常糾結:用定時器采集傳感器數據,是直接while循環(huán)里輪詢標志位,還是寫個中斷函數?串口收發(fā)數據時,是用while(!(USART_SR&RXNE))這種
    的頭像 發(fā)表于 01-04 09:15 ?616次閱讀
    中斷還是輪詢?<b class='flag-5'>嵌入式</b>外設驅動的<b class='flag-5'>最佳</b><b class='flag-5'>實踐</b>!

    精準對時與全面加密:嵌入式工控機助力光伏儲能系統(tǒng)安全穩(wěn)定運行

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

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

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

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

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

    嵌入式開發(fā)的關鍵點介紹

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

    嵌入式實時操作系統(tǒng)的特點

    任務的系統(tǒng)。 實時嵌入式操作系統(tǒng)與傳統(tǒng)的桌面操作系統(tǒng)相比,更注重對實時任務的響應和精確控制。它們在資源利用、可靠性、可預測性、任務調度和中斷
    發(fā)表于 11-13 06:30

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

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

    嵌入式開發(fā)入門指南:從零開始學習嵌入式

    開發(fā)(設備驅動、內核編譯) 4. 推薦的學習資源書籍:《嵌入式系統(tǒng)軟件設計基礎》《ARM Cortex-M系列嵌入式開發(fā)》在線課程:慕課網、B站嵌入式教學視頻
    發(fā)表于 05-15 09:29
    鸡西市| 正阳县| 平乐县| 和静县| 河间市| 祁门县| 犍为县| 溆浦县| 招远市| 金溪县| 岚皋县| 宁河县| 清涧县| 湘阴县| 台南县| 临猗县| 若尔盖县| 磐安县| 闻喜县| 伊吾县| 西藏| 潮州市| 郑州市| 文登市| 隆德县| 云安县| 秭归县| 水富县| 图片| 清新县| 理塘县| 法库县| 焦作市| 易门县| 读书| 泰兴市| 龙江县| 民乐县| 佛山市| 扎兰屯市| 桓台县|