訂閱
糾錯
加入自媒體

跟上嵌入式Linux最新步伐

2023-02-28 18:22
來源: 風(fēng)河

嵌入式系統(tǒng)的設(shè)計目標(biāo)是長期運行而不需要頻繁更新。對于那些作為智能邊緣組成部分而接入網(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è)計目標(biāo)是嵌入式系統(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ù)更新。

目標(biāo)

為了確定部署后哪個平臺更容易維護,讓我們比較一下在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是由風(fēng)河系統(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是適當(dāng)?shù)倪x擇。另一方面,如果你關(guān)心簡潔性,Ubuntu Core就更穩(wěn)妥一些。在決定使用哪個操作系統(tǒng)之前,仔細評估項目的具體需求和要求,這是非常重要的。

聲明: 本文系OFweek根據(jù)授權(quán)轉(zhuǎn)載自其它媒體或授權(quán)刊載,目的在于信息傳遞,并不代表本站贊同其觀點和對其真實性負責(zé),如有新聞稿件和圖片作品的內(nèi)容、版權(quán)以及其它問題的,請聯(lián)系我們。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯
x
*文字標(biāo)題:
*糾錯內(nèi)容:
聯(lián)系郵箱:
*驗 證 碼:

粵公網(wǎng)安備 44030502002758號