一種嵌入式Web服務(wù)器的設(shè)計(jì)方案
(2)嵌入式Web服務(wù)器的實(shí)現(xiàn)
1)網(wǎng)絡(luò)接口的實(shí)現(xiàn)
網(wǎng)絡(luò)接口是Web服務(wù)器與外界交流的接口。操作系統(tǒng)提供網(wǎng)絡(luò)協(xié)議棧的支持,最主要是TCP/IP以及socket套接字系統(tǒng)函數(shù)庫。
網(wǎng)絡(luò)接口使用操作系統(tǒng)提供的socket函數(shù)族建立可遠(yuǎn)程通信的套接字。它分兩部分,一部分在系統(tǒng)初始化的時(shí)候建立,另一部分在HTTP引擎模塊里面實(shí)現(xiàn)。網(wǎng)絡(luò)接口模塊的功能描述為:首先建立socket.socket是BSOUnix提出的進(jìn)程間通信(IPC)機(jī)制,它是一種雙向的通信接口,使得可以在兩個(gè)不同進(jìn)程(通常是網(wǎng)絡(luò)上的不同節(jié)點(diǎn)的進(jìn)程)之間可以直接通信。
2)中心處理模塊
中心處理模塊是嵌入式W e b服務(wù)器的核心。它進(jìn)行全局的控制和管理。它通過accept()接收HTTP請求,調(diào)用read將請求接收到本地,然后進(jìn)行請求解析。根據(jù)請求的內(nèi)容,判斷是屬于動態(tài)內(nèi)容還是靜態(tài)內(nèi)容,如果是動態(tài)內(nèi)容則調(diào)用相應(yīng)的動態(tài)處理函數(shù),如果是靜態(tài)內(nèi)容則訪問VFS獲得相應(yīng)的內(nèi)容。然后將獲得的內(nèi)容包裝成為HTTP響應(yīng),返回給客戶端。中心處理模塊還實(shí)現(xiàn)控制管理信息和容錯(cuò)機(jī)制。
3)動態(tài)文件預(yù)處理器
Web服務(wù)器必須有交互能力才是有實(shí)際意義的服務(wù)器程序。目前大多數(shù)的Web服務(wù)器都是利用CGI(Common Gateway Interface,通用網(wǎng)關(guān)接口)來實(shí)現(xiàn)應(yīng)用程序的接口。本論文從嵌入式系統(tǒng)的角度出發(fā),實(shí)現(xiàn)了一種內(nèi)部的應(yīng)用程序接口。
動態(tài)文件預(yù)處理器所實(shí)現(xiàn)的功能是將普通的Web動態(tài)資源轉(zhuǎn)變成為可編譯的函數(shù)代碼。設(shè)動態(tài)文檔為f.dtm,它包含內(nèi)容{x,f(a)}.其中x為靜態(tài)的內(nèi)容,F(xiàn)()為應(yīng)用程序,a為通過解析HTTP請求得出的參數(shù)。動態(tài)文件預(yù)處理器將f.dtm轉(zhuǎn)變成為f_dtm.c.它的內(nèi)容為(f_dtm()},它是一個(gè)函數(shù),實(shí)現(xiàn)功能為輸出{x,f(a)}.其中f(a)是f(a)的實(shí)際輸出,而x‘是輸出靜態(tài)內(nèi)容的動作。
4.嵌入式Web服務(wù)器的主要應(yīng)用
嵌入式Web服務(wù)器是應(yīng)用在嵌入式系統(tǒng)上的Web服務(wù)器架構(gòu)。它的主要應(yīng)用是設(shè)備管理和應(yīng)用程序的網(wǎng)絡(luò)擴(kuò)展。
嵌入式Web服務(wù)器作為一個(gè)后臺程序直接在嵌入式設(shè)備上運(yùn)行,用戶通過網(wǎng)絡(luò)對設(shè)備配置、控制、監(jiān)測,保證設(shè)備安全、有效地運(yùn)作。
Web接口使得用戶可以在任何一臺有互聯(lián)網(wǎng)接入能力的帶有Web瀏覽器的設(shè)備訪問到該嵌入式設(shè)備。Web服務(wù)器提供應(yīng)用程序接口可以擴(kuò)展Web的應(yīng)用。這種設(shè)備管理方式不僅起到監(jiān)測、控制的功能,而且根據(jù)設(shè)備的特點(diǎn)可以更加入性化和智能化。它使對遠(yuǎn)程設(shè)備的操作從監(jiān)控(Monitor)變成為管理(Manage)。其中基于嵌入式WEB服務(wù)器的視頻監(jiān)控系統(tǒng)現(xiàn)已成為視頻監(jiān)控系統(tǒng)的主流技術(shù),在嵌入式系統(tǒng)中集成嵌入式Web視頻服務(wù)器,采用嵌入式實(shí)時(shí)多任務(wù)操作系統(tǒng);內(nèi)置一個(gè)嵌入式Web服務(wù)器。攝像頭送來的視頻信號數(shù)字化后由高效壓縮芯片壓縮,通過內(nèi)部總線送到內(nèi)置的Web服務(wù)器,網(wǎng)絡(luò)上用戶可以直接用瀏覽器觀看Web服務(wù)器上的攝像機(jī)圖像,授權(quán)用戶還可以控制攝像機(jī)、云臺、鏡頭的動作或?qū)ο到y(tǒng)配置進(jìn)行操作。
另一個(gè)應(yīng)用是應(yīng)用程序網(wǎng)絡(luò)擴(kuò)展。Web服務(wù)已成為支撐現(xiàn)代應(yīng)用程序技術(shù)和系統(tǒng)核心組件,現(xiàn)今約87%的企業(yè)用戶都希望為他們的程序添加上基于Web的用戶接口。嵌入式Web服務(wù)器很好地提供了Internet網(wǎng)絡(luò)的接口,將應(yīng)用程序和Web接口結(jié)合起來,是應(yīng)用程序網(wǎng)絡(luò)擴(kuò)展的解決方案。
評論