⑴ 請詳細介紹一下VxWorks
國外商用嵌入式實時操作系統 VxWORKS 介紹
1 綜述
WRS(Wind River System) 公司是國際著名的嵌入式實時操作系統的供應商。其產品 VxWroks 早期運行在 VRTX 、 pSOS 及自身運行較慢的 WIND 內核等實時內核之上,從 5.0 發行起,不再支持別的內核,只運行自己的 WIND 內核(重寫的 WIND 內核)。這個系統的基本設計思想是要充分利用 VxWORKS 和 Unix/Windows 的優點,使之與嵌入式軟體相互補充達到最優。
Unix 和 Windows 雖然用戶界面友好、開發工具豐富,但是由於嵌入式實時系統的時間、空間的局限性,他們不適用於實時應用開發。傳統的實時操作系統提供的用於開發的環境資源(非實時組件)又非常貧乏。 VxWORKS 使嵌入式系統開發人員能在嵌入開發環境下更好的使用 Unix/Windows 。
VxWORKS 能夠一方面處理緊急的實時事務,另一方面,讓主機用於程序開發和非實時的事務。開發者可以根據應用需要恰當地裁減 VxWORKS 。開發時可以包含附加的網路功能加速開發過程,在產品最終版本中,再去掉附加功能,節省系統資源。
WRS 公司還提供最新一代的 IDE---- 主機上的集成開發環境 Tornado, 開發者通過 Tornado 來編輯、編譯、連接和存儲實時代碼,但是實時代碼的運行和調試都在 VxWORKS 上進行。最終生成的目標映像可以脫離主機系統和網路,單獨運行在 ROM 、磁碟(軟 / 硬)或 FLASH 上。主機系統和 VxWORKS 可以在一個混合應用中共同工作:通過網路聯接,主機使用 VxWORKS 系統作為實時伺服器。
1995 年開發出的 Tornado ,贏得電子設計新聞該年度的「嵌入式開發軟體創新獎「( Electronic Design News' 「Embedded Development Software Innovation of the Year」 award ) [9] 。
2 特點
• 支持多種硬體環境
VxWORKS 操作系統支持的 CPU 包括: Power PC 、 68K 、 CPU32 、 Space 、 i960 、 x86 、 Mips 等等;同時支持 RISC 、 DSP 技術。
• 微內核結構,任務間切換時間短,中斷延遲小,網路流量大。
• 較好的可剪裁能力,可裁減組件超過 80 個,用戶通過交叉開發環境方便地進行配置。
• 支持應用程序的動態連接和動態下載,使開發者省去了每次調試都將應用程序與操作系統內核進行連接和下載的步驟,縮短了編輯 / 調試的周期。
• 較好的兼容性:兼容 POSIX1003.1b 標准( Portable Operating System Interface for computer Environments,= Portable Operating System UNIX , IEEE 1003.1 ) 。
• 高可靠性、高可用性、高安全性。
3 組成
VxWORKS 包括進程管理、存儲管理、設備管理、文件系統管理、網路協議及系統應用等部分,佔用很小的存儲空間,支持高度裁減,保證系統能以較高的效率運行。 VxWORKS 體系結構如圖 1.5 所示 [9][10][59] 。
VxWORKS 包括以下部分:
• Wind 內核
Wind 內核包括基於優先順序的搶占式多任務調度機制、任務間的同步和進程間的通訊機制以及中斷處理、看門狗和內存管理機制。不僅提供多種信號量支持任務間同步和互斥的機制,而且提供消息隊列、管道、套接字和信號等機制支持進程間通信。
• I/O 系統
VxWORKS 提供了快速靈活的與 ANSI C 兼容的 I/O 系統,包括 UNIX 標準的緩沖 I/O 和 POSIX 標準的非同步 I/O 。還包括多個驅動程序(包括網路驅動、管道驅動、 RAM 盤驅動、 SCSI 驅動、磁碟驅動、顯示驅動、鍵盤驅動、並口驅動等)。
• 文件系統
VxWORKS 提供了快速文件系統適合於實時系統應用。它擁有多種支持使用塊設備的本地文件系統。這些設備都使用一個標准介面,從而使得文件系統能夠靈活地在設備驅動程序上移植。
• 板級支持包 BSP(Board Support Package)
板級支持包對各種板的硬體功能提供了統一的軟體介面,它包括硬體初始化、中斷的產生和處理、硬體時鍾和計時器管理、局域和匯流排內存地址映射、內存分配等等。每個板級支持包括一個 ROM 啟動( Root ROM )或其他啟動機制。
• 網路設施與產品
• 虛擬內存與共享內存
VxWORKS 的 VxWMI 為帶有 MMU ( Memory Mapping Unit )的目標板提供了虛擬內存機制。 VxMP 提供了共享信號量、消息隊列和不同處理器之間的共享內存區域。
• 目標代理( Target Agent )
目標代碼遵循 WDB(Wind Debug) 協議,允許目標機與主機上的 Tornado 開發工具相連。如圖 1.6 所示,目標代理是以 VxWORKS 的一個任務的形式運行。
Tornado 目標伺服器向目標代理發送調試請求。調試請求通常決定目標代理對系統中其他任務的控制和處理。默認狀態下,目標伺服器與目標代理通過網路進行通信,用戶也可以改變通信方式。
VxWORKS 操作系統自 1996 年進入中國,廣泛應用於通信、國防、工業控制、醫療設備等嵌入式實時應用領域。它是研究嵌入式實時操作系統的一個極好對象。
⑵ VxWorks7.0中包含集成開發環境嗎
需要自己配置。
Step 1. 安裝vmware
首先需要安裝vmware, 版本沒有什麼限制,我裝的是vmware 8.0,關於怎麼安裝就不細說了,一切都用默認的就ok。安裝完成後需要配置下vmware虛擬網卡1(VMnet1)的IP,設置為192.168.102.1,後面會用到這個IP設置,後面會用到這個設置。如下所示:
⑶ 什麼是vxworks
vxworks
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的系統結構是一個相當小的微內核的層次結構。內核僅提供多任務環境、進程間通信和同步功能。這些功能模塊足夠支持VxWorks在較高層次所提供的豐富的性能的要求。