跟上嵌入式Linux最新步伐
嵌入式系統(tǒng)的設(shè)計目標是長期運行而不需要頻繁更新。對于那些作為智能邊緣組成部分而接入網(wǎng)絡(luò)的系統(tǒng),定期更新卻是一個常見的需求。例如,在嵌入式系統(tǒng)上更新映像,是基于嵌入式Linux的物聯(lián)網(wǎng)設(shè)備或家庭自動化系統(tǒng)制造商經(jīng)常需要處理的事項。在這種情況下,制造商可能會定期發(fā)布設(shè)備上運行的操作系統(tǒng)或應(yīng)用軟件更新,以便提高性能、增添新功能或修復(fù)發(fā)現(xiàn)的安全漏洞。制造商通常會提供一些方法工具,讓客戶在他們的設(shè)備上輕松地進行軟件更新,也可能把這些更新作為新設(shè)備制造過程的一部分。為此,選擇最能滿足這種更新需求的操作系統(tǒng),就成為十分重要的工作。購買商業(yè)支持的嵌入式操作系統(tǒng),比企業(yè)內(nèi)部聘用開發(fā)人員來構(gòu)建和維護自己的操作系統(tǒng)更具成本效益優(yōu)勢。
Ubuntu Core是Ubuntu Linux操作系統(tǒng)的一個版本,專為物聯(lián)網(wǎng)設(shè)備和其他嵌入式系統(tǒng)而設(shè)計。它是Ubuntu的輕量級極簡版本,只包含了運行物聯(lián)網(wǎng)設(shè)備所需的基本組件和服務(wù),從而使其達到安全與高效。Ubuntu Core包括一系列安全和管理功能,并通過“snaps”提供定制,這是一種用于軟件打包和系統(tǒng)部署的專有技術(shù)——也就是用于系統(tǒng)容器的壓縮版應(yīng)用軟件。由于具備多功能性、安全性和易用性,使它成為開發(fā)人員的熱門首選。
Wind River Linux是一個基于Linux的商業(yè)操作系統(tǒng),設(shè)計目標是嵌入式系統(tǒng),應(yīng)用于網(wǎng)絡(luò)設(shè)備、工業(yè)控制系統(tǒng)、航空航天和國防技術(shù)。Wind River Linux Distro是一個二進制發(fā)行版,基于流行的社區(qū)驅(qū)動Yocto項目,采用市場領(lǐng)先的Wind River Linux構(gòu)建而成,包括了對樹莓派4s的支持。為Distro 安裝系統(tǒng)更新需要OSTree,這是一種用于管理操作系統(tǒng)文件部署和更新的開源技術(shù),也是用于創(chuàng)建、部署和管理操作系統(tǒng)樹生命周期的工具,而操作系統(tǒng)樹是組成操作系統(tǒng)的文件集合。OSTree允許存儲和管理操作系統(tǒng)樹的多個版本,并支持操作系統(tǒng)的原子事務(wù)更新。
目標
為了確定部署后哪個平臺更容易維護,讓我們比較一下在Wind River Linux Distro和Ubuntu Core上更新映像的情況。
所用的設(shè)備 & 程序
● Raspberry Pi Imager Raspberry Pi OS – Raspberry Pi - 用來把映像刷新進入你的存儲器之中(SD card)
● Raspberry Pi 4 (RPi4)
● Micro HDMI port
● 64 GB Micro SD card
● USB-C Power Supply
更新Wind River Linux Distro映像
1. 確保Wind River Linux Distro二進制映像已經(jīng)啟動運行而且您已經(jīng)作為root用戶登錄。
2. 運行OSTree upgrade wrapper script來升級系統(tǒng)。運行命令:
$ ostree_upgrade.sh
3. 重啟系統(tǒng)并重新登錄
$ reboot
4. 解鎖此映像。為了確定您的映像處于鎖定狀態(tài),運行命令:
$ ostree admin unlock -hotfix
5. 通過DNF安裝、升級或移除包。
$ dnf install packageName
$ dnf remove packageName
$ dnf update
* 為了進行更新,你需要立即明確地更新cache來查看package feeds的變化。
$ dnf upgrade packageName
更新Ubuntu Core映像
1. 更新Ubuntu Core映像的第一步是使用一個模型斷言(model assertion)。輸入通常以JSON 格式提供。
2. 為了設(shè)置模型斷言,需要安裝snapcraft并登錄。
3. 需要有一個開發(fā)者ID用來創(chuàng)建模型斷言。
4. 作為開始,需要在支持snap的Linux系統(tǒng)上安裝映像。
5. 為了輸出映像文件本身,請運行如下腳本:
$ ubuntu-image snap ubuntu-core-20-amd64.model
比較
Wind River Linux和Ubuntu Core都是面向嵌入式系統(tǒng)基于Linux的操作系統(tǒng),主要用于網(wǎng)絡(luò)設(shè)備、工業(yè)控制系統(tǒng)、航空航天和國防技術(shù)。這兩個操作系統(tǒng)都提供了一系列適合這類應(yīng)用的特性和功能,例如實時性能和高安全性與高可靠性。
二者的一個關(guān)鍵性區(qū)別是:
Wind River Linux是高度可配置的,具有可定制的內(nèi)核及一系列可選配置以滿足特定需求。
Ubuntu Core使用Snap Store來添加和安裝軟件包,專注于簡單性和安全性,具有極簡的設(shè)計和一系列功能,以確保操作系統(tǒng)和在其上運行的應(yīng)用始終處于最新版且具備安全性。
上述差異會影響兩個操作系統(tǒng)上更新映像的特定工具和進程。例如,Wind River Linux包含了更高級的管理和操作系統(tǒng)映像工具,而Ubuntu Core更專注于提供易用性,方便進行應(yīng)用更新。
另一個區(qū)別是,Wind River Linux Distro是由風河系統(tǒng)公司開發(fā)的商業(yè)操作系統(tǒng),而Ubuntu Core是通行Ubuntu Linux發(fā)行版的一個特定版本,由Canonical公司開發(fā)。這意味著,在Wind River Linux Distro上創(chuàng)建和部署新映像的工具和過程可能與Ubuntu Core略有不同。Wind River Linux專注于為商業(yè)用戶提供工具和服務(wù),而Ubuntu Core可能包括與公共社區(qū)合作和共享操作系統(tǒng)映像的工具。
總的來說,對于嵌入式系統(tǒng)來說,Wind River Linux和Ubuntu Core都是不錯的選擇,但對于某些類型的應(yīng)用和環(huán)境,應(yīng)該考量到它們各自的特定特性和能力,以便做出更好的選擇。如果你認為可定制性和長期支持比較重要,Wind River Linux Distro是適當?shù)倪x擇。另一方面,如果你關(guān)心簡潔性,Ubuntu Core就更穩(wěn)妥一些。在決定使用哪個操作系統(tǒng)之前,仔細評估項目的具體需求和要求,這是非常重要的。
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
10月31日立即下載>> 【限時免費下載】TE暖通空調(diào)系統(tǒng)高效可靠的組件解決方案
-
即日-11.13立即報名>>> 【在線會議】多物理場仿真助跑新能源汽車
-
11月28日立即報名>>> 2024工程師系列—工業(yè)電子技術(shù)在線會議
-
12月19日立即報名>> 【線下會議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會
-
即日-12.26火熱報名中>> OFweek2024中國智造CIO在線峰會
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍皮書》
推薦專題
- 高級軟件工程師 廣東省/深圳市
- 自動化高級工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市