基于Docker和OTA技術(shù)的Toriozn系統(tǒng)簡(jiǎn)介

By Toradex胡珊逢

Torizon?是?Toradex?面向行業(yè)應(yīng)用推出的一款基于?Linux?的全新的開源操作系統(tǒng)。其旨在簡(jiǎn)化嵌入式系統(tǒng)開發(fā)的難度搜囱,同時(shí)引入現(xiàn)代軟件開發(fā)泡嘴、維護(hù)理念甫恩,提供更加可靠且易于使用的互聯(lián)、在線功能酌予。Torizon?為嵌入式設(shè)備實(shí)現(xiàn)了一套嶄新的開發(fā)和使用方法磺箕。本文接下來將介紹?Torizon?的特色功能,以及相比于傳統(tǒng)的?Linux?系統(tǒng)在使用上的差異抛虫。


Torizon?由?TorizonCore OS和?Torizon Platform兩大部分組成松靡。?TorizonCore OS?是安裝在?Toradex?計(jì)算機(jī)模塊上的操作系統(tǒng)。?Torizon Platform?是?Toradex?維護(hù)的在線平臺(tái)莱褒,其能夠于?TorizonCore OS?建立網(wǎng)絡(luò)連接击困,為運(yùn)行 ?TorizonCore OS?的計(jì)算機(jī)模塊提供諸多在線功能涎劈,例如?OTA?更新广凸、集群設(shè)備管理、遠(yuǎn)程監(jiān)控等蛛枚。


TorizonCore OS?底層采用了?Linux谅海,支持常用的?Linux?命令工具。該系統(tǒng)一個(gè)顯著特點(diǎn)是支持容器?docker蹦浦。如下圖所示扭吁,TorizonCore?包含了?Linux?內(nèi)核、容器運(yùn)行環(huán)境盲镶、以及?OTA?等其他服務(wù)侥袜。用戶的應(yīng)用運(yùn)行在容器之中,而非直接訪問?Linux?文件系統(tǒng)溉贿。多個(gè)容器可以獨(dú)立運(yùn)行枫吧。


容器是一種標(biāo)準(zhǔn)化的軟件單元。一個(gè)容器集合了用戶應(yīng)用本身宇色,以及該應(yīng)用運(yùn)行所依賴的軟件如第三方庫(kù)文件九杂,配置文件和數(shù)據(jù)文件等。容器中的軟件獨(dú)立于操作系統(tǒng)宣蠕,可以視為操作系統(tǒng)的虛擬化例隆。因此容器可以非常容易地遷移到其他硬件平臺(tái)上。


對(duì)?Docker?容器的支持抢蚀,使得用戶可以利用?Docker?Hub?上豐富的現(xiàn)成容器镀层,例如?Qt、Debian皿曲、Ubuntu唱逢、.Net?羡微、Python?等。從而不再需要進(jìn)行復(fù)雜的交叉編譯惶我。同時(shí)容器技術(shù)具有非常高效的版本管理功能妈倔,用戶應(yīng)用的升級(jí)和回滾都可以從中受益。例如在傳統(tǒng)Linux BSP?上從Qt 5.12?升級(jí)到Qt5.15绸贡,用戶需要重新編譯Qt?源碼或者使用Yocto?Project?重構(gòu)整個(gè)?BSP盯蝴。而在TorizonCore OS?上下載一個(gè)Qt5.15?的容器即可。也無需擔(dān)心操作系統(tǒng)其他軟件的版本是否兼容听怕。?


由于采用了容器的方式運(yùn)行用戶軟件捧挺,TorizonCore OS?本身一個(gè)非常精簡(jiǎn)的最小功能系統(tǒng)。用戶不在其上面直接安裝軟件或者部署編譯好的應(yīng)用尿瞭。除了系統(tǒng)配置目錄如/etc?闽烙,TorizonCore OS?的大部分文件系統(tǒng)都不允許用戶直接修改,如/usr?声搁、/lib ?等目錄下的文件黑竞。

用戶需要?jiǎng)?chuàng)建一個(gè)容器,在容器安裝所需的軟件以及編譯好的應(yīng)用程序疏旨。然后啟動(dòng)容器很魂,由容器中的應(yīng)用程序?qū)崿F(xiàn)相關(guān)業(yè)務(wù)功能。?TorizonCore OS?的文件系統(tǒng)由?OSTree?管理檐涝。這是一種類似?git?工作模式的文件管理系統(tǒng)遏匆,由其實(shí)現(xiàn)對(duì)每個(gè)系統(tǒng)文件的添加、刪除谁榜、恢復(fù)等功能幅聘。同時(shí)?OSTree?也是實(shí)現(xiàn)?OTA?更新的基礎(chǔ)。


傳統(tǒng)的嵌入式設(shè)備在第一批設(shè)備出廠后窃植,通常軟件和硬件都不再會(huì)發(fā)生變化帝蒿。而對(duì)于現(xiàn)代軟件開發(fā)來說,借助CI(持續(xù)集成)撕瞧、CD(持續(xù)開發(fā))等模式陵叽,即使在設(shè)備交付后,仍能夠提供軟件更新丛版,修復(fù)未知的問題或者增加新功能巩掺,從而提升用戶使用體驗(yàn)。位于云端的?Torizon Platform?則為TorizonCore OS?提供OTA?更新页畦、集群設(shè)備管理和遠(yuǎn)程監(jiān)控功能胖替,更多實(shí)用的功能也會(huì)即將上線。


