色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

設計安全可靠的嵌入式系統最佳實踐

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Ricardo Camacho ? 2022-10-21 14:07 ? 次閱讀

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

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

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

ISO 26262(汽車)

IEC 62304(醫療)

IEC 61508(工業

EN 50128(導軌)

以及更多

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

采用一兩種軟件測試技術不會削減它。在開發生命周期中使用各種自動化方法將節省您的時間和金錢。它還將有助于建立可靠性聲譽,這是無價的。

嵌入式軟件開發的自動化測試方法

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

靜態代碼分析

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

引入靜態分析的最大挑戰是,大量代碼可能會產生大量警告。將靜態分析集成到項目中時,建議關注以下幾點:

讓團隊盡快提高工作效率。

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

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

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

動態分析方法或運行時錯誤檢測

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

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

團隊可以在軟件抽象的各個級別應用這種類型的測試。從測試每個單獨的單元或功能開始,然后集成其他軟件部件。最終,軟件將系統作為一個整體或黑匣子進行測試。這通常表現在眾所周知的V模型軟件生命周期中。

結構代碼覆蓋率

在動態分析方法中,可以應用其他技術的疊加,例如結構代碼覆蓋率。

簡而言之,結構覆蓋是識別已執行和記錄的代碼,以確定系統是否已經過充分測試。如果可以通過測試用例執行確定已執行的代碼,則未發現或未執行的代碼將公開對其他測試的需求。

如果您的合規性要求是獲得 100% 的代碼覆蓋率,則至少需要通過單元測試和手動測試來執行覆蓋率。雖然我們可以繼續沿著揭示其他測試方法(如回歸、性能、壓力、API、UI、驗收等)的路徑前進,但讓我們深入研究用于測試嵌入式系統的現代部署。

持續集成和持續交付

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

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

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

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

容器化開發環境

另一種類型的現代化來自容器化開發環境。開發工具的容器化部署正在成為嵌入式開發團隊的面包和黃油。

盡管容器最初是為解決微服務和基于Web的應用程序的部署問題而開發的,但它們最近在嵌入式團隊中越來越受歡迎。特別是對于使用容器來管理復雜工具鏈的大型團隊。

在管理復雜的開發環境時,特別是在安全關鍵領域,團隊通常會面臨以下挑戰,這些挑戰很容易用容器解決:

將整個團隊的升級同步到最新版本的工具(如編譯器、生成工具鏈等)。

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

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

能夠對開發環境進行版本控制并對其進行還原,以便為使用特定工具鏈認證的舊版本產品提供服務。

入職和設置新的開發人員。

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

在這個例子中,Parasoft C/C++測試標準可以用作基于命令行的工具,適用于容器內部署。它可以與編譯器和構建系統打包到一個容器映像中,用于 CI/CD,并部署到開發人員的桌面上進行本地命令行掃描。

以下示例可以通過自動化完成,或者每個團隊成員都可以拉取一致的開發環境,其中容器化提供以下內容:

開發環境版本控制

集中管理和部署

對安全漏洞的即時反應

更低的入職成本

了解行業領導者如何交付安全可靠的軟件

如果您想簡化團隊工作流程、削減成本并縮短上市時間,那么了解嵌入式安全和安保關鍵型系統開發中的挑戰、解決方案和現代方法對您來說非常重要。

審核編輯:郭婷

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

    關注

    5086

    文章

    19142

    瀏覽量

    305979
  • C++
    C++
    +關注

    關注

    22

    文章

    2110

    瀏覽量

    73696
收藏 人收藏

    評論

    相關推薦

    新手怎么學嵌入式?

    ,實現一些簡單的功能,如點亮一個 LED 燈、讀取傳感器數據等,來加深對嵌入式技術的理解。你還可以參加一些線上或線下的嵌入式項目實踐活動,與其他愛好者一起學習和交流。 5. 學習嵌入式
    發表于 12-12 10:51

    什么是嵌入式操作系統?

    的戰斗機。 FreeRTOS:它適合那些資源有限的小型設備,就像小巧的瑞士軍刀。 QNX:它以安全可靠著稱,很多汽車和工業系統都用它,可以說是EOS中的沃爾沃。 Linux:雖然它不是專門為
    發表于 11-08 15:07

    嵌入式學習建議

    ,最好能有自己動手的空間。不花一分硬件錢想要學好嵌入式系統不實際,因為這是實踐性很強的學科。好書,可以讓人少走彎路,不被誤導。好老師也可以是做過一些實際項目的學長(一定要找做過幾個成功項目的學長或老師做
    發表于 10-22 11:41

    什么是嵌入式?一文讀懂嵌入式主板

    的個人電腦不同,嵌入式系統不是為了通用的計算任務設計,而是專注于特定的應用場景,確保其在特定環境中運行得既高效又可靠
    的頭像 發表于 10-16 10:14 ?1145次閱讀

    【「嵌入式Hypervisor:架構、原理與應用」閱讀體驗】+全文學習心得

    降低了虛擬機之間的耦合性,提高了系統可靠性和安全性。 在學習過程中,我深刻體會到嵌入式Hypervisor的核心價值在于其靈活性和可擴展性。它能夠根據實際應用需求,動態地調整資源配置
    發表于 10-09 19:11

    【「嵌入式Hypervisor:架構、原理與應用」閱讀體驗】+第7-8章學習心得

    提供了安全可靠和高效的虛擬化環境。同時,嵌入式Hypervisor的設計還注重解決容錯性和實時性問題,為構造高可靠嵌入式
    發表于 10-09 18:50

    嵌入式系統的原理和應用

    嵌入式系統是一種專用的計算機系統,其設計初衷是執行特定任務,而非作為通用計算機使用。這類系統通常作為更大系統的一部分,起到控制、監控或輔助的
    的頭像 發表于 10-05 17:03 ?971次閱讀

    嵌入式系統的未來趨勢有哪些?

    ,會更多地使用環保材料,以減少對環境的污染。同時,系統設計將更加注重生態可持續性,滿足可持續發展的需求。 6. 實時操作系統(RTOS)的發展 實時操作系統嵌入式
    發表于 09-12 15:42

    嵌入式系統怎么學?

    系統設計與調試:需要掌握嵌入式系統的設計方法和調試技術,包括硬件設計、軟件設計、電路調試等,以確保系統的穩定性和可靠性。 隨著技術的不斷進
    發表于 07-02 10:10

    如何提升嵌入式編程能力?

    最佳實踐。 13. 閱讀相關書籍:閱讀關于嵌入式系統設計和編程的書籍,以獲得更深入的理解。 14. 構建項目:通過構建完整的嵌入式項目來綜
    發表于 06-21 10:01

    再談嵌入式實時操作系統

    程序的可移植性得到了增強,系統開發的工作量減輕的同時也提高了開發效率。對實時性和可靠性日益增長的要求正在塑造某些現代領域的嵌入式實時操作系統的發展方向,例如航空航天、工業控制、汽車電子
    的頭像 發表于 04-09 17:27 ?813次閱讀
    再談<b class='flag-5'>嵌入式</b>實時操作<b class='flag-5'>系統</b>

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統是當今科技領域的核心,而C語言則是嵌入式系統開發中最常用的編程語言之一。成為一名
    發表于 04-07 16:03

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統是當今科技領域的核心,而C語言則是嵌入式系統開發中最常用的編程語言之一。成為一名
    發表于 03-25 14:12

    嵌入式系統發展前景?

    應用領域。隨著汽車電子化和智能化程度的不斷提高,嵌入式系統將在汽車控制、安全系統、自動駕駛等方面發揮更為重要的作用。 工智能和機器學習技術的發展為嵌入式
    發表于 02-22 14:09

    如何使用 DSC 和 MCU 確保嵌入式系統安全

    作者:Stephen Evanczuk 投稿人:DigiKey 北美編輯 隨著向物聯網 (IoT) 的遷移,安全性已不再是嵌入式應用中的選配功能,已發展成為確保系統完整性所需的必備能力。為了滿足日益
    的頭像 發表于 02-13 14:38 ?763次閱讀
    如何使用 DSC 和 MCU 確保<b class='flag-5'>嵌入式</b><b class='flag-5'>系統安全</b>
    主站蜘蛛池模板: WWW国产亚洲精品久久| 黄色三级网络| 嗯啊快拔出来我是你老师视频| 伊人青青青| 妈妈的朋友5在线观看免费完整版中文| 一本色道久久综合亚洲精品加 | 精品无码三级在线观看视频| 影音先锋色av男人资源网| 嫩交18xxxx| 国产福利一区二区精品| 亚洲欧美日本国产在线观18| 美女扒开尿口让男生添动态图| 苍井空a 集在线观看网站| 亚洲AV国产国产久青草| 老师的快感电影完整版| 北原多香子qvod| 亚洲精品国产第一区第二区| 男的插曲女的下面免费APP| 国产成人免费高清视频| 野花韩国高清完整版在线| 胖老太与人牲交BBWBBW高潮| 韩国伦理片2018在线播放免费观看| 97伦理97伦理2018最新| 天天看片视频免费观看| 老司机试看午夜| 国产精品丰满人妻AV麻豆 | 中文字幕一区二区三区在线观看 | 一边啪啪的一边呻吟声口述| 人妻久久久精品99系列AV| 近亲乱中文字幕| 岛国大片在线观看完整版| 一本道久在线综合色姐| 色一欲一性一乱一区二区三区 | 亚洲中文字幕无码一久久区| 青柠在线观看免费播放电影| 九九久久国产精品免费热6| 成人性生交大片免费看中文| 中文字幕蜜臀AV熟女人妻| 午夜aaaa| 漂亮的av女演员| 绿巨人www在线观看|