在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > VxWorks系統(tǒng)的映像及其裝載過(guò)程解析

            VxWorks系統(tǒng)的映像及其裝載過(guò)程解析

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

              VxWorks是一款優(yōu)秀的實(shí)時(shí)多任務(wù)操作系統(tǒng),以良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶開(kāi)發(fā)環(huán)境,在實(shí)時(shí)操作系統(tǒng)領(lǐng)域占據(jù)了重要的一席之地,受到越來(lái)越多的用戶的青睞。但是作為初學(xué)者而言,VxWorks提供了眾多的程序映像類型,在開(kāi)發(fā)過(guò)程中十分容易讓人感到困惑,而且相關(guān)的參考資料對(duì)這個(gè)問(wèn)題的描述也不集中,因此,本文擬對(duì)VxWorks的幾種映像作詳細(xì)的分析。

            1 系統(tǒng)映像
              VxWorks的映像主要包括兩大類,一類是BootRom類型,一類是VxWorks類型。
              (1)BootRom類型
              BootRom類型映像是一個(gè)最小化、專用的VxWorks引導(dǎo)映像,實(shí)現(xiàn)最少的系統(tǒng)初始化,主要用于啟動(dòng)裝載VxWorks映像,其功能類似于PC機(jī)的BIOS。BootRom運(yùn)行時(shí)也建立起多任務(wù)環(huán)境,包括usrRoot任務(wù)、網(wǎng)絡(luò)任務(wù)、TFFS任務(wù)和FTP任務(wù)等。引導(dǎo)映像在運(yùn)行時(shí),可能在 ROM/Flash中執(zhí)行(例如ROM駐留型引導(dǎo)映像),也可能在RAM 中執(zhí)行。在系統(tǒng)中其對(duì)應(yīng)的編譯規(guī)則文件是rules.bsp。
               BootRom類型分為三種:BootRom_res、BootRom_uncmp和BootRom。第一種是一直運(yùn)行在rom 中的映象,只把data段拷貝到ram 里面;第二種是非壓縮方式的映象,data段和text段都要拷貝到ram里面,并在ram里面運(yùn)行;第三種是壓縮方式的映象,生成的時(shí)候編譯器會(huì)把除掉 romlnit.s和bootInit.c之外的目標(biāo)文件壓縮并“匯編”成一個(gè)bootrom.Z.s,最后和romInit.o, bootInit.o,version.o進(jìn)行鏈接,生成bootrom映像。所以它也是要全部拷貝到ram 中,并必須要進(jìn)行解壓縮的工作。而這些工作基本上都是在bootInit.c中進(jìn)行的。
              (2)VxWorks類型
              VxWorks類型映像是系統(tǒng)的主映像,也即是系統(tǒng)最終要運(yùn)行的映像。該映像在運(yùn)行時(shí)至少有一部分(如:數(shù)據(jù)段和BSS段)需要在RAM中運(yùn)行。在系統(tǒng)中其對(duì)應(yīng)的編譯規(guī)則文件是rules.vxWorks。
            VxWorks類型映像分為四種:VxWorks、VxWorks_rom、VxWorks_romResident和VxWorks_romCompress。如表1。

              表1 VxWorks類型映像

             

            文件名

            說(shuō)明

            VxWorks

            RAM運(yùn)行的VxWorks映像

            VxWorks_rom

            ROM 自動(dòng)RAM 運(yùn)行的VxWorks映像,不需要BootRom輔助

            VxWorks_romCompress

            VxWorks_rom 的壓縮形式

            VxWorks_romResiden

            ROM啟動(dòng)ROM運(yùn)行的VxWorks映像,不需要BootRom輔助





              (3)BootRom 類型映像和VxWorks類型映像的聯(lián)系與區(qū)別
              對(duì)于沒(méi)有自啟動(dòng)功能的 VxWorks類型映像(例如:VxWorks型),在映像運(yùn)行前就需要一段程序?qū)⒃撚诚窨截惖絉AM 中運(yùn)行,而B(niǎo)ootRom類型映像在此時(shí)就扮演了這種“搬運(yùn)工”的角色,當(dāng)VxWorks系統(tǒng)下載完畢,BootRom的任務(wù)也就完成了。二者在系統(tǒng)初始化的時(shí)候,所做的功能基本相同,但是區(qū)別在于BootRom 類型映像調(diào)用bootConfig.c,而VxWorks類型映像調(diào)用usrConfig.c。

            2 映像裝載過(guò)程
              (1)VxWorks_romCompress和VxWorks_rom(如圖1)
                     

              將不包含VxWorks二進(jìn)制映像的引導(dǎo)程序data段復(fù)制到RAM 中的RAM_HIGH_ADRS。
              冷啟動(dòng)后,將從LOCAL_MEM_LOCAL_ADRS+RESER-VED的內(nèi)存地址到RAM_HIGH_ADRS-STACK_SAVE的內(nèi)存地址清零。將從引導(dǎo)程序bss段末端到LOCAL_MEM_LOCAL_ADRS+LOCAL_MEM_SIZE-USER_RESERVED_MEM的內(nèi)存也清零。
              拷貝VxWorks時(shí),VxWorks_rom 類型映像直接拷貝到以RAM_LOW_ADRS為開(kāi)始的RAM 中,而VxWorks_rom-Compress類型的映像將壓縮的VxWorks解壓到以RAM_LOW_ADRS為開(kāi)始的RAM 中。
            linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

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

            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