嵌入式軟件的PC化趨勢(shì)
摘要:文章敘述源自PC的虛擬化軟件和開(kāi)源軟件正在逐漸滲透到嵌入式系統(tǒng)各個(gè)方面。
關(guān)鍵詞:嵌入式軟件;虛擬化;移動(dòng)互聯(lián)網(wǎng);標(biāo)準(zhǔn)化;Linux
隨著移動(dòng)互聯(lián)網(wǎng)應(yīng)用漸漸走熱,Inel 嵌入式X86芯片重返市場(chǎng),傳統(tǒng)的嵌入式系統(tǒng)平臺(tái)、軟件開(kāi)發(fā)方式和操作系統(tǒng)都在發(fā)生著變化。一個(gè)方面,互聯(lián)網(wǎng)需要更多已經(jīng)在PC使用的應(yīng)用軟件,能夠在各種移動(dòng)終端上使用;另一個(gè)方面,計(jì)算密集和數(shù)據(jù)密集的趨勢(shì)要求嵌入式系統(tǒng)具有越來(lái)越處理能力,PC化則是一個(gè)解決這個(gè)問(wèn)題的途徑之一。
嵌入式系統(tǒng)和PC的融合
嵌入式系統(tǒng)和PC一直是有著難解之緣,以ISA總線標(biāo)準(zhǔn)發(fā)展起來(lái)的PC104,是嵌入式PC到今天依然大量使用的工業(yè)標(biāo)準(zhǔn)。DOS/Borland C是深受喜愛(ài)的嵌入式PC操作系統(tǒng)和開(kāi)發(fā)工具之一。90年代以后,在摩爾定律推動(dòng)下,Intel和微軟聯(lián)手推動(dòng)了一輪又一輪的PC升級(jí)換代之路,也使得嵌入式系統(tǒng)和PC越走越遠(yuǎn),以單片機(jī)(MCU)為代表嵌入式處理器技術(shù)成熟, RTOS(嵌入式操作系統(tǒng),如uc/os-II,Vxwork) 和IDE(Keil、IAREW)的嵌入式軟件開(kāi)發(fā)模式已經(jīng)形成,獲得了廣泛的認(rèn)可和成功。
2000年以后,嵌入式Linux和ARM SoC嵌入式平臺(tái)給嵌入式系統(tǒng)帶來(lái)革命性的變革,比較起傳統(tǒng)的MCU平臺(tái),一個(gè)典型ARM2410單板、嵌入式Linux2.4、Qt圖形界面,它包含設(shè)備驅(qū)動(dòng)、網(wǎng)絡(luò)、文件、圖形和豐富應(yīng)用,是一個(gè)完整OS和交叉開(kāi)發(fā)環(huán)境,非常接近人們熟悉的PC環(huán)境,可以適合多數(shù)消費(fèi)電子、通訊、工業(yè)控制嵌入式系統(tǒng)應(yīng)用要求。但是面對(duì)高計(jì)算、互聯(lián)網(wǎng)和多媒體應(yīng)用的移動(dòng)互聯(lián)網(wǎng)設(shè)備、數(shù)字多媒體中心、網(wǎng)絡(luò)存儲(chǔ)和超便攜上網(wǎng)筆記本等應(yīng)用時(shí),基于交叉編譯的ARM/Linux/WinCE系統(tǒng),比較起X86/Linux/Windows XP系統(tǒng),顯得開(kāi)發(fā)時(shí)間和難度要大得多了,在設(shè)備端重新移植成熟應(yīng)用和測(cè)試過(guò)程耗費(fèi)了大量的時(shí)間和人力;在服務(wù)器端,由于待測(cè)試的各種終端的種類(lèi)、OS、瀏覽器不一,所以許多網(wǎng)絡(luò)應(yīng)用的廠家只能支持有限數(shù)量的終端和瀏覽器版本,所以,PC Windows/IE就成為多數(shù)網(wǎng)絡(luò)應(yīng)用支持的對(duì)象。
ARM、Adobe和Canonical合作將把Ubuntu 和Flash Player 10移植到ARM上,這無(wú)疑是嵌入式軟件和PC 融合的重要信號(hào)。Flash Player 是目前網(wǎng)絡(luò)上最為流行的瀏覽和播放軟件,也是運(yùn)行在X86/Windows/Linux 平臺(tái),它對(duì)于ARM 體系結(jié)構(gòu)的支持將大大提高ARM 芯片在互聯(lián)網(wǎng)終端的地位,Ubuntu是國(guó)際上成功的Linux開(kāi)源桌面操作系統(tǒng)。最近發(fā)表的8.10版本,加強(qiáng)了對(duì)3G移動(dòng)網(wǎng)絡(luò)的支持,計(jì)劃支持超低功耗的ARMV7(CortexA8/A9)處理器,將擴(kuò)展Ubuntu 操作系統(tǒng)在移動(dòng)互聯(lián)網(wǎng)終端上的地位,同時(shí)也為嵌入式系統(tǒng)開(kāi)發(fā)提供一種標(biāo)準(zhǔn)的PC環(huán)境, 其實(shí)Ubuntu 因?yàn)槌叽缧∏桑乔度胧絏86/PC廠家主要支持的嵌入式Linux平臺(tái)之一。無(wú)論是Intel嵌入式X86,還是ARM的SoC技術(shù),都在引領(lǐng)著行業(yè)向著滿足高性能計(jì)算要求的軟硬件PC化方向發(fā)展。
嵌入式虛擬化軟件
PC化的嵌入式軟件具有通用、開(kāi)放的特點(diǎn),但是要完全滿足安全性、實(shí)時(shí)性和可繼承性的需求還有距離,虛擬化軟件正好是一個(gè)補(bǔ)充。虛擬化在服務(wù)器已經(jīng)取得了成功,正在進(jìn)軍桌面和嵌入式系統(tǒng),著名的vmware最近宣布將推出智能手機(jī)的虛擬化軟件版本。虛擬化可以用在多核、單核高性能處理器上運(yùn)行,一是解決安全性問(wèn)題;比如構(gòu)建一個(gè)安全操作系統(tǒng)和開(kāi)放操作系統(tǒng)環(huán)境手機(jī)保證移動(dòng)網(wǎng)上銀行安全支付問(wèn)題。二是解決軟件再用問(wèn)題;比如大量已經(jīng)驗(yàn)證了通訊代碼和私有的RTOS,通過(guò)虛擬化和通用的操作系統(tǒng)(GOS)結(jié)合形成全新的高密度計(jì)算平臺(tái)。三是解決實(shí)時(shí)性問(wèn)題;專(zhuān)用的實(shí)時(shí)RTOS和GOS-Linux,Windows并存。四是解決多核編程問(wèn)題;介于目前多核軟件普遍滯后硬件芯片的情況,虛擬化可以幫助用戶(hù)在不改變編程模式和設(shè)計(jì)思想的前提下,充分發(fā)揮多核芯片的性能。即在不同的核上運(yùn)行不同的操作系統(tǒng),運(yùn)行RTOS的完成通訊設(shè)備的網(wǎng)絡(luò)數(shù)據(jù)流的處理和分析;運(yùn)行Linux的核負(fù)責(zé)系統(tǒng)數(shù)據(jù)庫(kù)管理和人機(jī)界面。虛擬化技術(shù)如果使用得當(dāng),它可以在嵌入式系統(tǒng)和PC化軟件之間架起一座橋梁。嵌入式系統(tǒng)對(duì)于虛擬化技術(shù)有其特出要求,比如非X86體系結(jié)構(gòu)、尺寸和實(shí)時(shí)性等,目前開(kāi)源項(xiàng)目Xen(www.xen.org/)在這個(gè)方面還有差距,商業(yè)的產(chǎn)品有VirtualLogix 的VLX,它提供支持通訊平臺(tái),移動(dòng)終端和通用嵌入式系統(tǒng)的各個(gè)產(chǎn)品線方案,產(chǎn)品線豐富和成熟;OK-Labs是基于開(kāi)源OKL4微內(nèi)核虛擬化軟件,重點(diǎn)支持手機(jī)的虛擬化方案;風(fēng)河公司近日也宣布將推出作為整個(gè)多核方案一個(gè)部分的虛擬化軟件。
嵌入式軟件的PC化趨勢(shì),目前還是體現(xiàn)在高性能計(jì)算要求的場(chǎng)合,即使一個(gè)再?gòu)?fù)雜的洗衣機(jī)和電冰箱也不必需要一個(gè)800M主頻的ARM SoC,或者Intel Atom 處理器,單片機(jī)完全可以解決問(wèn)題了。嵌入式系統(tǒng)多樣性決定了各種芯片技術(shù)、通訊技術(shù)、軟件、設(shè)計(jì)思想都可以在嵌入式系統(tǒng)找到自己的位置。
參考文獻(xiàn):
[1] 何小慶. 我和中國(guó)單片機(jī)和嵌入式20年[j]單片機(jī)與嵌入式系統(tǒng)應(yīng)用 2008.1
[2] 何小慶.交叉編譯:ARM搏擊Intel的軟肋[j]電子產(chǎn)品世界,2008.11
[3]Tudor Brow.Partnership: Together we can do anything[M] ARM Connected Community Technical Symposium 2008.11 ARM中國(guó)公司
[4]Bernard Cole.Embedded is [still] as embedded does[j] embedded systems design 2008.11.12
[5]Michael Paczan.Electronics virtualization restored innovation and profit to electronic[j]embedded systems design 2008.11.34
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論