VxWorks 是
美國 Wind River System 公司( 以下簡稱風河 公司 ,即 WRS 公司)推出的一個實時操作
系統。Tornado 是WRS 公司推出的一套實時操作系統
開發環境,類似Microsoft Visual C,但是提供了更豐富的調試、防真環境和
工具。
VxWorks操作系統有以下部件組成:
? 內核(wind):
? 多任務調度(采用基于優先級搶占方式,同時支持同優先級任務間的分
時間片調度)
? 任務間的同步
? 進程間
通信機制
? 中斷處理
? 定時器和
內存管理機制
? I/O 系統
VxWorks 提供了一個快速靈活的與 ANSI C 兼容的 I/O 系統,包括 UNIX
標準的Basic I/O(creat(), remove(), open(),close(), read(), write(), and ioctl().),Buffer I/O (fopen(), fclose(), fread(), fwrite(), getc(), putc()) 以及POSIX 標準的異步 I/O。VxWorks 包括以下驅動
程序:
網絡驅動、管道驅動、RAM盤驅動、SCSI驅動、鍵盤驅動、顯示驅動、磁盤驅動、并口驅動等
?
文件系統
支持四種文件系統: dosFs,rt11Fs,rawFs 和 tapeFs
支持在一個單獨的 VxWorks 系統上同時并存幾個不同的文件系統。
? 板級支持包 BSP(Board Support Package)
板級支持包向VxWorks操作系統提供了對各種板子的硬件
功能操作的統一的
軟件接口,它是保證VxWorks操作系統可移植性的關鍵,它包括硬件初始化、中斷的產生和處理、硬件時鐘和計時器管理、局域和總線內存地址映射、內存分配等等。 每個板級支持包括一個 ROM 啟動(Boot ROM)或其它啟動機制。
? 網絡支持:
它提供了對其它VxWorks系統和TCP/IP 網絡系統的\"透明\"訪問,包括與BSD套接字兼容的編程接口,遠程過程調用(RPC),SNMP(可選項),遠程文件訪問(包括客戶端和服務端的NFS機制以及使用RSH,FTP 或 TFTP的非NFS機制)以及BOOTP 和代理ARP、DHCP、DNS、OSPF、RIP。無論是松耦合的串行線路、標準的以太網連接還是緊耦合的利用共享內存的背板總線,所有的 VxWorks 網絡機制都遵循標準的 Internet
協議。
? 系列網絡產品:
? WindNet SNMP
? WindNet STREAMS
? WindNet 第三方產品,包括 OSI、SS7、ATM、Frame Relay、CORBA、ISDN、X.25、
? CMIP/GDMO、分布式網絡管理等。
這些產品擴展了VxWorks的網絡特性,并增強了嵌入式處理器的網絡特性
? 虛擬內存( VxVMI)與共享內存(VxMP)
VxVMI 為帶有 MMU 的目標板提供了虛擬內存機制。
VxMP 提供了共享
信號量,消息隊列和在不同處理器之間的共享內存區域。
? 目標代理(Target Agent)
目標代理遵循 WBD(Wind Debug)協議,允許目標機與主機上的 Tornado 開發工具相連。在目標代理的缺省
設置中,目標代理是以 VxWorks 的一個任務tWdbTask 的形式運行的。
Tornado 目標服務器(Target Server)向目標代理發送調試請求。調試請求通常決定目標代理對系統中其它任務的控制和處理。缺省狀態下,目標服務器與目標代理通過網絡進行通信,但是
用戶也可以改變通信方式。
? 實用庫
VxWorks 提供了一個實用例程的擴展集,包括中斷處理、看門狗定時器、消息登錄、 內存分配、字符掃描、線緩沖和環緩沖管理、鏈表管理和 ANSI C 標準。
? 基于目標機的工具
在 Tornado 開發系統中,開發工具是駐留在主機上的。但是也可以根據需要將基于目標機的Shell 和裝載卸載
模塊加入 VxWorks。
嵌入式Vxworks系統的主要
應用領域主要有以下幾方面:
1.數據網絡:如:以太網交換機、路由器、遠程接入服務器等
2.遠程通訊:如:
電信用的專用分組交換機和自動呼叫分配器,蜂窩電話系統等
3.醫療設備:如:放射理療設備
4.消費電子:如:個人數字助理等
5.交通運輸:如:導航系統、高速火車控制系統等
6.工業:如:機器人
7.航空航天:如:衛星跟蹤系統
8.多媒體:如:電視會議設備
9.計算機外圍設備:如:X
終端、I/O 系統等
總之,VxWorks的系統結構是一個相當小的微內核的層次結構。內核僅提供多任務環境、進程間通信和同步功能。這些功能模塊足夠支持VxWorks在較高層次所提供的豐富的性能的要求。