1. 如何使用VxWorks
使用target server連接前提:
1.vxworks編譯前載入wdb組件
2.bsp設置wdb 鏈接串口或者網口
3.hostwdb工具tornadoworkbench都自帶
支持任務優先順序間片輪詢即任務按優先順序類優先順序高任務優先執行優先順序相同候按照間片輪換執行CPU頻率高於咱用戶所任務都執行且保證同任務執行先區別
2. 什麼是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 年進入中國,廣泛應用於通信、國防、工業控制、醫療設備等嵌入式實時應用領域。它是研究嵌入式實時操作系統的一個極好對象。
3. 什麼是VxWorks操作系統
近我操作系統Tornado集發環境用戶提供支持C、C++語言交叉編譯器類庫編譯器包括GNUC/C++編譯器Diab C/C++編譯器圖形化工程管理工具非便效便VxWorks操作系統、組件及工程編譯參數進行配置核工具包括VxSim模擬器WindView軟體邏輯析儀WindShell命令行執行工具CrossWind集調試器Browser系統象檢查工具些工具非適用便發調試編輯器受推崇設置外部編輯器 VxWorks性能優越發調試便利強技術支持價格昂
4. vxworks 使用什麼編譯器
我了解只有 gnu,樓上的回答很全面啊。
5. 請詳細介紹一下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 年進入中國,廣泛應用於通信、國防、工業控制、醫療設備等嵌入式實時應用領域。它是研究嵌入式實時操作系統的一個極好對象。
6. 請教VxWorks的.o庫文件的編譯方法
查看ldpentium命令幫助吧 可以達到你的目的
1)把多個.c文件編譯成對應的.o文件,然後匯總編譯成一個.out文件;
2)把多個.c文件編譯成對應的.o文件;
3)把多個.c文件編譯成對應的.o文件,然後匯總編譯成一個.a文件;(把這個匯總的庫文件拿到其它工程中使用,一編譯就報錯)
能否通過修改Makefile文件,達到".c"+"small.o" = "big.o"的目的。
7. 如何把openssl庫在VxWorks下進行編譯或者說把openssl庫編譯成vxworks下能用的.a庫文件,如何去做
下一個完整版的cygwin,免費開源的東西,官網上就有下的
然後將工程文件拷入cygwin工作目錄
在cygwin控制台下CD到工程目錄
與上面那些步驟同時,先進入Tornado的host/x86-win32/bin目錄,把該目錄下的cygwin1.dll刪除或者重命名(建議保留,因為Tornado編譯還要用這個),然後把這個bin目錄設置到windows的path環境變數中。記下bin目錄下所用的編譯器cc和歸檔程序ar的名字(比如PPC的架構就叫ccppc和arppc)
再在cygwin控制台下輸入 CC=ccppc AR=arppc ./configure 運行(PPC為例,如果為其他架構等號後面的值做相應修改)
等配置完畢後打開生成的Makefile文件 找到-IInclude這一個flag修改成-I/cygwindriver/e/tornado/target/h (這里目錄也只是舉例,根據自己情況修改)
再之後加上-I/lib/include
保存
再在cygwin控制台下輸入make運行
這時候應該就可以開始編譯了
但是光做這些修改可能還是會多多少少的報錯
移植細節我這一時半會也沒辦法細說 只能自己看報錯來改了
8. 請教vxworks編譯的問題。
你用的sde gcc編譯,與workbench的標准gcc編譯代碼不兼容。
要能用,只能用同一個編譯器編譯,就是用workbench編個.a才行。