應用c進行嵌入式Linux的研究
1.引言
嵌入式Linux是一種開放源碼的真正32位的操作系統,并且可以進行裁減和優化,性能穩定,并且支持多任務和軟實時,所以深受開發者的信賴。它支持從IntelX86到MotorolaPowerPC,ARM,CompaqAlpha等多種硬件平臺,并且提供了豐富的軟件資源,具有強大的網絡支持功能,支持GUI開發,并且嵌入式Linux的開發技術資源豐富。如何管理各個應用在系統中無沖突安全地工作?如何把開發的系統快速的轉化為可發布的產品?如何優化和管理嵌入式系統的開發過程,保證在有限的工期之內完成高質量的產品?使用平臺創建套件(PCS)來開發嵌入式Linux應用可以很好地解決這些問題。
2.平臺創建套件介紹
平臺創建套件(PlatformCreationSuit)是由Metrowerks公司開發的一套專門用于進行嵌入式Linux應用的一套系統,它提供的主要功能有:配置操作系統,開發自己的應用,自動編譯(Build),部署(Deploy),調試(Debug),檢查許可文件,集成新的軟件等等。
平臺創建套件包含三個主要的組成部分:
目標向導工具(TargetWizardTools),用來管理,配置,擴展,生成和部署傳統的開放源碼的Linux軟件元素,來全面的支持目標產品的需要。如圖一。目標向導工具提供了擴展基本的Linux環境的功能,它允許集成千萬種可下載的開放源代碼和二進制應用,GNU工具集,新的Linux內核,或者用來提高內核功能的改進的設備支持,安全,實時性能,服務質量(QOS)和網絡等部件。
CodeWarrior可視化開發環境,用來進行項目管理,創建和生成嵌入式Linux應用軟件。CodeWarrior可視化開發環境是一個非常優秀的可視化開發工具,包括編輯環境,調試環境和項目管理功能,快速開發工具,等等。因為CodeWarrior可視化開發環境已被眾多的嵌入式應用開發人員所熟悉,這里不再詳細介紹。
板極支持包工具(BoardSupportPackage),包括用來創建,部署和調試操作系統,驅動程序,和針對目標硬件平臺的應用所需要的所有元素,通常一個BSP中包括Linux內核,設備驅動程序,應用和服務,各種類庫,GNU工具集(編譯器,連接器,等等),部署向導等等。
圖一:平臺創建套件
這張圖是PCS中最常用的模塊:TargetWizard的界面。在TargetWizard中所有的部件都以樹型結構顯示,部件的圖標表明它的狀態,這樣整個系統中各個部件及其狀態都一目了然。開發者可以很方便的對部件進行裁減,只要通過簡單菜單操作來打開(Enable)和關閉(Disable)就可以對系統中的部件進行配置。PCS會自動管理各個部件之間的依賴和沖突關系,這就避免了開發者在研究部件依賴關系和解決部件沖突的時候花費大量的時間。開發者在打開一個部件的時候,如果它所依賴的部件并沒有打開,那么在狀態窗口中會顯示出這個部件的依賴信息,開發者可以根據這些信息逐一地解決。當有沖突的時候,在狀態窗口中會顯示出具體的沖突信息,開發者可以順利地解決問題。在沒有沖突檢測的情況下,開發者可能意識不到沖突的存在,而直到運行的時候才發現沖突的存在,PCS在很大程度上避免了類似問題的發生。
TargetWizard同時與其它的功能模塊緊密相連,PackageEditor是一個可視化的環境來導入新的驅動程序、應用和庫文件,PCS同時也提供了手動方式來完成這些功能的方法;LinuxKernelImportTool可以用來導入新的Kernel;GNUToolchainImportTool可以用來導入新的toolchain;DebianBinaryImportTool允許開發者下載并導入多種公開發布的DebianGNU/Linux二進制應用程序;ExportBSPtool可以用來導出BSP,是生成BSP的工具;SkeletonDeploymentWizard是可以設置一些通用屬性的部署工具;GDB(GNUDebugger)和DDD(DataDisplayDebugger)是目標鏡像文件已經部署到目標板上的調試工具。
3.基于平臺創建套件的嵌入式Linux應用的開發過程
進行嵌入式Linux的開發大致都采用以下的開發過程:
1.基于功能需求選擇一個目標板(MCG,Force,PC104,PPC,等等)或者根據需求選擇一個處理器(購買一個評估開發板)和外圍芯片,定制目標板。
2.定制和配置操作系統。
3.開發定制的應用。
4.重新配置軟件,進行部署。
5.維護軟件。
使用平臺創建套件(PCS)可以加速整個嵌入式系統的開發過程。下面介紹使用平臺創建套件(PCS)進行嵌入式系統開發可以采用的詳細的開發過程。
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論