<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    Rss & SiteMap

    曙海教育集團(tuán)論壇 http://www.bjzhda.cn

    曙海教育集團(tuán)論壇
    共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]
    [瀏覽完整版]

    標(biāo)題:vxworks啟動(dòng)進(jìn)一步討論

    1樓
    wangxinxin 發(fā)表于:2010-11-17 9:02:39

    先講講BSP和BootRom之間的區(qū)別BSP只與“target/config/”下對(duì)應(yīng)目錄相關(guān)
    romInit.s定義系統(tǒng)的入口romInit函數(shù),系統(tǒng)上電最先執(zhí)行的代碼。romInit禁止CPU中斷,設(shè)置初始堆棧,配置DRAM控制器等少數(shù)CPU設(shè)置后調(diào)用第一個(gè)C程序romStart。進(jìn)一步硬件初始化有sysLib.c中定義sysHeInit函數(shù)完成。romInit.s中的硬件初始化會(huì)在sysALib.s或sysLib.s重復(fù)一遍。因?yàn)関xworks程序只需要BootRom提供參數(shù)串和啟動(dòng)代碼。而不依賴于BootRom的硬件初始化(除了RAM初始化)。BootRom和Vxworks的無(wú)關(guān)行是一個(gè)原則,若不遵循這個(gè)原則,就會(huì)出現(xiàn)Vxworks和BootRom的關(guān)聯(lián)修改。
    從宏觀角度看來(lái),一般是先加載BootRom;BootRom在加載VxWorks應(yīng)用,并跳轉(zhuǎn)到Vxworks的入口sysInit執(zhí)行;VxWorks有可能根據(jù)啟動(dòng)的腳本文件加載應(yīng)用模塊。整個(gè)過(guò)程完成后,系統(tǒng)進(jìn)入多任務(wù)環(huán)境。
    對(duì)于PC兼容體系結(jié)構(gòu),CPU不能從這樣的存儲(chǔ)器中獲取指令執(zhí)行,而需要BIOS的輔助。BIOS講啟動(dòng)盤(pán)的引導(dǎo)扇區(qū)復(fù)制到主內(nèi)存空間,再跳內(nèi)存的指定地址執(zhí)行。BIOS本身所處的存儲(chǔ)器時(shí)CPU可直接訪問(wèn)執(zhí)行的。BIOS再加載程序映象時(shí)喲自己的規(guī)范,比如引導(dǎo)扇區(qū)的位置和大小等。BootRom自己能滿足這樣的要求,比如說(shuō)大小,BootRom比一個(gè)扇區(qū)大了許多。BIOS不能直接加載BootRom,而只能先加載輔助的小程序Vxld。由于大小限制,Vxld不支持完善的文件系統(tǒng),所以要求啟動(dòng)盤(pán)上的BootRom文件必須連續(xù)存放。Vxld再加載BootRom。由于硬件環(huán)境限制,Vxld必須做的非常小,不能啟動(dòng)保護(hù)模式和支持翻檢系統(tǒng),因而限制了所能減災(zāi)程序映象的大小和內(nèi)存加載位置。啟動(dòng)盤(pán)(如軟盤(pán))的大小也會(huì)限制程序映象的大小。
    也有可能由于環(huán)境影響,出現(xiàn)BootRom與Vxworks映象融合在一起的情況,可以直接從Rom啟動(dòng)但是不靈活。

    映象分類       類型
    功能        BootRom,VxWorks,目標(biāo)模塊,vxworks_rom
    運(yùn)行位置  ROM運(yùn)行[rom-resident],RAM運(yùn)行的
    壓縮      壓縮的,非壓縮的
    文家格式  標(biāo)準(zhǔn)執(zhí)行格式(如ELF),Hex格式(支隊(duì)Rom型的映象而言),而進(jìn)制格式
    符號(hào)表    Standalone,包含符號(hào)表和tshell等     

    共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]

    Copyright © 2000 - 2009 曙海教育集團(tuán)
    Powered By 曙海教育集團(tuán) Version 2.2
    Processed in .01563 s, 2 queries.