<strike id="xh1ss"><address id="xh1ss"></address></strike>
  1. <legend id="xh1ss"></legend>
  2. 更多課程 選擇中心

    嵌入式培訓
    達內IT學院

    400-111-8989

    嵌入式環境下軟件設計的特點

    • 發布:嵌入式培訓
    • 來源:嵌入式資訊
    • 時間:2020-10-13 14:59

    要談嵌入式的軟件架構,首先必須了解嵌入式軟件設計的特點。

    1、和硬件密切相關嵌入式軟件普遍對硬件有著相當的依賴性。

    這體現在幾個方面:一些功能只能通過硬件實現,軟件操作硬件,驅動硬件。硬件的差異/變更會對軟件產生重大影響。沒有硬件或者硬件不完善時,軟件無法運行或無法完整運行。

    這些特點導致幾方面的后果:

    (1)軟件工程師對硬件的理解和熟練程度會很大程度的決定軟件的性能/穩定性等非功能性指標,而這部分一向是相對復雜的,需要資深的工程師才能保證質量。

    (2)軟件對硬件設計高度依賴,不能保持相對穩定,可維護性和可重用性差

    (3)軟件不能離開硬件單獨測試和驗證,往往需要和硬件驗證同步進行,造成進度前松后緊,錯誤定位范圍擴大。

    針對這些問題,有幾方面的解決思路:

    (1)用軟件實現硬件功能。選用更強大的處理器,用軟件來實現部分硬件功能,不僅可以降低對硬件的依賴,在響應變化,避免對特定型號和廠商的依賴方面都很有好處。這在一些行業里已經成為了趨勢。在PC平臺也經歷了這樣的過程,比如早期的漢卡。

    (2)將對硬件的依賴獨立成硬件抽象層,盡可能使軟件的其他部分硬件無關,并可以脫離硬件運行。一方面將硬件變更甚至換件的風險控制在有限的范圍內,另一方面提高軟件部分的可測試性。

    2、穩定性要求高

    大部分嵌入式軟件都對程序的長期穩定運行有較高的要求。比如手機經常幾個月開機,通訊設備則要求24*7正常運行,即使是通訊上的測試設備也要求至少正常運行8小時。為了穩定性的目標,有一些比較常用的設計手段:

    將不同的任務分布在獨立的進程中。良好的模塊化設計是關鍵

    Watch Dog, Heart beat,重新啟動失效的進程。

    完善而統一的日志系統以快速定位問題。嵌入式設備一般缺乏有力的調試器,日志系統尤其重要。

    將錯誤孤立在最小的范圍內,避免錯誤的擴散和連鎖反應。核心代碼要經過充分的驗證,對非核心代碼,可以在監控或者沙盒中運行,避免其破壞整個系統。

    舉例,Symbian上的GPRS訪問受不同硬件和操作系統版本影響,功能不是非常穩定。其中有一個版本上當關閉GPRS連接時一定會崩潰,而且屬于known issue。將GPRS連接,HTTP協議處理,文件下載等操作獨立到一個進程中,雖然每次操作完畢該進程都會崩潰,對用戶卻沒有影響。

    版權聲明:轉載文章來自公開網絡,版權歸作者本人所有,推送文章除非無法確認,我們都會注明作者和來源。如果出處有誤或侵犯到原作者權益,請與我們聯系刪除或授權事宜。

    預約申請免費試聽課

    填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

    上一篇:兩個常見的嵌入式誤解
    下一篇:嵌入式知識:怎么解決內存不足的問題

    單片機:寫1清零,寫0清零,有什么區別?

    嵌入式工程師一定不要亂用全局變量

    嵌入式培訓靠譜嗎?就業怎么樣?

    新手如何學習單片機?

    • 掃碼領取資料

      回復關鍵字:視頻資料

      免費領取 達內課程視頻學習資料

    • 視頻學習QQ群

      添加QQ群:1143617948

      免費領取達內課程視頻學習資料

    Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

    選擇城市和中心
    黑龍江省

    吉林省

    河北省

    湖南省

    貴州省

    云南省

    廣西省

    海南省

    黄色一级全祼,欧美一级aa片,一级毛卡片,一级特黄大片,三级片视频 百度 好搜 搜狗
    <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>