乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Nucleus Plus在嵌入式系統(tǒng)應用

       浮 生 2009-11-02
      Nucleus Plus在嵌入式系統(tǒng)應用
      2009-07-07 09:55

      (轉自:http://www./detail/id-40669.html)

              Nucleus Plus是美國源代碼操作系統(tǒng)商ATI公司推出的新一代嵌入式操作系統(tǒng),屬于搶先式實時多任務操作系統(tǒng)內核, 95%的代碼使用ANSI C編寫,非常便于移植于各種處理器家族。從實現(xiàn)的角度講,不同于傳統(tǒng)嵌入式開發(fā),Nucleus Plus是以函數(shù)庫的形式鏈接到目標應用程序中,形成可執(zhí)行目標代碼,下載到目標板上或燒到ROM/FLASH ROM 中去執(zhí)行。Nucleus Plus內核在典型的CISC體系結構上占據(jù)大約20k空間,而在典型的RISC體系結構上占據(jù)空間為40k左右,其內核數(shù)據(jù)結構占據(jù)1.5k字節(jié)的空間。Nucleus Plus以其實時響應、搶先、多任務以及源代碼開放特性獲得在通訊、國防、工業(yè)控制、航空/航天、鐵路、網(wǎng)絡、POS、自動化控制、智能家電等領域的廣泛應用。

        Nucleus Plus內核技術

        ATI公司使用一種叫做軟件組件的方法。所謂軟件組件,就是具有明確目的或用途的由1個或數(shù)個C語言/匯編源文件的一段非獨立執(zhí)行應用程序,且每個組件都提供一個定義好的外部接口,必須通過外部接口來使用組件。訪問組件內的全局數(shù)據(jù)結構是被禁止的。使用了組件方法, 軟件組件既易于更新也易于重用。Nucleus Plus軟件組件通常由定義數(shù)據(jù)類型、常量以及外部接口的INCLUDE 頭文件和一個或多個C語言/匯編源文件組成。Nucleus Plus 提供如下組件:任務控制管理、內存管理、定時器管理、中斷、系統(tǒng)診斷、I/O驅動管理等共16個組件如下:

        Nucleus Plus Kernel:
        Common Service Component(CS)
        Initialization Component(IN)
        Tread Control Component(TC)
        Timer Component(TI)
        Mailbox Component(MB)
        Pipe Component(PI)
        Semaphore Component(SM)
        Event Flag Component(EV)
        Partition Component(PM)
        Queue Component(QM)
        Dynamic Memory Component(DM)
        I/O Component(I/O)
        History Component(HI)
        Error Component(ER)
        License Component (LI)
        Release Component(RL)

        Nucleus Plus 除了其功能強大的內核外,還提供了面向INTERNET、TCP/IP、WEB瀏覽器、圖形以及文件系統(tǒng)的軟件包,參閱圖1。

        Nucleus Plus 開發(fā)

        1.Nucleus Plus 定制

        Nucleus Plus 也能根據(jù)目標板的需要進行裁剪和定制,生成適合目標系統(tǒng)的操作系統(tǒng),盡量少占系統(tǒng)內存。OS定制完成后,將其鏈接到目標應用程序,成為目標應用程序的一部分。在典型的CISC體系結構的目標板上,它占用約20K 左右的空間,而在RISC體系結構的目標板上占用約40K左右的空間。一般地,Nucleus Plus 足以滿足絕大多數(shù)的嵌入式應用。ATI公司提供了一個名為BUILD_LI.BAT或PLUS.BAT的批處理文件,用戶可以刪剪其中的模塊,更改相關的選項或開關,執(zhí)行該文件生成與目標相關的操作系統(tǒng),也就是根據(jù)系統(tǒng)需要生成定制的操作系統(tǒng)。需要注意的是,該批處理文件的內容與開發(fā)工具有關。

        2.開發(fā)方案

        Nucleus Plus可以結合Paradigm、SDS以及ATI的多任務調試器組成功能強大的集成開發(fā)環(huán)境,配合相應的編譯器(Borland c/c++ 編譯器、Turbo c/c++ 編譯器或者Microsoft c/c++編譯器)和動態(tài)鏈接庫以及各類底層驅動軟件就可以滿足嵌入式應用的開發(fā)。

        3.開發(fā)流程

        用Nucleus Plus 開發(fā)嵌入式應用程序,一般遵循如下步驟:

        * 如果有必要,應對低級系統(tǒng)初始化文件.INT進行修改,使之符合目標板的需要。如中斷向量、I/O地址、時鐘頻率等。

        * 定義Application _Initialize()函數(shù)。該函數(shù)在啟動系統(tǒng)之前先執(zhí)行。注意的是要把NUCLEUS.H頭文件包括在目標應用程序中,以便利用Nucleus Plus 的服務。

        * 定義應用程序的任務。如果調用Nucleus Plus 的服務,要把NUCLEUS.H包含進去。

        * 編譯/匯編所有的應用程序軟件,并且包含系統(tǒng)低級初始化文件.INT。

        * 鏈接.INT和所有的應用程序目標文件、Nucleus Plus庫文件以及相關的開發(fā)工具庫。

        * 把生成的最終目標代碼下載或燒到目標板上執(zhí)行。

        4.Nucleus Plus 初始化

        Nucleus Plus 分三個層次的初始化,即:系統(tǒng)低級初始化Int-Initialize()、系統(tǒng)高級初始化Inc-Initialize()和應用程序初始化Application_Initialize(),初始化之后便進入Nucleus Plus 的任務調度循環(huán)。各個初始化函數(shù)任務見表1。

        表1:Nucleus Plus 初始化表

        5.Nucleus MNT

        Nucleus MNT是為軟件開發(fā)者設計的,在WIN95/NT下構筑Nucleus Plus嵌入式應用的原型(Prototyping)環(huán)境。它通過兩個庫來實現(xiàn),即針對目標環(huán)境的庫和針對Win95/NT開發(fā)環(huán)境的庫。開發(fā)時,應用程序代碼可以不變,僅僅替換掉MNT庫,使用交叉開發(fā)工具包重構目標環(huán)境下的可執(zhí)行目標代碼,請看圖2。

        6.開發(fā)注意事項

        嵌入式開發(fā)在內存需求、任務管理等方面存在著特殊性,因此,開發(fā)中對以下方面要額外加以注意。

        * 任務饑荒

        任務優(yōu)先級的分配要合理,否則會導致系統(tǒng)中的一些任務一直不斷地在運行而另一些任務永遠得不到運行,引起饑荒。

        * 死鎖

        系統(tǒng)資源的分配要合理,否則會引起兩個或多個任務為競爭某一系統(tǒng)資源而處于無限掛起現(xiàn)象。

        * 內存

        * 內存泄露

        內存分配過程中要盡量避免碎片并且要注意及時回收。

        * 內存節(jié)約

        * 默認情況下,Nucleus Plus, 在高級初始化函數(shù)Inc_Initialize()中。調用其它函數(shù)初始化它所提供的所有特征的數(shù)據(jù)結構中,有些特征用戶目標應用程序可能用不到,為此,要去掉不必要的函數(shù)調用。

        * 改變Nucleus.H中NU_MAX_LISRS的大小,它定義的是目標處理器的最大中斷向量數(shù)。

        * 改變TC_DEFS.H中TC_PRIORITIES的大小。它定義了任務的優(yōu)先級數(shù)。Nucleus Plus 能支持256個優(yōu)先級。

        * HISR棧共享。

        * TCD.C中禁止查詢表TCD_LOWEST_SET_BIT的RAM拷貝。

        * 使用一個更小的INT選項。

        結束語

        由于Nucleus Plus 的模塊化、可靠、重用、開放、易用以及安全等特性使得它成為嵌入式應用開發(fā)的理想平臺,尤其是關系到國計民生的領域,如航空/航天、軍隊、國防等方面。

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多