<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>
    以文本方式查看主題

    -  曙海教育集團論壇  (http://www.hufushizhe.com/bbs/index.asp)
    --  VxWorks技術討論區  (http://www.hufushizhe.com/bbs/list.asp?boardid=11)
    ----  VxWorks_BSP移植_  (http://www.hufushizhe.com/bbs/dispbbs.asp?boardid=11&id=1431)

    --  作者:wangxinxin
    --  發布時間:2010-11-17 14:25:10
    --  VxWorks_BSP移植_

    VxWorks_BSP移植_1
     icepeak 發表于 2006-5-29 8:33:00
    好多天沒更新blog了,中間忙著整另外一個blog,所以無暇顧及.現在,把前幾天學習筆記送上來!

    在講述BSP的移植之前,先討論一下Vxworks的啟動過程:

    ARM系統中,系統上電后會自動加載并運行位于0地址的指令,通常在這個地方會放置一條跳轉指令,使它跳轉到_romInit()(初始化的入口)

    romInit()進行處理器模式的設置,關閉中斷,初始化內存以及一些必要的硬件配置.

    romInit()執行完上述工作以后,跳轉到romStart(),它負責將ROM映像copy到RAM中,如果ROM映像中不含Vxworks內核,那么啟動代碼要負責將

    Vxworks內核加載到RAM中去.接下來要開始運行Vxworks內核的入口程序sysInit(),它主要實現一些與romInit()類似的功能,然后還是調用

    Vxworks內核的第一個例程usrInit(),usrInit()會根據BSP的設置,最終完成整個內核的前期初始化工作.在usrInit最后,由kernelInit()激

    活多任務環境,并創建一個任務來安裝設備驅動程序.同時啟動設備,初始化Vxworks系統庫,調用應用程序.
     

    VxWorks_BSP移植_2
     icepeak 發表于 2006-5-29 8:49:00
    弄清楚VxWorks啟動的順序后,我們來討論BSP的移植,VxWorks的BSP在先前的日志中已經有說明,大家可以查閱了解它和bootloader的區別和

    聯系.

    不同的Target的BSP都不同,同種CPU的不同板子也會不同,所以移植修改是不可避免的,我們可以參考$(WIND_BASE)\\target\\config下的BSP

    文件,找一個比較接近的來修改!關于這個目錄的組織結構,網上有很多介紹,這里不贅述.

    首先要重點修改的就是Makefilie文件和config.h文件,這兩個文件跟目標板的硬件配置有很大的關系,主要是CPU類型,內存的大小和目標板

    的外圍設備的配置情況.關于這兩個文件的修改下次會詳細注釋!