BOA技術(shù)在車(chē)輛感知網(wǎng)絡(luò )中的應用研究
3 嵌入式BOA技術(shù)
BOA是單任務(wù)的HTTP服務(wù)器,與其他傳統的Web服務(wù)器不同的是當有連接請求到來(lái)時(shí),它并不為每個(gè)連接單獨創(chuàng )建進(jìn)程,也不通過(guò)復制自身進(jìn)程來(lái)處理多鏈接,而是通過(guò)建立HTTP請求列表來(lái)處理多路HTTP連接請求,同時(shí)它只為CGI程序創(chuàng )建新的進(jìn)程,這樣就在最大程度上節省了系統資源,這對嵌入式系統來(lái)說(shuō)是關(guān)鍵。同時(shí)它還具有自動(dòng)生成目錄、自動(dòng)解壓文件等功能,因此,BOA具有很高的HTTP請求處理速度和效率,在嵌入式系統中具有很高的應用范圍。GoAhead就是這樣一類(lèi)Web Server的工程應用軟件。目前有支持GoAhead的嵌入式操作系統包括Windows CE,pSOS,Embedded Linux,uCOS,VxWorks,QNX等。這種嵌入式BOA技術(shù)的Web Server支持ASP,嵌入式JavaScript,標準CGI,內存中的CGI處理GoForms,擴展的API,每秒可處理大于50個(gè)請求。支持硬件構架ARM7,ARM9等,并滿(mǎn)足VxWorks操作系統和GoAhead工程運行的需要。本文引用地址:http://dyxdggzs.com/article/160073.htm
3.1 面向車(chē)聯(lián)網(wǎng)BOA技術(shù)條件
首先關(guān)鍵部件本身能夠ARM7/ARM9硬件構架控制,這是一個(gè)基本條件,如圖5所示。在本例中采用ARM7作為主要控制硬件平臺部分。
操作系統是應用軟件正常工作的平臺,BOA屬于應用軟件的類(lèi)型,它具備Web Setver功能屬性。為了完成這個(gè)工作,需要借助能夠應用在VxWorks平臺上的GoAhead軟件。移植GoAhead關(guān)鍵是讓VxWorks在A(yíng)RM7硬件平臺上具有很好的運行狀態(tài),故此需要開(kāi)發(fā)板級支持包(BSP),用于建立操作系統與硬件之間的中間層。然后移植TFFS(Tme File Format System)文件系統,這樣VxWorks操作系統映像文件、GoAhead的工程映像文件及Web文檔就可以運行在嵌入式系統硬件平臺上。
當目標板中需設計一個(gè)用于接受用戶(hù)指令的進(jìn)程,加入到系統的多個(gè)正在運行的進(jìn)程當中,系統采用稱(chēng)為ROUND-ROBIN的調度方式進(jìn)行輪轉調度。
3.2 GoAhead的移植方法
為方便程序調試和系統集成,分別對EOS(Embedded Operation System)環(huán)境和應用程序進(jìn)行配置。首先,進(jìn)行移植準備。建立一個(gè)可下載的(downloadable)的VxWorks工程,調試成功后再將VxWorks映像和GoAhead.out文件一起上傳到tffsl中,在VxWorks的usrAppInit()函數中加載goahead.out文件,然后再啟動(dòng)Web Server。
UsrAppInit中的關(guān)鍵代碼如下:
對于完成的正常能夠運行的項目,在瀏覽器中輸入地址http://192.168.1.1/controltree.html即可以訪(fǎng)問(wèn)/tffs1/webs/con troltree.html文件。
評論