嵌入式系統(tǒng)的遠(yuǎn)程更新該如何進行?
發(fā)布時間:2017-06-21 責(zé)任編輯:susan
【導(dǎo)讀】嵌入式系統(tǒng)在各個領(lǐng)域有著廣泛的應(yīng)用,嵌入式系統(tǒng)的維護與升級也變得日益重要。由于新技術(shù)的不斷涌現(xiàn)和對系統(tǒng)功能、性能等要求的不斷提高,開發(fā)者必須能夠針對系統(tǒng)進行升級和維護,以延長系統(tǒng)的使用周期,改善系統(tǒng)性能,增強系統(tǒng)適應(yīng)性。
嵌入式系統(tǒng)的遠(yuǎn)程更新該如何進行?
傳統(tǒng)的嵌入式升級方式通常由維護人員到達設(shè)備現(xiàn)場進行重新燒寫系統(tǒng)或者更換Flash存儲部件,當(dāng)設(shè)備數(shù)量龐大并且分布范圍廣泛時,這種升級維護方式的工作量將非常大,而且耗費的時間長、成本高。隨著嵌入式技術(shù)的迅速發(fā)展,嵌入式系統(tǒng)的遠(yuǎn)程升級技術(shù)得到了快速發(fā)展。參考文獻提出了一種基于GPRS的嵌入式系統(tǒng)軟件的遠(yuǎn)程在線升級,通過GPRS網(wǎng)絡(luò)實現(xiàn)對ARM嵌入式終端的系統(tǒng)軟件進行在線升級。這種方法的不足在于無法實現(xiàn)系統(tǒng)本身的遠(yuǎn)程升級。參考文獻實現(xiàn)了一種在Bootloader中實現(xiàn)嵌入式系統(tǒng)自動升級的方法,這種方法是將映像文件存儲在CF卡中,系統(tǒng)重啟時Bootloader將檢測CF卡中的映像文件,讀取映像文件并燒寫到目標(biāo)板的Flash中,實現(xiàn)升級。如果終端的數(shù)量較大且分布廣泛,采用這種方法會增加很大的工作量。
本文針對嵌入式Linux操作系統(tǒng)提出了一種新的更新機制,并且基于ARM9微處理器和NAND Flash存儲器,對uboot和Linux內(nèi)核進行修改,實現(xiàn)了對嵌入式Linux系統(tǒng)的遠(yuǎn)程自動更新??朔藗鹘y(tǒng)方法工作量大的缺點,具有操作簡單、更新速度快的特點。
1.基本原理
1.1 總體結(jié)構(gòu)
支持遠(yuǎn)程自動更新的嵌入式Linux系統(tǒng)機構(gòu),它可以分為嵌入式終端和遠(yuǎn)程管理系統(tǒng)兩部分。系統(tǒng)的總體結(jié)構(gòu)如圖1所示,嵌入式終端采用基于ARM9架構(gòu)的AT91RM9200微處理器,采用擴展的32MB SDRAM,由2片16位數(shù)據(jù)寬度的SDRAM芯片HY57V281620并連而成,采用64MB NANDFla sh存儲芯片K9F1208,運行嵌入式Linux系統(tǒng)。遠(yuǎn)程管理系統(tǒng)選用PC機。嵌入式終端通過以太網(wǎng)連接到遠(yuǎn)程管理系統(tǒng),管理人員可以通過telne t即可對各個嵌入式終端進行監(jiān)控、管理和遠(yuǎn)程更新。
1.2 系統(tǒng)更新流程
本設(shè)計對uboot和Linux內(nèi)核進行改造,使其支持YAFFS2文件系統(tǒng),對系統(tǒng)添加ftp、telnet等應(yīng)用服務(wù)。系統(tǒng)更新流程如圖2所示。系統(tǒng)正常運行時管理人員可以通過telnet遠(yuǎn)程登錄到嵌入式終端進行監(jiān)控和管理。當(dāng)需要對系統(tǒng)進行更新時,通過遠(yuǎn)程管理系統(tǒng)的ftp客戶端登錄到嵌入式終端,將需要更新的內(nèi)核映像和文件系統(tǒng)上傳到NAND Flash。上傳完畢后對原有的內(nèi)核映像和文件系統(tǒng)進行備份并重啟系統(tǒng)。系統(tǒng)重啟后uboot將NAND Flash中更新后的內(nèi)核映像和文件系統(tǒng)搬運到SDRAM中,然后跳轉(zhuǎn)到SDRAM中啟動Linux系統(tǒng),掛載YAFFS2文件系統(tǒng),啟動各種應(yīng)用服務(wù)。
常見的嵌入式操作系統(tǒng)有哪些?
DOS
微軟一開始選用了派特森的Q-DOS “QUICK AND DISK OPERATING SYSTEM ”為基礎(chǔ)然后再擴充功能而成 MS-DOS,主要是采用由IBM 提供的使用8088 微處理器的計算機作開發(fā)平臺,它是以16 字節(jié)單人單工操作系統(tǒng),特別適合一些功能簡單裝置使用。
Windows CE
雖然微軟 Windows 系統(tǒng)已經(jīng)稱霸了 PC Desktop 環(huán)境。但是對于嵌入式系統(tǒng)這塊大餅,微軟也是垂涎已久,桌上型的 Windows 桌業(yè)系統(tǒng)對于嵌入式系統(tǒng)來說自然是太過于肥大的產(chǎn)物,于是微軟推出精簡版的 Windows CE 作為進攻嵌入式系統(tǒng)的主力。目前主要應(yīng)用于 PDA 上頭,但是跟微軟一系列 Windows 系統(tǒng)一般,Windows CE也承襲了原有的缺點:耗系統(tǒng)資源、不穩(wěn)定、效率不佳等等。毛病實在太多,后來將整個架構(gòu)重新改寫后推出 Windows CE 3.0 版,或稱為 Pocket PC。改版之后的確改進了不少缺點。
Windows CE 可應(yīng)用于 PDA 、WebPAD、Thin Client等等。是采用 Windows CE 為操作系統(tǒng)的 SIMPad (西門子公司所有)。
Palm
由 Palm CompuTIng 公司的嵌入式操作系統(tǒng),目前最大的應(yīng)用在 PDA ,是市場占有率最高的 PDA 操作系統(tǒng),Palm 操作系統(tǒng)架構(gòu)非常簡潔,因為少去了很多功能,如內(nèi)存管理、多任務(wù)等等,使得 Palm 可以非常不耗系統(tǒng)資源,硬件需求低,連帶的整體耗電量便可壓縮到非常低,因此采用 Palm 操作系統(tǒng)的 PDA 都有待機時間長的優(yōu)點。
EPOC
由英國手持裝置大廠 Psion 所開發(fā),常用于 PDA 與手機結(jié)合的場合。最有名的例子 Nokia 9110 系列手機,它就是采用 EPOC 系統(tǒng)。
著名的嵌入式實時系統(tǒng)
實時系統(tǒng)是嵌入式系統(tǒng)里頭非常重要的一環(huán),很多人都誤以為實時系統(tǒng)執(zhí)行速度非??斓南到y(tǒng),事實上不然,所謂實時代表的意義是『實時反應(yīng)』,一般多人多任務(wù)操作系統(tǒng)如:Windows 、 UNIX ,在上面執(zhí)行的軟件都一起分享 CPU ,因為 CPU 速度快,所以我們感覺好象可以同時執(zhí)行多支軟件,其實在系統(tǒng)內(nèi)部的同一時間內(nèi)都只有一個程序在執(zhí)行,每個軟件都必須排隊,而且規(guī)定只能用一小段時間后就要換下一位,但是因為 CPU 速度夠快,很快又可以被執(zhí)行到,所以人們感覺并不會很明顯軟件是一段一段在執(zhí)行。這是一般所謂的非實時性的操作系統(tǒng)運作模式,而實時操作系統(tǒng)具有立即反應(yīng)而且不能讓出資源的特性,例如汽車的 ABS 煞車系統(tǒng),如果不采用能夠立即反應(yīng)的實時系統(tǒng),后果可就不堪設(shè)想。而這類的應(yīng)用多半多屬體積小、功能簡單的地方,所以也算是嵌入式系統(tǒng)。 QNX 的 QNX OS 、WindRiver 的 VxWorks、Microware 的 OS9、pSOS 等等,都是有名的嵌入式實時系統(tǒng)公司。
Linux
Linux 不是都用來做服務(wù)器嗎?不然就是 Cluster,怎么會跟嵌入式系統(tǒng)扯上關(guān)系?不要懷疑,Linux 除了對伺服工作應(yīng)付自如外,嵌入式系統(tǒng)也難不倒 Linux。
那么究竟 Linux 有怎樣獨特的能耐,可以想變大就變大想縮小就縮小?又用 Linux 來發(fā)展嵌入式系統(tǒng)有什么優(yōu)點?請看底下介紹。
開放原始碼、模塊化設(shè)計
Linux 采用 GPL 授權(quán),除了把原始碼公開以外,任何人都可以自由使用、修改、散布,而 Linux 核心本身采模塊化設(shè)計,讓人很容易增減功能,例如我的平臺并不需要藍芽的功能,我只要不把這項功能加入,有需要就加入,不需要就刪除,由于這樣的高的彈性,我們可以調(diào)校出最適合我們硬件平臺的核心出來。
相較于 Linux ,Windows 是走封閉原始碼路線,所以我們完全無法得知或修改它的核心部份。另外因為是采用 GPL 授權(quán)自然就沒有什么權(quán)利金或保密協(xié)議的約束。
穩(wěn)定性夠
Linux 不屬于任何一家公司,但是它的開發(fā)人員卻是全世界最多的,每天在全球都有無數(shù)的人參與 Linux Kernel 的改進、除錯、測試,這樣嚴(yán)苛的條件造就了穩(wěn)定度高的 Linux 。
就因為如此,Linux 雖不是商業(yè)的產(chǎn)物但是品質(zhì)卻不遜于商業(yè)產(chǎn)品。
網(wǎng)絡(luò)功能強大
Linux 的架構(gòu)是參造 UNIX 系統(tǒng)而來,因此 Linux 也承襲了 UNIX 強大的網(wǎng)絡(luò)功能。在這個每樣事情都講求網(wǎng)絡(luò)的時代下,只能說是 Linux 大放異彩 的年代。未來可能家里的電冰箱、冷氣、電視機都會連上網(wǎng)絡(luò),如何增加這些家電的網(wǎng)絡(luò)功能,Linux 可以替他們辦到。
跨平臺
Linux 一開始是基于Intel 386 機器而設(shè)計,但是隨著網(wǎng)絡(luò)的散布,各式各樣的需求涌現(xiàn),因此就有許多工程師致力于各式平臺的移植,造成了 Linux 可以在 x86、MIPS、ARM/StrongARM、PowerPC、Motorola 68k、Hitachi SH3/SH4、 Transmeta.。等等平臺上運作的盛況。這些平臺幾乎涵蓋了所有嵌入式系統(tǒng)所需的 CPU,因此選擇 Linux 就可以把更多的硬件平臺納入考量的范圍。
嵌入式環(huán)境不如 x86 PC 那樣單純,嵌入式環(huán)境所采用的 CPU 架構(gòu)之多,使用 Linux 作開發(fā),就等于有更多硬件的選擇,硬件成本是商業(yè)公司考量的一大重點,選擇多自然可以找到最合適的硬件,對于公司的競爭力是有極大的幫助。
應(yīng)用軟件眾多
自由軟件世界里有個很大的特色就是軟件超級多,而且?guī)缀醵际欠?GPL 標(biāo)準(zhǔn),換句話說,大家都可以自由取用,因為這些軟件多半是由工程師業(yè)余空暇時間所發(fā)展,而且不以營利為性質(zhì),所以并不能擔(dān)保這些軟件完全沒有 BUG ,但是仍舊有許多殺手級的軟件出現(xiàn),大家熟知的 KDE 與 GNOME 便是很好的證明,當(dāng)然與嵌入式系統(tǒng)較為相關(guān)如:gcc 編譯器、Kdevelop 整合式開發(fā)環(huán)境等等。
通常我們都會先在 PC 端造出仿真出嵌入式的環(huán)境,并直接在上頭開發(fā),因此用的工具也都與開發(fā)一般Desktop 軟件類似,良好的工具能夠增加開發(fā)的速度。
選擇多樣
如果公司有能力可以自己實作 Linux 嵌入式系統(tǒng),因為程序代碼全部都開放在那里,您可以隨心所欲的設(shè)計出自己想要的 Embedded Linux 系統(tǒng),但是有更多的公司的業(yè)務(wù)重點不在于此,這時候您也可以選擇購買商業(yè)版的 Embedded Linux 系統(tǒng),像是有名的 Redhat 公司、Lineo、MontaVista.。等等,這些都是商業(yè)的 Linux 公司,購買他們的產(chǎn)品就可以得到完整的服務(wù)。因此商業(yè)或非商業(yè)全都在于您的需求。
自行開發(fā)系統(tǒng)
當(dāng)然您也可以自行開發(fā)系統(tǒng),嚴(yán)格控制硬件,但是相對的必須投注更大的成本在于研發(fā)系統(tǒng)上,原則上如果目標(biāo)簡單明確只是一些基本的 I/O 控制,例如:跑馬燈。便適合自己開發(fā),但是如果系統(tǒng)過于復(fù)雜則必須審慎評估自行研發(fā)的難度與時程的控管。
特別推薦
- 【“源”察秋毫系列】下一代半導(dǎo)體氧化鎵器件光電探測器應(yīng)用與測試
- 集成開關(guān)控制器如何提升系統(tǒng)能效?
- 工業(yè)峰會2024激發(fā)創(chuàng)新,推動智能能源技術(shù)發(fā)展
- Melexis推出超低功耗車用非接觸式微功率開關(guān)芯片
- Bourns 發(fā)布新款薄型線性濾波器系列 SRF0502 系列
- 三菱電機開始提供用于xEV的SiC-MOSFET裸片樣品
- ROHM開發(fā)出支持更高電壓xEV系統(tǒng)的SiC肖特基勢壘二極管
技術(shù)文章更多>>
- AMTS & AHTE South China 2024圓滿落幕 持續(xù)發(fā)力探求創(chuàng)新,攜手并進再踏新征程!
- 提高下一代DRAM器件的寄生電容性能
- 意法半導(dǎo)體Web工具配合智能傳感器加快AIoT項目落地
- 韌性與創(chuàng)新并存,2024 IIC創(chuàng)實技術(shù)再獲獎分享供應(yīng)鏈挑戰(zhàn)下的自我成長
- 上海國際嵌入式展暨大會(embedded world China )與多家國際知名項目達成合作
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
傳感器
傳感器模塊
船型開關(guān)
串聯(lián)電阻公式
創(chuàng)智成
磁傳感器
磁環(huán)電感
磁敏三極管
磁性存儲器
磁性元件
磁珠電感
存儲器
大功率管
單向可控硅
刀開關(guān)
等離子顯示屏
低頻電感
低通濾波器
低音炮電路
滌綸電容
點膠設(shè)備
電池
電池管理系統(tǒng)
電磁蜂鳴器
電磁兼容
電磁爐危害
電動車
電動工具
電動汽車
電感