新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 嵌入式Linux面臨圖形化挑戰(zhàn)

嵌入式Linux面臨圖形化挑戰(zhàn)

——
作者:李蓉 丁大勇 時間:2007-02-28 來源:賽迪網 收藏

最近,計算機嵌入式產業(yè)研究顯示Linux系統(tǒng)是大多數(shù)嵌入式開發(fā)項目的首選操作系統(tǒng)。起初,Linux只是一種簡單的解決方案,為愛好者提供了一個免費且功能強大的開發(fā)平臺。但是現(xiàn)在它已逐步成為一個成熟、穩(wěn)定、功能強大且倍受關注的操作系統(tǒng)。
Linux操作系統(tǒng)涉獵的范圍從程序控制系統(tǒng)、個人數(shù)字助理(PDAs)及家用電器到桌面系統(tǒng)和高端網絡服務器,乃至于功能強大的計算集群和復合處理器系統(tǒng)。

Linux的種種優(yōu)勢使得它在整個計算機領域魅力十足,特別是在嵌入式系統(tǒng)方面尤為突出。比起一些所有權,Linux的價格、性能及靈活性等有利條件是顯而易見的。

在Linux被引入嵌入式開發(fā)之前,大多數(shù)嵌入式技術開發(fā)人員很少進行跨平臺的開發(fā)研究,因為他們所用的操作系統(tǒng)只能在目標硬件上運行。Linux逐漸在嵌入式領域擴大戰(zhàn)場的同時,跨平臺開發(fā)方案,即原本在一個平臺上開發(fā)的應用軟件也可以在其它平臺上進行開發(fā)和編譯,也已廣泛應用于嵌入式系統(tǒng)的開發(fā)實踐中。

然而,大多數(shù)新的嵌入式方案以Linux系統(tǒng)為開發(fā)平臺并不意味著Linux系統(tǒng)是惟一的選擇。西方有句俗語:效仿是表達恭維的最好方式。

目前,有多家所有權嵌入式系統(tǒng)的廠商也效仿Linux系統(tǒng)取消了其操作系統(tǒng)的使用費用。同樣,他們也模仿Linux系統(tǒng)源代碼的開放性,開始免費為消費者提供其操作系統(tǒng)的源代碼。Linux面臨著各方面的挑戰(zhàn)。

開發(fā)工具的圖形化挑戰(zhàn)

許多嵌入式軟件開發(fā)項目都很復雜,造成這種復雜性的主要原因如下:
◆ 應用軟件的復雜性可能源于所使用的運算法則,也可能源于設計方案(比如復雜的客戶應用程序或服務器應用程序),或者二者兼而有之。
◆ 用戶的應用程序與其它應用軟件乃至操作系統(tǒng)間的相互作用也可能會帶來問題,這需要用戶對系統(tǒng)進行長期不間斷地監(jiān)測。
◆ 系統(tǒng)和資源限制可能導致反復地重寫或優(yōu)化過程。
◆ 標準的系統(tǒng)庫和關聯(lián)程序設計技術也許無法應用于特殊的架構,用戶不得不選擇或開發(fā)其它替代方案。
◆ 在功能有限的情況下,很難對應用軟件進行遠程調試和維護。
雖然,以上這些問題對于在嵌入式應用軟件開發(fā)和操作系統(tǒng)等方面有足夠經驗的專業(yè)人員來說都很好解決,但沒人能保證身邊總有專家。因此,最好的解決辦法就是使用工具軟件,以便更容易對嵌入式軟件進行開發(fā)、監(jiān)控和調試。

眾所周知,圖形用戶界面(GUI)已經成為計算領域不可缺少的工具。它使電腦從一個專業(yè)化工具轉變成普通的辦公設備和家用電器。雖然操作系統(tǒng)可以提供應用軟件開發(fā)所需的基本功能,但是,一個簡單易用的圖形環(huán)境和與之相適應的工具軟件才是構成開發(fā)平臺的真正要素。

多年來,所有權操作系統(tǒng)和實時操作系統(tǒng)(RTOS)的廠商在所有權產品領域一直致力于提供應用軟件開發(fā)工具。

雖然這些為所有權操作系統(tǒng)量身定做的開發(fā)工具功能強大,但應用范圍卻局限于特定的操作系統(tǒng)。當前市場環(huán)境下,大多數(shù)嵌入式產品廠商為了開發(fā)新的嵌入式項目轉而采用Linux技術,因此迫切需要一種能支持Linux、功能強大且簡便易用的嵌入式軟件開發(fā)工具。

所有權廠商指出,目前市場上有很多不同的Linux套件,而且每個套件都有特定的市場或服務,市場似乎并不完整。然而,多種版本Linux的存在恰恰證明了Linux的發(fā)展?jié)摿Γ约八軡M足廣大用戶不同需求的能力。Linux特有的靈活性也需要一系列適用于各種Linux套件的圖形化開發(fā)工具。

嵌入式開發(fā)工具的目標

構成Linux系統(tǒng)的基本要素如下:

◆ Linux內核 內核是操作系統(tǒng)的核心,它能提供各種硬件所需的驅動程序、總線和協(xié)議支持等。
◆ 根文件系統(tǒng) 它是系統(tǒng)應用軟件、系統(tǒng)啟動程序、系統(tǒng)設置程序和用戶應用軟件的“儲藏室”。
◆ 工具鏈 它用來編輯內核、可加載內核模塊和應用軟件,并且可以由根文件系統(tǒng)中的程序和系統(tǒng)可訪問的其它文件系統(tǒng)來執(zhí)行。

