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