電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 44|回復: 0
收起左側(cè)

簡述嵌入式系統(tǒng)開發(fā)的一些特殊性

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
匿名  發(fā)表于 2023-8-9 17:50:00 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
【一分鐘聊嵌入式】,力求精簡,爭取用一分鐘左右的時間讀完。每篇文章討論一個嵌入式相關(guān)的話題,技術(shù)、職場、學習方法,或者一段程序等。有小伙伴想發(fā)表自己的觀點,或想了解哪些內(nèi)容,公眾號后臺留言即可。感謝關(guān)注!
本期話題
簡單來說,嵌入式系統(tǒng)是,不提供通用的計算環(huán)境,致力于完成現(xiàn)實世界中的具體功能的計算系統(tǒng)。嵌入式系統(tǒng)與其他系統(tǒng)是有很多不同之處的,那么嵌入式系統(tǒng)哪些特殊的地方呢?今天來簡單聊一聊。聊一聊
嵌入式系統(tǒng)的有一個子集:實時系統(tǒng)。這是一種在系統(tǒng)中必須滿足實時性約束才能正確運行的系統(tǒng)。這種系統(tǒng)有兩類:硬實時系統(tǒng),在規(guī)定的時間結(jié)束之前,指定的活動必須完成。軟實時系統(tǒng),在規(guī)定的時間內(nèi),盡可能的去完成任務(wù),允許有一些超時。
下邊介紹幾點嵌入式系統(tǒng)開發(fā)的一些特殊性。
(1)嵌入式設(shè)計約束
與編寫通用計算機軟件不同,嵌入式系統(tǒng)發(fā)布時通常集成了系統(tǒng)所需的所有硬件。這個硬件平臺不支持用戶自行擴展。硬件資源對嵌入式系統(tǒng)來說非常關(guān)鍵,有時候受硬件的限制,軟件需要做出很多優(yōu)化。
性能問題也是系統(tǒng)設(shè)計的一個關(guān)鍵點,例如,吞吐量、快速響應(yīng)能力等。
其他需要考慮的約束還有,可靠性、健壯性、安全性等等。
(2)開發(fā)工具
嵌入式開發(fā),大部分情況是利用交叉編譯工具,在主機上開發(fā)編譯,將編譯后的程序在目標機上運行。
這些開發(fā)工具包括:編譯器、連接器、程序裝載器、調(diào)試器工具集等。
(3)嵌入式中間件
中間件是一種使用某種方法將軟件組件連接的軟件。對于嵌入式系統(tǒng)來說,有些中間件軟件作為嵌入式軟件的一部分進行開發(fā)。有些是分離開發(fā)的。
當系統(tǒng)中的不同組件由不同的組織開發(fā)時,使用標準的中間件可以給開發(fā)者提供明顯的好處。
(4)與硬件協(xié)同開發(fā)
很多嵌入式工程涉及電子和機械硬件與軟件開發(fā)同時進行。
軟件開發(fā)者需要根據(jù)硬件如何工作進行開發(fā)軟件,硬件的任何調(diào)整都會影響到軟件的開發(fā)情況。不到硬件最終發(fā)布,是不能開發(fā)出正確的軟件。
因此,硬件和軟件需要協(xié)同開發(fā),互相進行適配和調(diào)整。
(5)調(diào)試和測試
編寫軟件不是一件困難的事,而編寫有正確功能的軟件是不容易的。
嵌入式軟件發(fā)開,經(jīng)常忽略的是單元測試,如果可以盡可能的提前進行。這樣可以提前發(fā)現(xiàn)軟件的bug。
嵌入式軟件開發(fā)適用的一些單元測試:功能測試、性能測試、先決條件測試、邊界測試、壓力測試、回歸測試等等。
在嵌入式平臺上要實現(xiàn)這些測試,有時候是比較困難,可以采取以下策略:
  • "printf"測試,通過在程序中添加信息打印,輸出在某個設(shè)備上查看。
  • 主機上測試,在開發(fā)主機上進行驗證測試。
  • 主機模擬,通過模擬軟件模擬目標平臺,對程序進行執(zhí)行測試。除了以上這些,當然還有很多其他特殊性,可以補充探討。
    好了,感謝閱讀,加油~
    -END-
    往期推薦:點擊圖片即可跳轉(zhuǎn)閱讀
                                                           
                                                                   
                                                                           
                                                                                   

                                                                                   
                                                                                            全面講解 C 語言斷言函數(shù)的應(yīng)用
                                                           
                                                                   
                                                                           
                                                                                   

                                                                                   
                                                                                            分享 5 條實用建議,助你加速嵌入式固件開發(fā)。
                                                                   
                                                                           
                                                                                   

                                                                                   
                                                                                            談?wù)勄度胧杰浖嫒菪缘淖⒁馐马棧?br />                                                                                
                                                                           
                                                                   
                                                            我是老溫,一名熱愛學習的嵌入式工程師
    關(guān)注我,一起變得更加優(yōu)秀!
  • 回復

    使用道具

    發(fā)表回復

    您需要登錄后才可以回帖 登錄 | 立即注冊

    本版積分規(guī)則


    聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表