《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 實(shí)時操作系統(tǒng)VxWorks
實(shí)時操作系統(tǒng)VxWorks
互聯(lián)網(wǎng)
摘要: VxWorks組成部分VxWorks操作系統(tǒng)包括了進(jìn)程管理,、存儲管理,、設(shè)備管理,、文件系統(tǒng)管理,、網(wǎng)絡(luò)協(xié)議及系統(tǒng)應(yīng)用...
Abstract:
Key words :
VxWorks組成部分

VxWorks 操作系統(tǒng)包括了進(jìn)程管理、存儲管理,、設(shè)備管理,、文件系統(tǒng)管理、網(wǎng)絡(luò)協(xié)議及系統(tǒng)應(yīng)用等幾個部分,。VxWorks只占用了很小的存儲空間,,并可高度裁減,保證了系統(tǒng)能以較高的效率運(yùn)行,。 VxWorks由以下幾個主要部分組成:

1.高性能的實(shí)時操作系統(tǒng)核心 wind
VxWorks 的核心,,被稱作 wind,包括多任務(wù)調(diào)度(采用優(yōu)先級搶占方式),,任務(wù)間的同步和進(jìn)程間通信機(jī)制以及中斷處理,看門狗和內(nèi)存管理機(jī)制,。一個多任務(wù)環(huán) 境允許實(shí)時應(yīng)用程序以一套獨(dú)立任務(wù)的方式構(gòu)筑,,每個任務(wù)擁有獨(dú)立的執(zhí)行線程和 它自己的一套系統(tǒng)資源。進(jìn)程間通信機(jī)制使得這些任務(wù)的行為同步,、協(xié)調(diào),。

wind使用中斷驅(qū)動和優(yōu)先級的方式。它縮短了上下文轉(zhuǎn)換的時間開銷和中斷的時延,。在 VxWorks 中,,任何例程都可以被啟動為一個單獨(dú)的任務(wù),擁有它自己的上下文和 堆棧,。還有一些其它的任務(wù)機(jī)制可以使任務(wù)掛起,、繼續(xù)、刪除,、延時或改變優(yōu)先級,。 wind 核提供信號量作為任務(wù)間同步和互斥的機(jī)制。在 wind 核中有幾種類型的信號
量,,它們分別針對不同的應(yīng)用需求:二進(jìn)制信號量,、計(jì)數(shù)信號量、互斥信號量和 POSIX 信號量,。所有的這些信號量是快速和高效的,,它們除了被應(yīng)用在開發(fā)設(shè)計(jì)過 程中外,,還被廣泛地應(yīng)用在 VxWorks 高層應(yīng)用系統(tǒng)中。對于進(jìn)程間通信,,wind 核 也提供了諸如消息隊(duì)列,、管道、套接字和信號等機(jī)制,。

2.I/O 系統(tǒng)
VxWorks 提供了一個快速靈活的與 ANSI C 兼容的 I/O 系統(tǒng),,包括 UNIX 標(biāo)準(zhǔn)的緩 沖 I/O 和POSIX 標(biāo)準(zhǔn)的異步 I/O。VxWorks 包括以下驅(qū)動程序:網(wǎng)絡(luò)驅(qū)動,、管道驅(qū) 動,、RAM盤驅(qū)動、SCSI驅(qū)動,、鍵盤驅(qū)動,、顯示驅(qū)動、磁盤驅(qū)動,、并口驅(qū)動等,。

3.文件系統(tǒng)
VxWorks 提供的快速文件系統(tǒng)適合于實(shí)時系統(tǒng)應(yīng)用。它包括幾種支持使用塊設(shè)備(如磁盤)的本地文件系統(tǒng),。這些設(shè)備都使用一個標(biāo)準(zhǔn)的接口從而使得文件系統(tǒng)能夠被靈 活地在設(shè)備驅(qū)動程序上移植,。另外,VxWorks 也支持 SCSI 磁帶設(shè)備的本地文件系統(tǒng),。 VxWorks I/O 體系結(jié)構(gòu)甚至還支持在一個單獨(dú)的 VxWorks 系統(tǒng)上同時并存幾個不同的 文件系統(tǒng),。
VxWorks 支持四種文件系統(tǒng): dosFs,rt11Fs,,rawFs 和 tapeFs,。
另一方面,普通數(shù)據(jù)文件,,外部設(shè)備都統(tǒng)一作為文件處理,。它們在用戶面前有相同的 語法定義,使用相同的保護(hù)機(jī)制,。這樣既簡化了系統(tǒng)設(shè)計(jì)又便于用戶使用,。