OTA?更新允許嵌入式設(shè)備遠(yuǎn)程更新其軟件,無需直接接觸設(shè)備就通過更新軟件修復(fù)問題独令、部署新業(yè)務(wù)或者打補(bǔ)丁端朵。具有?OTA?功能的設(shè)備通常對(duì)該功能具有較高的要求。更新出錯(cuò)燃箭、網(wǎng)絡(luò)中斷或者更新期間意外斷電都可能導(dǎo)致設(shè)備無法正常工作冲呢。所以?OTA?需要能夠在更新出錯(cuò)時(shí)能夠自動(dòng)回滾到最后一個(gè)可正常運(yùn)行的軟件狀態(tài)。Torizon OTA?采用高可靠的?Aktualizr?客戶端招狸,默認(rèn)已經(jīng)集成在TorizonCore OS?敬拓。憑借OSTree?實(shí)現(xiàn)了軟件版本回滾功能。相對(duì)于A/B?分區(qū)整體更新方式裙戏,?Torizon OTA?采用的是差分更新乘凸,即只更新發(fā)生更改的文件。有效得提高了更新速度累榜,并減少數(shù)據(jù)下載量营勤。這對(duì)使用4G/5G?上網(wǎng)的設(shè)備顯得尤為重要。


用戶可以將自己的?BSP?上傳到?Torizon Platform?對(duì)特定的設(shè)備進(jìn)行更新壹罚,也可以使用?Toradex?發(fā)布的?BSP?令設(shè)備保持最新的軟件狀態(tài)葛作。同時(shí)也單獨(dú)可以對(duì)設(shè)備上的容器進(jìn)行更新,而非整個(gè)?BSP渔嚷。


Torizon Platform?的集群設(shè)備管理能夠更加高效地對(duì)大量設(shè)備進(jìn)行維護(hù)进鸠。實(shí)現(xiàn)批量設(shè)備的重啟、安裝特定的更新等形病。


遠(yuǎn)程監(jiān)控能夠遠(yuǎn)程查看設(shè)備的運(yùn)行狀態(tài),例如?CPU負(fù)荷霞幅、內(nèi)存占用漠吻、網(wǎng)絡(luò)使用、正在運(yùn)行進(jìn)程和重要的異常日志等司恳。這些信息可以被發(fā)送到?Torizon Platform途乃,給用戶提供可視化監(jiān)控?cái)?shù)據(jù)。遠(yuǎn)程監(jiān)控基于?Fluent Bit?實(shí)現(xiàn)扔傅。這是一個(gè)開源的日志處理和轉(zhuǎn)發(fā)器耍共。用戶可以使用豐富的插件來采集更多的數(shù)據(jù),包括溫度猎塞、內(nèi)核日志等试读。除了監(jiān)控設(shè)備運(yùn)行狀態(tài)外,這些數(shù)據(jù)也有助于修復(fù)現(xiàn)場(chǎng)遇到的問題荠耽。


遠(yuǎn)程訪問是即將上線的另一個(gè)功能钩骇。這可以令您接管設(shè)備,簡(jiǎn)化客戶支持或者問題排查。


對(duì)于開發(fā)人員倘屹,Toradex?提供相應(yīng)的插件支持使用?Visual Studio/Visual Studio Code?開發(fā)?Torizon银亲。用戶可以自由選擇?Windows、Linux?或者?Mac?作為開發(fā)主機(jī)纽匙。Torizon?擴(kuò)展插件提供對(duì)?Visual Studio Code?完善的支持务蝠。擴(kuò)展插件可以便捷地管理容器和在設(shè)備上在線調(diào)試,使您可以通過很少的幾次點(diǎn)擊就完成從Visual Studio Code?完成應(yīng)用部署烛缔。甚至直接將開發(fā)好的容器上傳到Torizon Platform?進(jìn)行遠(yuǎn)程部署请梢。


Visual Studio/Visual Studio Code?中我們也提供包括?C/C++、Python力穗、.NET Core?甚至是Qt?開發(fā)的工程模板毅弧。?令用戶在嵌入式設(shè)備上方便地使用主流開發(fā)語言。


上面是對(duì)Torizon?系統(tǒng)從設(shè)備端TorizonCore?OS当窗,到云端的Torizon?Platform?以及開發(fā)工具的簡(jiǎn)要介紹够坐。如果您像更全面而深入的了解?Torizon?,請(qǐng)閱讀這里崖面。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末元咙,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子巫员,更是在濱河造成了極大的恐慌庶香,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件简识,死亡現(xiàn)場(chǎng)離奇詭異赶掖,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)七扰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門奢赂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人颈走,你說我怎么就攤上這事膳灶。” “怎么了立由?”我有些...
    開封第一講書人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵轧钓,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我锐膜,道長(zhǎng)毕箍,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任枣耀,我火速辦了婚禮霉晕,結(jié)果婚禮上庭再,老公的妹妹穿的比我還像新娘。我一直安慰自己牺堰,他們只是感情好拄轻,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著伟葫,像睡著了一般恨搓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上筏养,一...
    開封第一講書人閱讀 51,462評(píng)論 1 302
  • 那天斧抱,我揣著相機(jī)與錄音,去河邊找鬼渐溶。 笑死辉浦,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的茎辐。 我是一名探鬼主播宪郊,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼拖陆!你這毒婦竟也來了疗杉?” 一聲冷哼從身側(cè)響起栗涂,我...
    開封第一講書人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤瞧掺,失蹤者是張志新(化名)和其女友劉穎案训,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體速警,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叹誉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了坏瞄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片桂对。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖鸠匀,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情逾柿,我是刑警寧澤缀棍,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站机错,受9級(jí)特大地震影響爬范,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜弱匪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一青瀑、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦斥难、人聲如沸枝嘶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽群扶。三九已至,卻和暖如春镀裤,著一層夾襖步出監(jiān)牢的瞬間竞阐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工暑劝, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留骆莹,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓担猛,卻偏偏與公主長(zhǎng)得像幕垦,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子毁习,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容