所有的Linux系統(tǒng)都使用內核和核心工具鏈(GNU GCC),只是配置不同。所有Linux根文件系統(tǒng)都包含有開放系統(tǒng)社區(qū)提供的各種程序,只是不同版本的Linux根文件系統(tǒng)所選擇的軟件包及其配置的子集有所不同。

嵌入式Linux開發(fā)工具面臨的挑戰(zhàn)是如何適應不同版本的Linux內核、工具鏈和文件系統(tǒng)軟件包,以及如何對其進行定制,以便開發(fā)人員使用它們。

桌面和服務器應用軟件開發(fā)者可以依托性能強大且運行穩(wěn)定的硬件平臺提供一系列優(yōu)質服務,而嵌入式系統(tǒng)及其應用軟件的開發(fā)人員需要有更廣泛、更豐富的知識。他們不得不在開發(fā)過程中考慮以下幾點:

◆ 通過一個低級別的硬件端口,比如JTAG,對主板及新硬件或定制硬件進行初始化;
◆ 為新硬件或定制硬件選擇、安裝并配置引導裝載程序;
◆ 可能需要定制內核并開發(fā)驅動程序;
◆ 系統(tǒng)級調試需要附帶遠程訪問功能,以便及時準確地解決系統(tǒng)中出現(xiàn)的問題;
◆ 根文件系統(tǒng)的開發(fā),包括開發(fā)過程中使用的、存儲于內存或宿駐于網絡的文件系統(tǒng),以及其它在Flash或本地存儲器中建立并維護的文件系統(tǒng);
◆ 應用軟件的開發(fā);

◆ 使用遠程連接方式對應用軟件進行調試,以便于進行遠端激活和運行分析,這將簡化嵌入式系統(tǒng)中應用軟件更新的過程;

◆ 對新產品進行測試驗證確認,有助于用戶對任意組合的系統(tǒng)和應用軟件反復進行標準測試。完成這些令人頭痛的工作需要各種不同的技能。而圖形化工具可以將所需的各種操作模塊化,原本復雜至極的工作,現(xiàn)在也許只需要點擊幾下鼠標就可以完成。這對于開發(fā)人員來說,無疑是一種極大的解脫。

應用TimeSys公司的TimeStorm Linux開發(fā)套件(LDS),通過點擊選單上的相應選項就可以建立各種類型的文件系統(tǒng)。其它復雜的過程,比如,文件系統(tǒng)格式化和提供訪問端口等都無須開發(fā)人員手動完成。

Eclipse多功能架構

TimeStorm工具組件支持兩個目前應用最廣泛、功能最強大的Linux系統(tǒng)圖形環(huán)境,一個是X-Window系統(tǒng),它幾乎是所有Unix和Linux圖形開發(fā)的基礎;另一個是Eclipse結構,該結構擴展性很強,可以建立或分配各種以開發(fā)為導向的應用軟件,這些應用軟件可以相互共存并相互作用。

Eclipse是一個開源軟件開發(fā)項目,其主要任務是為開發(fā)高集成性工具提供一個健壯的、功能齊全的平臺。與操作系統(tǒng)廠商不同,它采用行業(yè)中普遍使用的開放系統(tǒng)架構來開發(fā)嵌入式Linux工具。

這種架構可支持所有廠商的產品,提供統(tǒng)一的圖形化描述及操作,并且所有的工具都可以在該架構中協(xié)調配合。用戶不必再由于開發(fā)工具的相互不兼容性而必須使用單一廠商提供的特定產品。

Eclipse提供了一個適用于各種應用軟件的基礎架構。這些應用軟件在Eclipse中被稱為“插件”,它們在架構中互動工作。這使得協(xié)同開發(fā)成為可能,工具軟件廠商可以根據(jù)不同需要確定不同的發(fā)展方向,不用擔心自己的插件無法與其它插件實現(xiàn)完美的集成。為了實現(xiàn)最大限度的兼容,Eclipse全部由Java語言編寫。

Eclipse已被多家知名的嵌入式工具廠商采用,比如,TimeSys、Wind River、RTI和MontaVista等。甚至有行家預測未來所有工具軟件的開發(fā)都將由Eclipse來完成。

TimeSys公司的TimeStorm IDE(Integrated Development Environment)就是一組Eclipse插件,它能為嵌入式應用軟件的開發(fā)、調試及測試提供一個功能強大的開發(fā)環(huán)境。TimeStorm IDE不需要任何特殊功能就可以與源代碼控制系統(tǒng)(SCCS)集成在一起,后者主要用于將各種應用軟件源代碼分類存檔。

不僅如此,Eclipse中的插件可以即時與TimeStorm IDE進行集成。這些插件都可以提供訪問各種版本控制系統(tǒng)的端口,比如,CVS、Perforce、Rational ClearCase和Subversion等。
小結

如今,用于嵌入式系統(tǒng)開發(fā)、配置和測試的軟件開發(fā)工具越來越多。Linux固有的強大功能和靈活性使它成為很多新的嵌入式方案的首選平臺。

然而,讓優(yōu)秀的產品迅速進入市場不僅要依靠一個自由的、功能強大的操作系統(tǒng),還要依靠性能強大的工具軟件。這些軟件能使嵌入式的開發(fā)、配置和測試簡單化,是提供解決各種復雜問題的百寶箱。

開源軟件提供的工具平臺,比如Eclipse 架構,極大地推動了此類軟件的開發(fā)和普及。TimeSys公司的TimeStorm IDE、TimeStorm LDS,以及TimeStorm LVS等基于Eclipse的軟件工具為嵌入式Linux的開發(fā)提供了眾多現(xiàn)成的解決方案。



評論


相關推薦

技術專區(qū)

關閉