4.板級支持包 BSP(Board Support Package)
板級支持包對各種板子的硬件功能提供了統(tǒng)一的軟件接口,它包括硬件初始化,、中斷 的產(chǎn)生和處理,、硬件時鐘和計(jì)時器管理、局域和總線內(nèi)存地址映射,、內(nèi)存分配等等,。 每個板級支持包括一個 ROM 啟動(Boot ROM)或其它啟動機(jī)制。

5.網(wǎng)絡(luò)設(shè)施
VxWorks的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,,它提供了對其它網(wǎng)絡(luò)和 TCP/IP 網(wǎng)絡(luò)系統(tǒng)的"透明"訪問,,包括與BSD套接字兼容的編程接口,,遠(yuǎn)程過程調(diào)用(RPC),SNMP(可選項(xiàng)),,遠(yuǎn)程文件 訪問(包括客戶端和服務(wù)端的NFS機(jī)制以及使用RSH,,F(xiàn)TP 或 TFTP的非NFS機(jī)制)以及 BOOTP 和 ARP 代理。無論是松耦合的串行線路,、標(biāo)準(zhǔn)的以太網(wǎng)連接還是緊耦合的利用 共享內(nèi)存的背板總線,,所有的 VxWorks 網(wǎng)絡(luò)機(jī)制都遵循標(biāo)準(zhǔn)的 Internet 協(xié)議。

6.先進(jìn)的系列網(wǎng)絡(luò)產(chǎn)品
VxWorks內(nèi)的WindNet 是先進(jìn)的,、系列的網(wǎng)絡(luò)產(chǎn)品,,這些產(chǎn)品擴(kuò)展了VxWorks的網(wǎng)絡(luò)特性 并增強(qiáng)了嵌入式處理器的網(wǎng)絡(luò)特性。 WindNet SNMP
WindNet STREAMS
WindNet 第三方產(chǎn)品,,包括 OSI,、SS7、ATM,、Frame Relay,、CORBA、ISDN,、X.25,、
CMIP/GDMO、分布式網(wǎng)絡(luò)管理等,。

7.虛擬內(nèi)存(即 VxVMI 選項(xiàng))與共享內(nèi)存(即 VxMP 選項(xiàng))
VxVMI 為帶有 MMU 的目標(biāo)板提供了虛擬內(nèi)存機(jī)制,。VxMP 提供了共享信號量,消息隊(duì)列 和在不同處理器之間的共享內(nèi)存區(qū)域,。

8.目標(biāo)代理(Target Agent)
目標(biāo)代理遵循 WBD(Wind Debug)協(xié)議,允許目標(biāo)機(jī)與主機(jī)上的 Tornado 開發(fā)工具相 連,。在目標(biāo)代理的缺省設(shè)置中,,如圖3所示,目標(biāo)代理是以 VxWorks 的一個任務(wù)-- tWdbTask 的形式運(yùn)行的,。

Tornado 目標(biāo)服務(wù)器(Target Server)向目標(biāo)代理發(fā)送調(diào)試請求,。調(diào)試請求通常決定 目標(biāo)代理對系統(tǒng)中其它任務(wù)的控制和處理。缺省狀態(tài)下,,目標(biāo)服務(wù)器與目標(biāo)代理通過網(wǎng) 絡(luò)進(jìn)行通信,,但是用戶也可以改變通信方式。

9.實(shí)用庫
VxWorks 提供了一個實(shí)用例程的擴(kuò)展集,,包括中斷處理,、看門狗計(jì)時器、消息登錄,、內(nèi)存分配,、字符掃描,、線緩沖和環(huán)緩沖管理、鏈表管理和 ANSI C 標(biāo)準(zhǔn),。

10.基于目標(biāo)機(jī)的工具
在 Tornado 開發(fā)系統(tǒng)中,,開發(fā)工具是駐留在主機(jī)上的。但是也可以根據(jù)需要將基于目標(biāo)機(jī)的Shell 和裝載卸載模塊加入 VxWorks,。
 
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。