• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            franksunny的個人技術空間
            獲得人生中的成功需要的專注與堅持不懈多過天才與機會。 ——C.W. Wendte

            Nucleus PLUS介紹

             

            今天在公司看到VIACBP系列CDMA手機方案用到了Nucleus +OS,說實話還是第一次聽說,所以查了些資料,引用別人的總結做個百科小文,原文鏈接如下:

            http://www.upsdn.net/html/2005-01/250.html

             

            一、Nucleus PLUS嵌入式操作系統的簡單介紹

            Nucleus PLUS嵌入式操作系統是目前最受歡迎的操作系統之一,是美國源代碼操作系統商ATI公司為實時嵌入式應用而設計的一個搶先式多任務操作系統內核,其95%的代碼是用ANSIC寫成的,因此非常便于移植并能夠支持大多數類型的處理器

            從實現角度來看,Nucleus PLUS 是一組C函數庫,應用程序代碼與核心函數庫連接在一起,生成一個目標代碼,下載到目標板的RAM中或直接燒錄到目標板的ROM中執行。

            Nucleus Plus內核在典型的CISC體系結構上占據大約20k空間,而在典型的RISC體系結構上占據空間為40k左右,其內核數據結構占據1.5k字節的空間。Nucleus Plus以其實時響應、搶先、多任務以及源代碼開放特性獲得在通訊、國防、工業控制、航空/航天、鐵路、網絡、POS、自動化控制、智能家電等領域的廣泛應用。

            Nucleus PLUS 采用了軟件組件的方法。每個組件具有單一而明確的目的,通常由幾個C及匯編語言模塊構成,提供清晰的外部接口,對組件的引用就是通過這些接口完成的。除了少數一些特殊情況外,不允許從外部對組件內的全局進行訪問。由于采用了軟件組件的方法,Nucleus PLUS各個組件非常易于替換和復用Nucleus PLUS的組件包括任務控制、內存管理、任務間通信、任務的同步與互斥、中斷管理、定時器及I/O驅動等。

             

            二、Nucleus具有的優點:

            1、提供源代碼

            Nucleus PLUS提供注釋嚴格的C源級代碼給每一個用戶。這樣,用戶能夠深入地了解底層內核的運作方式,并可根據自己的特殊要求刪減或改動系統軟件,這對軟件的規范化管理及系統軟件的測試都有極大的幫助。另外,由于提供了RTOS的源級代碼,用戶不但可以進行 RTOS 的學習和研究,而且產品在量產時也不必支付 License,可以省去大量的費用。對于軍方來說,由于提供了源代碼,用戶完全可以控制內核而不必擔心操作系統中可能會存在異常任務導致系統崩潰。

            2、性價比高

            Nucleus PLUS由于采用了先進的微內核 ( Micro-kernel ) 技術,因而在優先級安排,任務調度,任務切換等各個方面都有相當大的優勢。另外,對C++語言的全面支持又使得Nucleus PLUS Kernel 成為名副其實的面向對象的實時操作系統內核。然而,其價格卻比較合理。所以,容易被廣大的研發單位接受。

            3、易學易用

            Nucleus PLUS 能夠結合 ParadigmSDS以及 ATI自己的多任務調試器組成功能強大的集成開發環境,配合相應的編譯器和動態聯結庫以及各類底層驅動軟件,用戶可以輕松地進行 RTOS 的開發和調試。另外,由于這些集成開發環境 ( IDE ) 為所有的開發工程師所熟悉,因而,容易學習和使用。

            4、功能模塊豐富

            Nucleus PLUS除提供功能強大的內核操作系統外,還提供種類豐富的功能模塊。例如用于通訊系統的局域和廣域網絡模塊,支持圖形應用的實時化Windows模塊,支持Internet網的WEB產品模塊,工控機實時BIOS模塊,圖形化用戶接口以及應用軟件性能分析模塊等。用戶可以根據自己的應用來選擇不同的應用模塊。

             

            Nucleus PLUSRTOS內核可支持如下類型的CPUx86,68xxx,68HCxx,NEC V25, ColdFire, 29K,i960, MIPS, SPARClite, TI DSP, ARM6/7, StrongARM, H8/300H, SH1/2/3, PowerPC, V8xx, Tricore, Mcore, Panasonic MN10200, Tricore, Mcore等。可以說NUCLEUS+支持CPU類型最豐富的實時多任務操作系統。針對各種嵌入式應用,Nucleus PLUS 提供相應的網絡協議(如TCP/IPSNMP等),以滿足用戶對通訊系統的開發要求。另外,可重入的文件系統、可重入的C函數庫以及圖形化界面等也給開發者提供了方便。針對不同的CPU類型,Nucleus 還提供編譯器、動態連接庫、多任務調試器等相應的工具來配置用戶的開發環境。

            值得提出的是ATI公司最近還發表了基于Microsoft Developers Studio的嵌入式集成開發環境-NUCLEUS EDE。從而率先將嵌入式開發工具與Microsoft的強大開發環境結合起來,提供給工程師們強大的開發手段。

             

            三、 源代碼帶來的優勢眾所周知,Nucleus實時多任務操作系統提供給用戶源代碼。

            這除商務上給用戶帶來巨大益處(免交Royalty)外,還在技術方面給用戶極大的方便,即無需編寫和調試BSP,從而達到易學易用的目的,加速產品上市。對RTOS有一定知識的工程師一定清楚,使用RTOS最大的障礙在于編寫和調試BSP。大家知道,在調試目標系統的軟件之前,必須將目標與主機連接起來并建立通訊。為此,我們可以編寫一段監控程序(Monitor)。然而,如果要調試基于RTOS內核的程序,主機上的調試器(Debugger)除要與目標建立通訊外,更重要的是必須識別RTOS的任務,這樣才能進行任務級調試(Task-aware Debugger)。因此,只有Monitor是不夠的。如果我們選用的RTOS不提供源代碼,那么,主機上的調試器(Debugger)就只有通過用戶編寫的BSP來了解Kernel在現有硬件平臺上對各個任務進行調度的情況。顯然,編寫BSP必須對CPU目標系統的硬件以及應用軟件等有全面而深入的了解。一般說來,對于一個有一定硬件開發經驗的工程師來說,編寫一個新的BSP要花的平均時間為兩個月左右。這對于一個新手來說可是比較困難的。對于編寫BSP的工程師來說,另外一個更大的挑戰就是如何調試BSP,即如何驗證所編寫的BSP是否正確。通常剛剛焊接安裝好的PCB板中,硬件或軟件的故障(Bugs)是比較多的。甚至更常見的是CPU部分都沒有運作正常。有時時序錯誤和總線錯誤都還存在。在您把寫好的BSP燒入EPROM(或FLASH)中試圖將目標與主機建立聯系時,您幾乎100%地會發現根本無法通訊,眼前一團漆黑,不知是軟件有錯誤還是硬件不運轉。BSP在正常運行嗎?不得而知。在焦急和摸索中您可能發現幾個月已悄然而過。對于早期的實時操作系統來說,BSP是必由之路。然而,新一代的RTOS-Nucleus PLUS則避免了BSP帶來的痛苦過程。因為Nucleus的調試是基于全新的動態連接庫(DLL)。用戶只須通過監控程序(Monitor)或者BDM調試口(或者JTAG調試口)建立目標系統(Target)與主機(Host)之間的通訊,并給主機上的Debugger初始化特性中加入Nucleus的動態連接庫(DLLs),這時,調試器就能夠自動地去識別運行在目標系統中的Nucleus內核和各個應用任務,從而完成任務級調試。上述的動態連接庫(DLLs)是由RTOS廠商和Debugger廠商合作完成的,用戶無須自行編寫。因此,Nucleus的用戶只需要將精力放在基于Nucleus的編程工作中。對于一個新手,往往經過一天到兩天的學習和培訓,就可以投入到應用程序編制工作中去,無需花大量的時間去研究CPU,特定的硬件等。

            另外,由于有了源程序,用戶在調試程序時可以清楚地通過STEP INTO命令,追蹤到RTOS的內層中去,觀看和學習Kernel對任務的管理和調度機制。對于有志研究RTOS深層技術的工程師來說極為方便。對于Motorola 68KPowerPC,用戶可以利用GreenHill公司的Mutil調試器或TRACE-ICD來完成Nucleus PLUS的調試;對于ARMStrongARM,用戶可以利用ARM公司的SDT251調試器或TRACE-ICD來完成Nucleus PLUS的調試;對于Intel x86實模式,用戶可以利用Paradigm公司的調試器及其DLL來進行任務級調試;對于Intel x86保護模式則可以利用SSI公司Softprobe調試器和SSI DLL來調試;對于i960SH3/4ARM6/7MIPS等芯片,則可以使用ATI公司自己的UDB調試器來進行任務的調試。結論:動態連接庫(DLL)是在RTOS工具中新出現的應用趨勢,通過這種方式,用戶可以免去BSP帶來的麻煩,靈活方便地進行開發和調試,大大加速開發進度。Nucleus實時操作系統提供源代碼,支持豐富的CPU種類,配合各類DLL動態連接庫,為使用和研究RTOS技術的工程帶來極大的利益。

             進行ARM系列的開發需要大量的設備投入,另外如果做比較大型的系統,還必須要操作系統,購買一個好的操作系統也是需要幾十萬元ARM應用層研發可以建立在CC++及其他的大多數開發語言上,這對于軟件公司來說是很方便的,只要準備好硬件及操作系統,其他的工作就可以分模塊給N個人來進行。而對于底層的東西,ARM公司也可以有比較大力度的支持,因此如果需要用ARM系列開發高端產品,可行性是比較高的,開發周期也不會很長。當然,對于arm芯片,還是有一定的限制,比如沒有除法指令,這樣在編程時就要盡量避免用除法,否則會帶來程序代碼的增加和執行速度的降低。一般說,除法還是可以通過移位和乘法來代替。


            另外,好久沒上來碼字了,上周結束失業,估計金融危機對我的影響暫時結束一下了吧。

            posted on 2008-11-27 22:37 frank.sunny 閱讀(1619) 評論(0)  編輯 收藏 引用 所屬分類: 概念掃盲

            常用鏈接

            留言簿(13)

            隨筆分類

            個人其它博客

            基礎知識鏈接

            最新評論

            閱讀排行榜

            評論排行榜

            日本免费一区二区久久人人澡| 久久天天躁狠狠躁夜夜2020老熟妇| 久久免费看黄a级毛片| 欧美精品乱码99久久蜜桃| 国产成人精品综合久久久久 | 91亚洲国产成人久久精品网址| 久久99免费视频| 午夜精品久久久久成人| 午夜精品久久久久久久久| MM131亚洲国产美女久久| 欧美激情精品久久久久久久| 久久精品人人做人人爽电影| 久久精品国产99国产精偷| 色综合合久久天天给综看| 久久成人国产精品| 久久人做人爽一区二区三区| 国产精品久久久久久福利69堂| 99久久国产亚洲综合精品| 丁香五月综合久久激情| 久久久久久亚洲Av无码精品专口| 精品久久久久久久久久中文字幕 | 国産精品久久久久久久| 久久影院综合精品| 亚洲国产日韩欧美久久| 国产亚州精品女人久久久久久 | 久久精品一区二区| 亚洲国产精品无码久久一区二区| 久久精品一区二区影院| 99久久国语露脸精品国产| 97精品伊人久久久大香线蕉| 久久伊人亚洲AV无码网站| 国产福利电影一区二区三区,免费久久久久久久精 | 精品久久久久久国产潘金莲| 亚洲人成无码www久久久| 久久免费视频6| 久久午夜无码鲁丝片午夜精品| 99久久精品国产毛片| 69久久精品无码一区二区| 成人国内精品久久久久一区| 精品一区二区久久| 久久99中文字幕久久|