<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 應用c進(jìn)行嵌入式Linux的研究

應用c進(jìn)行嵌入式Linux的研究

作者: 時(shí)間:2013-10-24 來(lái)源:網(wǎng)絡(luò ) 收藏

  ?評估硬件和軟件

  根據功能需求購買(mǎi)評估目標板或定制目標板,并準備開(kāi)始進(jìn)行自己的設計。

  ?安裝和BSP

  現在最新的版本是3.0,它可以運行在很多主流X86平臺上,其中包括RedHat9.0,RedHat8.0,SuSe8.2,SuSe8.1,Debian3.0。Metrowerks提供了很多種平臺的參考BSP(BoardSupportPackage,板極支持包),包括X86,MotorolaPowerPC,MIPS,ToshibaTx,ARM,ColdFire,HitachiSH等多個(gè)系統的BSP。

  ?為目標板創(chuàng )建一個(gè)項目

  基于BSP創(chuàng )建一個(gè)新的項目。有一套非常優(yōu)秀的BSP管理系統,幫助開(kāi)發(fā)者在同一個(gè)開(kāi)發(fā)環(huán)境里同時(shí)存在互相不干擾的不同的目標板項目,每個(gè)不同的BSP中包含不同的內核和工具鏈,為項目提供交叉編譯環(huán)境。PCS提供了一套界面非常友好的項目創(chuàng )建項目向導,幫助開(kāi)發(fā)者選定BSP和進(jìn)行項目設置。選擇已經(jīng)存在的配置狀態(tài)文件,或者使用默認的配置狀態(tài)文件。不同的配置狀態(tài)文件可以保證開(kāi)發(fā)者在同一個(gè)項目中有不同的配置,這樣用戶(hù)可以很方便的不同的配置中切換,而不用重新進(jìn)行配置。下一步是進(jìn)行內核裁減配置。大多數BSP已經(jīng)提供了一個(gè)默認的內核配置,可是根據功能需求的不同開(kāi)發(fā)者經(jīng)常需要自己進(jìn)行內核的裁減工作。在PCS中進(jìn)行內核的裁減是相對簡(jiǎn)單的多的事情,開(kāi)發(fā)者不需要使用繁瑣的文本菜單進(jìn)行配置和手動(dòng)編譯內核。

  ?軟件包配置

  PCS中包含了幾十個(gè)通用的常用軟件包,避免了開(kāi)發(fā)者到處尋找的煩惱。用戶(hù)可以通過(guò)PCS自帶的PackageEditor工具導入自己需要的軟件包。開(kāi)發(fā)者可以在PCS中進(jìn)行軟件包的配置,例如打開(kāi)guilibrary,關(guān)閉webserver等工作都可以輕松完成。

  在PCS中進(jìn)行軟件包的配置是非常簡(jiǎn)單的,只需要在軟件包的上下文菜單中選擇即可。

圖二:軟件包配置

  編譯這個(gè)項目

  PCS允許開(kāi)發(fā)者按照自己的期望來(lái)對部件進(jìn)行編譯。開(kāi)發(fā)者可以只編譯那些上次編譯之后重新配置的部件,也可以強制編譯項目所包含的全部的部件,不管是否已經(jīng)編譯過(guò)。

  ?部署Linuxloader和開(kāi)發(fā)包到板上

  對于已經(jīng)存在的SBC,應該已經(jīng)提供了這些軟件包。對于定制的目標板還需要做下面的工作:用于目標板的bootload固件,板上bring-up,遠程bootload等。這樣就完成了開(kāi)發(fā)模式下最小板上環(huán)境。

  ?完成新的驅動(dòng)程序

  如果功能需求需要的話(huà),開(kāi)發(fā)者要完成為目標板的特定硬件驅動(dòng)程序。

  ?開(kāi)發(fā)應用

  開(kāi)發(fā)者開(kāi)發(fā)運行在目標板上的應用,開(kāi)發(fā)者可以使用隨同PCS一同發(fā)布的CodewarriorIDE進(jìn)行應用的開(kāi)發(fā)和調試。

  ?重新配置:由開(kāi)發(fā)模式轉換到產(chǎn)品模式

  修改目標板固件:

  支持本地bootload。

  支持本地根文件系統,通常將根文件設置為只讀模式。

  去除開(kāi)發(fā)用的遺留部件:

  去除調試工具。

  去除用于方便開(kāi)發(fā)而導入的無(wú)用部件。

  去除無(wú)用的類(lèi)庫,只保留需要的那部分。

  為啟動(dòng)特殊的應用而改變啟動(dòng)過(guò)程。

  最終產(chǎn)品測試。

  ?部署最終產(chǎn)品,發(fā)布產(chǎn)品。

  軟件的部署是一個(gè)比較復雜的過(guò)程,但是PCS提供了一個(gè)非常方便的部署向導,可以在很大的程度上減少部署的工作量。部署的過(guò)程包括為目標板生成嵌入式鏡像文件,然后部署到目標板上。在部署之前需要使用PCS提供的交叉編譯環(huán)境對所有的軟件包進(jìn)行編譯。PCS會(huì )幫助開(kāi)發(fā)者生成系統的鏡像文件,包括生成文件系統,轉換格式使得鏡像文件可以下載到目標板上。PCS提供了一個(gè)擴展性很好的策略,就是開(kāi)發(fā)者可以開(kāi)發(fā)自己的部署向導來(lái)完成一些特殊的部署操作,在PCS文檔中有非常詳細的關(guān)于這部分功能的介紹。

  ?在PCS中導出新的BSP,可以在以后的開(kāi)發(fā)中應用。

  PCS提供了一套圖形化的導出BSP的工具,用戶(hù)在圖形界面上進(jìn)行簡(jiǎn)單的設置之后就可以導出的BSP以便在以后的開(kāi)發(fā)中使用。大多數的項目是在一個(gè)已經(jīng)存在的BSP的基礎上創(chuàng )建的,導出的BSP可以讓很多成果和解決方案在以后的項目中得到應用,這是非常必要的。

  4.結束語(yǔ)

  通過(guò)對使用平臺創(chuàng )建套件工具進(jìn)行嵌入式Linux應用開(kāi)發(fā)過(guò)程的研究我們可以看出平臺創(chuàng )建套件工具在Linux內核配置,部件之間的依賴(lài)關(guān)系的管理和沖突的避免,生成在目標板上可運行的目標文件,調試目標板和導出BSP方面都有非常新穎且可行的處理方式。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: PCS Linux 目標向導

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>