多任務(wù)操作系統Nucleus簡(jiǎn)介
一、 ATI公司簡(jiǎn)介
■公司全稱(chēng):Accelerated Technology Inc.
■成立于1990年8月
■總部在美國Alabama州的Mobile
■在美國的加利佛尼亞,德克薩斯,馬塞諸塞,佛羅里達以及田納西等設有分支機構
■在英國、法國和德國設有分支機構
■在日本、韓國、澳大利亞、臺灣、中國、意大利和俄羅斯等國設有代理商
1990年推出Nucleus實(shí)時(shí)多任務(wù)操作系統
■專(zhuān)注于RTOS的研發(fā)、銷(xiāo)售和技術(shù)應用及技術(shù)支持
■1993年成為MOTOROLA推薦的四大RTOS廠(chǎng)商之一
■1994年推出全球唯一的MNT虛擬開(kāi)發(fā)平臺
■1994年推出全球唯一的VNET網(wǎng)絡(luò )化虛擬平臺
■1994年成功地推出Java和RTOS產(chǎn)品
■1995年成為全球第一大源代碼RTOS廠(chǎng)商
■1996年選定旋極科技公司為其中國大陸及香港地區獨家代理商
■1997年公司員工數量為82人,成為美國大型的RTOS廠(chǎng)商
■1998年NET4.2成功推出
■1998年成功推出機頂盒方案和OSEK汽車(chē)電子方案
■1999年推出WebBrowser瀏覽器
■1999年ATI公司員工數量為150人,已成為美國成長(cháng)速度最快的嵌入式操作
系統公司
■2000年NET4.4成功推出,完善了NUCLEUS的網(wǎng)絡(luò )模塊
二、 Nucleus PLUS的特點(diǎn):
Nucleus PLUS 是為實(shí)時(shí)嵌入式應用而設計的一個(gè)搶先式多任務(wù)操作系統內核,其95%的代碼是用ANSIC寫(xiě)成的,因此非常便于移植并能夠支持大多數類(lèi)型的處理器。從實(shí)現角度來(lái)看,Nucleus PLUS 是一組C函數庫,應用程序代碼與核心函數庫連接在一起,生成一個(gè)目標代碼,下載到目標板的RAM中或直接燒錄到目標板的ROM中執行。
在典型的目標環(huán)境中,Nucleus PLUS 核心代碼區一般不超過(guò)20K字節大小。Nucleus PLUS 采用了軟件組件的方法。每個(gè)組件具有單一而明確的目的,通常由幾個(gè)C及匯編語(yǔ)言模塊構成,提供清晰的外部接口,對組件的引用就是通過(guò)這些接口完成的。除了少數一些特殊情況外,不允許從外部對組件內的全局進(jìn)行訪(fǎng)問(wèn)。由于采用了軟件組件的方法,Nucleus PLUS 各個(gè)組件非常易于替換和復用。Nucleus PLUS 的組件包括任務(wù)控制、內存管理、任務(wù)間通信、任務(wù)的同步與互斥、中斷管理、定時(shí)器及I/O驅動(dòng)等。
Nucleus具有如下特點(diǎn):
1、提供源代碼
Nucleus PLUS 注釋嚴格的C源級代碼給每一個(gè)用戶(hù)。這樣,用戶(hù)能夠深入地了解底層內核的運作方式,并可根據自己的特殊要求刪減或改動(dòng)系統軟件,這對軟件的規范化管理及系統軟件的測試都有極大的幫助。另外,由于提供了 RTOS 的源級代碼,用戶(hù)不但可以進(jìn)行 RTOS 的學(xué)習和研究,而且產(chǎn)品在量產(chǎn)時(shí)也不必支付 License,可以省去大量的費用。對于軍方來(lái)說(shuō),由于提供了源代碼,用戶(hù)完全可以控制內核而不必擔心操作系統中可能會(huì )存在異常任務(wù)導致系統崩潰。
2、性?xún)r(jià)比高
Nucleus PLUS 由于采用了先進(jìn)的微內核 ( Micro-kernel ) 技術(shù),因而在優(yōu)先級安排,任務(wù)調度,任務(wù)切換等各個(gè)方面都有相當大的優(yōu)勢。另外,對C++語(yǔ)言的全面支持又使得Nucleus PLUS 的 Kernel 成為名副其實(shí)的面向對象的實(shí)時(shí)操作系統內核。然而,其價(jià)格卻比較合理。所以,容易被廣大的研發(fā)單位接受。
3、易學(xué)易用
Nucleus PLUS 能夠結合 Paradigm,SDS以及 ATI自己的多任務(wù)調試器組成功能強大的集成開(kāi)發(fā)環(huán)境,配合相應的編譯器和動(dòng)態(tài)聯(lián)結庫以及各類(lèi)底層驅動(dòng)軟件,用戶(hù)可以輕松地進(jìn)行 RTOS 的開(kāi)發(fā)和調試。另外,由于這些集成開(kāi)發(fā)環(huán)境 ( IDE ) 為所有的開(kāi)發(fā)工程師所熟悉,因而,容易學(xué)習和使用。
4、功能模塊豐富
Nucleus PLUS 除提供功能強大的內核操作系統外,還提供種類(lèi)豐富的功能模塊。例如用于通訊系統的局域和廣域網(wǎng)絡(luò )模塊,支持 圖形應用的實(shí)時(shí)化 Windows 模塊,支持Internet網(wǎng)的 WEB 產(chǎn)品模塊,工控機實(shí)時(shí) BIOS 模塊,圖形用戶(hù)接口以及應用軟件性能分析模塊等。用戶(hù)可以根據自己的應用來(lái)選擇不同的應用模塊。
Nucleus PLUS支持的CPU類(lèi)型:
Nucleus PLUS 的 RTOS內核可支持如下類(lèi)型的CPU:x86,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等??梢哉f(shuō)NUCLEUS+是支持CPU類(lèi)型最豐富的實(shí)時(shí)多任務(wù)操作系統。
針對各種嵌入式應用,Nucleus PLUS 還提供相應的網(wǎng)絡(luò )協(xié)議(如TCP/IP,SNMP等),以滿(mǎn)足用戶(hù)對通訊系統的開(kāi)發(fā)要求。另外,可重入的文件系統、可重入的C函數庫以及圖形化界面等也給開(kāi)發(fā)者提供了方便。
針對不同的CPU類(lèi)型,Nucleus 還提供編譯器、動(dòng)態(tài)連接庫、多任務(wù)調試器等相應的工具來(lái)配置用戶(hù)的開(kāi)發(fā)環(huán)境。值得提出的是ATI公司最近還發(fā)表了基于Microsoft Developers Studio的嵌入式集成開(kāi)發(fā)環(huán)境-NUCLEUS EDE。從而率先將嵌入式開(kāi)發(fā)工具與Microsoft的強大開(kāi)發(fā)環(huán)境結合起來(lái),提供給工程師們強大的開(kāi)發(fā)手段。
三、 源代碼帶來(lái)的優(yōu)勢
眾所周知,Nucleus實(shí)時(shí)多任務(wù)操作系統提供給用戶(hù)源代碼。這除商務(wù)上給用戶(hù)帶來(lái)巨大益處(免交Royalty)外,還在技術(shù)方面給用戶(hù)極大的方便,即無(wú)需編寫(xiě)和調試BSP,從而達到易學(xué)易用的目的,加速產(chǎn)品上市。
對RTOS有一定知識的工程師一定清楚,使用RTOS最大的障礙在于編寫(xiě)和調試BSP。大家知道,在調試目標系統的軟件之前,必須將目標與主機連接起來(lái)并建立通訊。為此,我們可以編寫(xiě)一段監控程序(Monitor)。
然而,如果要調試基于RTOS內核的程序,主機上的調試器(Debugger)除要與目標建立通訊外,更重要的是必須識別RTOS的任務(wù),這樣才能進(jìn)行任務(wù)級調試(Task-aware Debugger)。因此,只有Monitor是不夠的。如果我們選用的RTOS不提供源代碼,那么,主機上的調試器(Debugger)就只有通過(guò)用戶(hù)編寫(xiě)的BSP來(lái)了解Kernel在現有硬件平臺上對各個(gè)任務(wù)進(jìn)行調度的情況。顯然,編寫(xiě)BSP必須對CPU目標系統的硬件以及應用軟件等有全面而深入的了解。一般說(shuō)來(lái),對于一個(gè)有一定硬件開(kāi)發(fā)經(jīng)驗的工程師來(lái)說(shuō),編寫(xiě)一個(gè)新的BSP要花的平均時(shí)間為兩個(gè)月左右。這對于一個(gè)新手來(lái)說(shuō)可是比較困難的。
對于編寫(xiě)BSP的工程師來(lái)說(shuō),另外一個(gè)更大的挑戰就是如何調試BSP,即如何驗證所編寫(xiě)的BSP是否正確。通常剛剛焊接安裝好的PCB板中,硬件或軟件的故障(Bugs)是比較多的。甚至更常見(jiàn)的是CPU部分都沒(méi)有運作正常。有時(shí)時(shí)序錯誤和總線(xiàn)錯誤都還存在。在您把寫(xiě)好的BSP燒入EPROM(或FLASH)中試圖將目標與主機建立聯(lián)系時(shí),您幾乎100%地會(huì )發(fā)現根本無(wú)法通訊,眼前一團漆黑,不知是軟件有錯誤還是硬件不運轉。BSP在正常運行嗎?不得而知。在焦急和摸索中您可能發(fā)現幾個(gè)月已悄然而過(guò)。對于早期的實(shí)時(shí)操作系統來(lái)說(shuō),BSP是必由之路。然而,新一代的 RTOS-Nucleus PLUS則避免了BSP帶來(lái)的痛苦過(guò)程。因為Nucleus的調試是基于全新的動(dòng)態(tài)連接庫(DLL)。
用戶(hù)只須通過(guò)監控程序(Monitor)或者BDM調試口(或者JTAG調試口)建立目標系統(Target)與主機(Host)之間的通訊,并給主機上的Debugger初始化特性中加入Nucleus的動(dòng)態(tài)連接庫(DLLs),這時(shí),調試器就能夠自動(dòng)地去識別運行在目標系統中的Nucleus內核和各個(gè)應用任務(wù),從而完成任務(wù)級調試。上述的動(dòng)態(tài)連接庫(DLLs)是由RTOS廠(chǎng)商和Debugger廠(chǎng)商合作完成的,用戶(hù)無(wú)須自行編寫(xiě)。因此,Nucleus的用戶(hù)只需要將精力放在基于Nucleus的編程工作中。對于一個(gè)新手,往往經(jīng)過(guò)一天到兩天的學(xué)習和培訓,就可以投入到應用程序編制工作中去,無(wú)需花大量的時(shí)間去研究CPU,特定的硬件等。另外,由于有了源程序,用戶(hù)在調試程序時(shí)可以清楚地通過(guò)STEP INTO命令,追蹤到RTOS的內層中去,觀(guān)看和學(xué)習Kernel對任務(wù)的管理和調度機制。對于有志研究RTOS深層技術(shù)的工程師來(lái)說(shuō)極為方便。
對于Motorola 68K和PowerPC,用戶(hù)可以利用GreenHill公司的Mutil調試器或TRACE-ICD來(lái)完成Nucleus PLUS的調試;對于A(yíng)RM和StrongARM,用戶(hù)可以利用ARM公司的SDT251調試器或TRACE-ICD來(lái)完成Nucleus PLUS的調試;對于Intel x86實(shí)模式,用戶(hù)可以利用Paradigm公司的調試器及其DLL來(lái)進(jìn)行任務(wù)級調試;對于Intel x86保護模式則可以利用SSI公司Softprobe調試器和SSI DLL來(lái)調試;對于i960,SH3/4,ARM6/7,MIPS等芯片,則可以使用ATI公司自己的UDB調試器來(lái)進(jìn)行任務(wù)的調試。
結論:
動(dòng)態(tài)連接庫(DLL)是在RTOS工具中新出現的應用趨勢,通過(guò)這種方式,用戶(hù)可以免去BSP帶來(lái)的麻煩,靈活方便地進(jìn)行開(kāi)發(fā)和調試,大大加速開(kāi)發(fā)進(jìn)度。Nucleus實(shí)時(shí)操作系統提供源代碼,支持豐富的CPU種類(lèi),配合各類(lèi)DLL動(dòng)態(tài)連接庫,為使用和研究RTOS技術(shù)的工程帶來(lái)極大的利益。
四、 Nucleus的應用領(lǐng)域和國內外用戶(hù)
■Nucleus主要應用領(lǐng)域在:網(wǎng)絡(luò )、路由、橋接、Hubs、數據通訊、頂置盒、數字攝像機、ISDN、調制器、數字繪圖儀、GSM、蜂窩電話(huà)、PDA、打印機、GPS、無(wú)線(xiàn)通訊、汽車(chē)、醫療儀器、RAID、適配卡、智能卡、安全保密、工業(yè)控制、掃描儀、煤氣分析儀、游戲機、多媒體、手持產(chǎn)品、消費產(chǎn)品、局域網(wǎng)、廣域網(wǎng)、導航設備、衛星通信、自動(dòng)提款機、視頻產(chǎn)品、條碼機、過(guò)程控制等等
■Nucleus部分典型的用戶(hù)名單:
AT&T/Lucemt, Blaupunkt, Compaq Computer, Canon, Chrysler Technologies, Dassault SA, DOD, Draper Labs, Eastman Kodak, Ford Motor Company, General Motors, General Electric, GE Medical, Goddard Space Flight Systems, Fujitsu, Harris Digital Phone, Hewlett Packard, IBM, IGT Interface Systems, Kenwood Corporation, Lucent ,Mannesmann Tally Corp, M.I.T., Motorola, NASA, NEC, Network Peripherals, Nippon Denso, MSA Baseline, Orbitel Mobile Comm, Psi Printer GmbH, Philips Semiconductor, Rockwell International, Sagem SA, Samsung Electronics, Siemens, Sony Corp, Storage Technology, Texas Instruments, Takasago Corp, Toyota, Video Lottery, Video Guide, VLSI, Westinghouse, Xircom, Zitel
■國內部分用戶(hù):
航天部204所,郵電部數據所,北京卡斯特,航空部614所,中科院沈陽(yáng)自動(dòng)化所,北京千網(wǎng)數據公司,北京凌云公司,清華大學(xué),長(cháng)沙國防科技大學(xué),復旦大學(xué),華北電力大學(xué),鄭州信息工程學(xué)院,煙臺東方電子集團,深圳桑達,上海博達,深圳邁瑞,深圳天地通訊,鐵道部大連內燃機車(chē)研究所,總參機要局,南京南瑞總公司,航天第二設計院,西安儀表,郎訊(中國)有限公司,海軍計算所,恒基偉業(yè),廣州金鵬集團,杭州東方集團,福州新大陸,深圳康佳,西安東強,北京華大集成電路設計中心,廣東信利集團,香港IDT,香港訊研,太原中航儀表集團,新科電子,上海中興,上海廣電,石家莊54所,總參56所,武漢郵科院,上海德理,上海貝爾,斯高柏(C-Cube)、航天部503所等等。
c++相關(guān)文章:c++教程
三維掃描儀相關(guān)文章:三維掃描儀原理
評論