1. gzyueqian
      13352868059

      嵌入式開發(fā):嵌入式Linux構(gòu)建工作流和流程的普遍現(xiàn)狀

      更新時間: 2022-02-02 10:05:00來源: 粵嵌教育瀏覽量:12626

        許多使用容器等云技術(shù)的嵌入式開發(fā)人員將物聯(lián)網(wǎng)和嵌入式Linux設(shè)備視為他們目前工作環(huán)境的擴展。但現(xiàn)實是,為嵌入式Linux設(shè)備開發(fā)和維護應(yīng)用程序帶來了一系列獨特的挑戰(zhàn)和工作流程。此外,由于各種原因,一些創(chuàng)建新物聯(lián)網(wǎng)產(chǎn)品的嵌入式工程師沒有采用容器等現(xiàn)代工具及其實踐。


        我們將討論工程師今天使用的典型嵌入式Linux構(gòu)建工作流和流程。


        軟件開發(fā)更為復雜


        毫無疑問,軟件開發(fā),特別是云計算,多年來變得更加復雜,同樣的復雜程度也適用于物聯(lián)網(wǎng)和嵌入式Linux系統(tǒng)。目前的Raspberry Pi和Nvidia板就是一個很好的例子。這些都是片上系統(tǒng)(SOC)的例子,它提供了許多具有創(chuàng)新功能的資源,使開發(fā)和管理應(yīng)用程序和其他系統(tǒng)變得更加復雜。


        云開發(fā)人員所需的技能范圍廣泛多樣,無論是從單個開發(fā)人員的角度還是整個團隊的角度來看,云開發(fā)人員需要協(xié)調(diào)許多不同的系統(tǒng),從Git之類的源代碼管理存儲庫到Kubernetes之類的自動化持續(xù)集成和部署管道以及編排系統(tǒng)。盡管如此,在將應(yīng)用程序部署到云端之前,開發(fā)應(yīng)用程序還需要掌握各種語言、框架和存儲系統(tǒng)。


        嵌入式工程師和硬件


        嵌入式工程師有管理硬件的額外要求,與云不同的是,云幾乎有無限的資源,他們必須評估每個板的功能和限制。


        嵌入式Linux產(chǎn)品也傾向于在市場上存在很長時間,有時長達10年,因此,另外一個關(guān)鍵考慮因素是軟件和固件必須可靠且易于更新。大多數(shù)設(shè)備都是連接的,就像裸機服務(wù)器一樣,是物聯(lián)網(wǎng)基礎(chǔ)設(shè)施的基本組件。嵌入式開發(fā)工程師最不想考慮的是可能導致整個網(wǎng)絡(luò)或生態(tài)系統(tǒng)崩潰的關(guān)鍵軟件缺陷。


        嵌入式工程需要采用現(xiàn)代云技術(shù)


        通過采用容器及其實踐等現(xiàn)代云技術(shù),可以滿足許多嵌入式特定需求。但是,采用容器也有許多其他好處,可以幫助嵌入式工程團隊,例如加快從概念驗證原型到生產(chǎn)準備的周轉(zhuǎn)時間,提高開發(fā)速度。


        從概念驗證到生產(chǎn)準備


        在處理新的和復雜的框架和庫時,嵌入式工程師必須保持高效和領(lǐng)先。例如,工程師需要快速構(gòu)建和迭代概念驗證或可以與客戶一起評估和測試的產(chǎn)品原型,以快速確定它是否是一個可以構(gòu)建并推向市場的可行產(chǎn)品。



        上市速度


        隨著原型的測試和批準,你需要做好準備并盡快將其投入市場。如果測試成功,你將希望在市場上率先推出新一代產(chǎn)品,有望領(lǐng)先于你的競爭對手。


        生命周期管理的長期前景


        嵌入式Linux設(shè)備需要長期維護。我們需要的是一種可靠的方法來安全地更新和維護設(shè)備。對于嵌入式系統(tǒng),你需要一個一致的電源和一種簡單的方法,以便在出現(xiàn)問題時返回或前進到良好狀態(tài),而不是以磚塊設(shè)備結(jié)束。


        構(gòu)建沒有容器的嵌入式Linux系統(tǒng)


        多年來,構(gòu)建嵌入式Linux系統(tǒng)幾乎沒有什么變化。盡管存在Buildroot和Yocto等特定于嵌入式系統(tǒng)的發(fā)行版,但圍繞嵌入式系統(tǒng)設(shè)計和體系結(jié)構(gòu)的嵌入式開發(fā)方法和實踐與20年前類似。


        傳統(tǒng)上,嵌入式團隊有一個緩慢的發(fā)布周期,每幾個月甚至每年發(fā)布一次monolith版本,將每個小的更改都包含在一個大的版本中。這種類型的釋放可能適用于封閉設(shè)備。但是,如果你的設(shè)備連接到互聯(lián)網(wǎng)中,該怎么辦?如果是這種情況,則需要快速交付其中一些更改和更新。


        單映像單片部署


        下面是嵌入式Linux工程師在創(chuàng)建嵌入式系統(tǒng)時將開始的傳統(tǒng)工作流程。編譯和調(diào)試后,結(jié)果是一個單獨的映像部署到板上。


        組裝和自定義板支持包以及Linux內(nèi)核庫和模塊后,需要決定應(yīng)用程序使用的框架和庫。然后,整個系統(tǒng)通過Yocto或Buildroot以層或“配方”的形式構(gòu)建。當然,這并不像聽起來那么簡單,而且當使用特定的工具鏈進行交叉編譯時,常常會出現(xiàn)需要調(diào)試的依賴沖突。但是,一旦完成,最終的結(jié)果是將單個單片映像部署到設(shè)備上。


        單個映像部署的優(yōu)缺點


        單個映像的一個優(yōu)點是可以對其進行優(yōu)化,使其在設(shè)備上運行得更快。但缺點是,如果你有關(guān)鍵補丁、新功能或任何其他類型的更新,則必須重復整個嵌入式開發(fā)過程,這可能會很耗時。

      免費預(yù)約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚洲国产精品VA在线看黑屌 | 日本有码三级欧美国产 | 亚洲精品国产丝袜久久 | 性色AV一区二区三 | 亚洲欧美视频在线播放 | 午夜性刺激在线观看视频 |