嵌入式軟件的新平臺——風(fēng)河 VxWorks 6.0
在當今競爭異常激烈的市場(chǎng)環(huán)境中,產(chǎn)品上市速度(Time-to-Market)和開(kāi)發(fā)成本直接關(guān)系到企業(yè)經(jīng)營(yíng)的成敗。同時(shí),由軟件技術(shù)所產(chǎn)生的附加價(jià)值在電子產(chǎn)品中所占據的地位越來(lái)越重要。因此,高效率、低成本的軟件開(kāi)發(fā)平臺與方法成為電子產(chǎn)業(yè)企業(yè)所必需追求的重要目標。然而,相互不兼容的軟件和開(kāi)發(fā)工具每天都在迫使電子產(chǎn)品開(kāi)發(fā)商付出巨大的成本。如果能夠選擇高效率的軟件開(kāi)發(fā)平臺,并在整個(gè)企業(yè)范圍內全面、統一地推廣應用,就可以有效地降低產(chǎn)品開(kāi)發(fā)成本,同時(shí)加快產(chǎn)品的上市速度。
在電子產(chǎn)品制造業(yè),美國風(fēng)河系統公司的VxWorks 是經(jīng)過(guò)多年市場(chǎng)驗證的高效率、高可靠性的RTOS(實(shí)時(shí)操作系統)。如今,它已經(jīng)不再是單純的RTOS,而是演變成為一個(gè)面向整個(gè)企業(yè)的高效率、高可靠性的設備專(zhuān)用軟件開(kāi)發(fā)平臺,這就是風(fēng)河公司最近剛剛發(fā)布的風(fēng)河通用平臺VxWorks版(Wind River General Purpose Platform, VxWorks® 版)組件,簡(jiǎn)稱(chēng)GPP 3.0 VxWorks版。
GPP 3.0 VxWorks版風(fēng)河GPP VxWorks版(3.0)整合了強壯的實(shí)時(shí)操作系統、功能強大的集成式開(kāi)發(fā)環(huán)境(IDE)、靈活的中間件解決方案,以及在用戶(hù)需要擴展其能力時(shí)可獲得的開(kāi)發(fā)培訓和專(zhuān)業(yè)服務(wù)。
穩健的基石——VxWorks 6.0
GPP 3.0以當今業(yè)界最廣泛應用的實(shí)時(shí)操作系統VxWorks為基礎。最新版本的VxWorks 6.0可以支持多種不同的開(kāi)發(fā)項目同時(shí)進(jìn)行,也可以更好地節省開(kāi)發(fā)時(shí)間和費用。項目開(kāi)發(fā)生命周期中不同階段之間的轉換交接工作,通常都存在著(zhù)很大的風(fēng)險,而GPP 3.0 VxWorks版可以極大地降低這種風(fēng)險。
新一代VxWorks增加了一些功能強大的新特性,并專(zhuān)注于開(kāi)放性、性能、可靠性和互操作性。而且,VxWorks 6.0具有后向兼容的特性,這就使得用戶(hù)可以放方便地將原有的VxWorks 5.X代碼不需任何改變直接移植過(guò)來(lái),從而可以在實(shí)現整體開(kāi)發(fā)平臺升級的同時(shí)繼續利用原有軟件資產(chǎn)的價(jià)值。
在VxWorks 6.0之中包含了最新的存儲保護技術(shù)、基于標準流程的編程模式、可根據客戶(hù)需求定制的應用程序接口(API)、錯誤探測與報告機制、可擴展的消息傳遞架構、雙模式Ipv6/Ipv4網(wǎng)絡(luò )棧等,而且可以支持非VxWorks應用,所有這些新技術(shù)都為電子產(chǎn)品專(zhuān)用軟件開(kāi)發(fā)者帶來(lái)了新的價(jià)值。
VxWorks 6.0的重要目標之一就是簡(jiǎn)化從VxWorks 5.5至VxWorks 6.0的移植。為此,VxWorks 6.0的內核完全支持VxWorks 5.5內核操作環(huán)境。為VxWorks 5.5所開(kāi)發(fā)或移植的BSP、驅動(dòng)程序和內核應用程序只需進(jìn)行重新編譯便可運行于VxWorks 6.0內核下。 默認情況下,對VxWorks 6.0內核進(jìn)行構建時(shí)與VxWorks 5.5相同。
此外,VxWorks 6.0還提高了對開(kāi)放式標準的支持。這在很大程度上推動(dòng)了開(kāi)放式源代碼應用程序和VxWorks 6.0之間的兼容性。增強的POSIX一致性進(jìn)一步簡(jiǎn)化了開(kāi)放源代碼和第三方軟件向VxWorks的移植,基于標準進(jìn)程的編程模型降低了用于在VxWorks 6.0上編寫(xiě)新應用程序的學(xué)習曲線(xiàn),對IPv6的支持非常方便下一代網(wǎng)絡(luò )設備的開(kāi)發(fā),基于標準套接字和模塊化的消息通道提供了一個(gè)公共的通信接口。
VxWorks 6.0 提供了最先進(jìn)的內存保護機制,用戶(hù)可通過(guò)基于MMU的內存保護機制來(lái)提高其設備可靠性。除了傳統的VxWorks內核執行模式之外,VxWorks還推出了基于進(jìn)程的用戶(hù)模式執行應用程序。從而使內核免受運行于VxWorks實(shí)時(shí)進(jìn)程(RTP)下用戶(hù)模式應用程序的影響。并且它們相互之間也不受影響。
基于MMU的內存保護機制將內核與用戶(hù)模式應用程序分離、將應用程序彼此分離,從而提高了設備可靠性?;谶M(jìn)程的標準編程模式簡(jiǎn)化了應用程序開(kāi)發(fā)。對MMU-less處理器也提供實(shí)時(shí)進(jìn)程支持,從而通過(guò)采用低成本處理器降低了設備成本。
內存保護機制帶來(lái)了將應用程序分割到受保護內存空間的挑戰。消息通道是一種新式的面向連接的雙向消息機制,它允許任務(wù)跨內存邊界進(jìn)行通信,從而補充了VxWorks中所提供的傳統通信機制。位于不同進(jìn)程或內核中的任務(wù)可彼此建立與其位置無(wú)關(guān)的連接。
雙模IPv4/Ipv6網(wǎng)絡(luò )堆棧特性是構成VxWorks 6.0整體所需的一部分。它代表VxWorks默認網(wǎng)絡(luò )協(xié)議棧的一次重要革新,其目的在于在內核和網(wǎng)絡(luò )應用程序之間引入一個(gè)更強的隔離,以及支持最新的VxWorks 6.0應用環(huán)境,并對以前版本具有完全向后兼容性。
風(fēng)河網(wǎng)絡(luò )協(xié)議棧能完全利用新的操作系統功能,通過(guò)支持IPv4和IPv6雙協(xié)議套件而使TCP/IP協(xié)議棧得到增強。高性能和可裁剪性是這一協(xié)議棧的兩個(gè)主要特性。IPv4/IPv6雙網(wǎng)絡(luò )協(xié)議棧是基于KAME/FreeBSD TCP/IP版本移植而來(lái)。
盡管VxWorks 6.0提供了支持MMU的內存保護,但它仍然使用所有早期VxWorks版本中所使用的非重疊地址空間。非重疊內存模型促進(jìn)了對傳統VxWorks代碼的向后兼容,它可提供許多優(yōu)點(diǎn)。例如:無(wú)需多余的內存射入(mapped in)或射出(mapped out)操作,及多余的緩存刷新,這就保證了高確定性和低延時(shí);在MMU-less配置下不需要內存轉換表,這一點(diǎn)節省了內存空間并(在某些CPU下)提升了內存訪(fǎng)問(wèn)性能;地址指針具唯一性,支持現有VxWorks驅動(dòng)程序和應用程序的重復使用,并簡(jiǎn)化了新驅動(dòng)程序和應用程序的開(kāi)發(fā);同時(shí)支持有MMU和無(wú)MMU的處理器使設備制造商能夠更靈活地選擇處理器以滿(mǎn)足功能和預算需求。
風(fēng)河提供了一個(gè)故障管理框架,用以幫助客戶(hù)隔離、診斷和糾正在開(kāi)發(fā)和測試階段遇到的錯誤。利用這一框架,客戶(hù)可方便地管理故障,減少了對故障重現的依賴(lài)。VxWorks 6.0故障管理框架具備故障檢測與報告機制,它為用戶(hù)調試設備軟件提供了一個(gè)現成的基礎平臺,用戶(hù)可進(jìn)一步擴展以設計更可靠的設備。
VxWorks 6.0的處理器抽象層(PAL)使操作系統增強了支持類(lèi)似硬件體系結構系列的能力,與以前的VxWorks版本相比,這里所需要的工作量更少。體系結構特定的PAL為每個(gè)體系結構系列定義了功能接口,并且在一定程度上抽象了操作系統對硬件特性的功能性需求。這一點(diǎn)對于應用程序用戶(hù)是透明的,一個(gè)體系結構系列PAL的出現加速了對該系列處理器變種的支持,并縮短了VxWorks 6.0客戶(hù)的產(chǎn)品上市時(shí)間。對MMU、CACHE和大物理地址的抽象化是VxWorks 6.0的航向標。
這樣一來(lái),就可以在一個(gè)體系結構系列內進(jìn)行處理器快速移植以使VxWorks 6.0客戶(hù)具有更多的設計選擇,并縮短新處理器的上市時(shí)間;另外,在體系結構之間更為容易地進(jìn)行應用程序移植,這為產(chǎn)品壽命周期管理提供了更好的靈活性;
VxWorks 6.0對文件系統進(jìn)行了升級,從而增強了VxWorks文件系統的功能、性能和可靠性。這些升級后的功能包括:緩存直寫(xiě)選項確保將數據提交給文件系統,提高了可靠性;利用“清除位(clean bit)”改進(jìn)了CheckDisk,允許文件系統跳過(guò)CheckDisk以提高啟動(dòng)性能;可選的面向事務(wù)的(Transactional)文件系統層,提供了輕量級的日志(Journaling)文件系統以確保100%的可靠性;提供了對Unicode文件名的支持功能。
開(kāi)發(fā)工程助推器——Wind River Workbench 2.2
集成化的開(kāi)發(fā)環(huán)境意味著(zhù)一個(gè)開(kāi)發(fā)工作團隊運用同一種語(yǔ)言和工具,不論在任何開(kāi)發(fā)項目的任何工作階段,都可以共同為所有的開(kāi)發(fā)項目做出貢獻。
Wind River Workbench提供了一種開(kāi)放式、基于標準的集成化設備軟件開(kāi)發(fā)環(huán)境。它使得企業(yè)能夠標準化它的整個(gè)設備軟件開(kāi)發(fā)過(guò)程到一個(gè)公共平臺下,以其獨特的將可靠性, 功能性以及端對端集成性整合到一起方式,大幅優(yōu)化了工程人員、項目團隊和企業(yè)的工作效率。
與VxWorks 6.0配套的IDE組件是Wind River Workbench 2.2,這也是Wind River GPP VxWorks版的重要組成部分之一。
Wind River Workbench 2.2可以最大限度地優(yōu)化電子產(chǎn)品制造企業(yè)的人力資源并使他們做出最佳的表現。其中的訣竅在于把他們的時(shí)間、能力和經(jīng)費都用于增加電子產(chǎn)品的特殊使用價(jià)值,而不是把這些資源浪費在低級、普通、一般的工作中。憑借在設備軟件開(kāi)發(fā)領(lǐng)域多年積累的豐富經(jīng)驗,風(fēng)河平臺之中包括了功能齊全、相互兼容并且運行十分可靠的中間件,可以滿(mǎn)足許多不同行業(yè)標準的特殊需求。而且,由于多年來(lái)許多行業(yè)都在廣泛應用VxWorks實(shí)時(shí)操作系統,已經(jīng)形成了一個(gè)穩定而良性的合作伙伴群體,這就使得Wind River GPP VxWorks版具有非常好的完備性,很快就可以得到開(kāi)發(fā)項目所需的所有資源,從而可以更好地控制用戶(hù)的經(jīng)費預算和產(chǎn)品上市時(shí)間??梢哉f(shuō),有了Wind River GPP VxWorks版,再加上Wind River的合作伙伴全體和專(zhuān)業(yè)的培訓以及針對用戶(hù)開(kāi)發(fā)項目的指導方案,你就可以解決設備軟件開(kāi)發(fā)的所有問(wèn)題了。
風(fēng)河公司業(yè)內領(lǐng)先的實(shí)時(shí)操作系統最新版本VxWorks 6.0,風(fēng)河全集成開(kāi)發(fā)環(huán)境最新版本W(wǎng)orkbench 2.2,以及具有的強大性能可支持閃存文件系統、分布式消息傳遞和共享式背板內存的中間件解決方案,這是GPP 3.0 VxWorks版的三大組成部分,這是風(fēng)河公司近年來(lái)最重要的產(chǎn)品發(fā)布活動(dòng),將會(huì )把嵌入式系統開(kāi)發(fā)帶入“全面生命周期管理”的設備軟件時(shí)代。
評論