1. 概述
VxWorks 是美國(guó) Wind River System 公司( 以下簡(jiǎn)稱風(fēng)河 公司 ,即 WRS 公司)推出的一個(gè)實(shí)時(shí)操作系統(tǒng)。WRS 公司 組建于1981年,是一個(gè)專門從事實(shí)時(shí)操作系統(tǒng)開發(fā)與生產(chǎn)的軟件公司,該公司在實(shí)時(shí)操作系統(tǒng)領(lǐng)域被世界公認(rèn)為是最具有領(lǐng)導(dǎo)作用的公司。
VxWorks 是一個(gè)運(yùn)行在目標(biāo)機(jī)上的高性能、可裁減的嵌入式實(shí)時(shí)操作系統(tǒng)。它以其良好的可靠性和卓越的實(shí)時(shí)性被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域中,如衛(wèi)星通訊、軍事演習(xí)、彈道制導(dǎo)、飛機(jī)導(dǎo)航等。在美國(guó)的 F-16、FA-18 戰(zhàn)斗機(jī)、B-2 隱形轟炸機(jī)和愛國(guó)者導(dǎo)彈上,甚至連1997年4月在火星表面登陸的火星探測(cè)器上也使用到了VxWorks。
1984年 WRS 公司推出它的第一個(gè)版本--VxWorks 1.0.1,在 1999年推出了它的最新版本VxWorks 5.4。從1995年以后, WRS 公司推出了一套實(shí)時(shí)操作系統(tǒng)開發(fā)環(huán)境-- Tornado。
1.1 Tornado2.0 組件
Tornado是嵌入式實(shí)時(shí)領(lǐng)域里最新一代的開發(fā)調(diào)試環(huán)境。Tornado給嵌入式系統(tǒng)開發(fā)人員提供了一個(gè)不受目標(biāo)機(jī)資源限制的超級(jí)開發(fā)和調(diào)試環(huán)境。Tornado包含三個(gè)高度集成的部分:
. 運(yùn)行在宿主機(jī)和目標(biāo)機(jī)上的強(qiáng)有力的交叉開發(fā)工具和實(shí)用程序;
. 運(yùn)行在目標(biāo)機(jī)上的高性能、可裁剪的實(shí)時(shí)操作系統(tǒng)VxWorks;
. 連接宿主機(jī)和目標(biāo)機(jī)的多 種通訊方式,如:以太網(wǎng),串口線,ICE或ROM仿真器等。
對(duì)于不同的目標(biāo)機(jī),Tornado給開發(fā)者提供一個(gè)一致的圖形接口和人機(jī)界面。當(dāng)使用Tornado的開發(fā)人員轉(zhuǎn)向新的目標(biāo)機(jī)時(shí),不必再花費(fèi)時(shí)間學(xué)習(xí)或適應(yīng)新的工具;對(duì)深嵌入式應(yīng)用開發(fā)者來說更重要的是,Tornado所有的工具都是駐留在開發(fā)平臺(tái)上的。在嵌入式系統(tǒng) 工具發(fā)展歷史上,Tornado是第一個(gè)實(shí)現(xiàn)了當(dāng)目標(biāo)機(jī)資源有限時(shí)開發(fā)工具仍可使用而且功能齊全的開發(fā)環(huán)境。另外,所有工具都通過一個(gè)中央服務(wù)器(Target Server)處理與目標(biāo)機(jī)的通訊。所以無論連結(jié)方式是Ethernet,還是串口線、ICE仿真器、ROM仿真器或客戶設(shè)計(jì)的調(diào)試通道,所有工具均可使用。
1.1.1 實(shí)時(shí)系統(tǒng)
特點(diǎn):
l 實(shí)時(shí),能滿足嚴(yán)格的時(shí)間要求;
l 多任務(wù)內(nèi)核:
實(shí)時(shí)調(diào)度(基于優(yōu)先級(jí)或搶占式的);
任務(wù)間通訊;
互斥;
l 其他標(biāo)準(zhǔn)設(shè)備作為庫的形式支持內(nèi)核;
l 系統(tǒng)可重新配置,根據(jù)需要裁減組件,空間小;
l 所有任務(wù)駐留在同一地址空間(任務(wù)間通訊快而容易,上下文切換快,但一個(gè)任務(wù)崩潰會(huì)影響別的任務(wù));
l 所有任務(wù)運(yùn)行在超級(jí)(supervisor)模式(沒有哪個(gè)系統(tǒng)調(diào)用具有壓倒一切的優(yōu)勢(shì),所有的設(shè)備都作為普通子程序調(diào)用);
l 在主機(jī)上編寫代碼和編譯;在目標(biāo)機(jī)上進(jìn)行調(diào)試和執(zhí)行;
1.1.2 tornado 開發(fā)工具
l CrossWind:
源程序(C 或 C++ 以及匯編程序等)的調(diào)試工具。 CrossWind結(jié)合了圖形方式和命令行方式的最大特點(diǎn)。 最普通的調(diào)試方式,例如斷點(diǎn)設(shè)置和程序執(zhí)行控制,可 以通過便捷的點(diǎn)擊方式實(shí)現(xiàn)。同樣,程序顯示框和數(shù) 據(jù)偵察窗也提供了一個(gè)直接的可視窗口來觀察應(yīng)用程 序中最關(guān)鍵的一部分。如果需要更復(fù)雜的調(diào)試,CrossWind 也提供了命令行的方式來調(diào)用它提供的各種命令。
l Browser:
可對(duì)系統(tǒng)對(duì)象(任務(wù)、消息隊(duì)列、信號(hào)量等)和存儲(chǔ) 器使用情況進(jìn)行觀察的瀏覽器?梢苑奖愕乇O(jiān)視用戶的 目標(biāo)系統(tǒng)。Browser匯總了應(yīng)用進(jìn)程,內(nèi)存消耗和一個(gè)目 標(biāo)內(nèi)存的映射。通過 Browser,用戶可以觀察信號(hào)量、 消息隊(duì)列、內(nèi)存分配、看門狗計(jì)時(shí)器、堆棧使用情況、 目標(biāo) CPU使用率、對(duì)象模塊結(jié)構(gòu)和符號(hào)表以及每個(gè)任務(wù)的詳細(xì)信息。
l WindSh:
提供從宿主機(jī)到目標(biāo)機(jī)之間的一個(gè)命令 shell。WindSh 是一種非常受歡迎的開發(fā)工具,它具有很強(qiáng)的交互性和可操作性,允許用戶調(diào)用內(nèi)存中的應(yīng)用程序模塊或是 VxWorks模塊中的任何例程。它不但具有一般命令語言的功能,而且也具有 C 語言的設(shè)計(jì)特點(diǎn),能夠解釋幾乎任何 C 語言表達(dá)式, 執(zhí)行大多數(shù) C 語言算子,解析符號(hào)表數(shù)據(jù)。對(duì)初用者來說,WindSh學(xué)習(xí)起來比較簡(jiǎn)單,使用比較方便,對(duì)熟練用戶而言,則有較為高級(jí)的手段可以應(yīng)用。
l WindView:
非常出色的系統(tǒng)可視診斷和分析工具?煞浅H菀椎赜^察各任務(wù),中斷程序之間的相互作用。它是在嵌入式系統(tǒng)應(yīng)用開發(fā)期間的可視工具。
l VxSim:
快速原型仿真器?稍谟布O(shè)備未完成之前,在宿主機(jī)上對(duì)應(yīng)用程序進(jìn)行仿真分析。
l Project Facility:
工程管理工具,配制應(yīng)用程序或vxworks本身。