999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

DM365系統(tǒng)中Web參數(shù)傳遞機制的研究

2012-08-10 03:39:52孫萬源戴聲奎張冰冰
通信技術 2012年5期
關鍵詞:頁面嵌入式定義

孫萬源,戴聲奎,張冰冰

(華僑大學 信息科學與工程學院,福建 廈門 361021)

0 引言

在Web參數(shù)傳遞的過程中需要解決2個問題,其一是選擇一個適合系統(tǒng)的嵌入式服務器;其二是選擇一種動態(tài)Web[2-4]頁面的實現(xiàn)機制。目前在嵌入式系統(tǒng)中常用的服務器有3種:Boa、thttpd和httpd,其中httpd只支持靜態(tài)頁面,而thttpd在運行過程中所耗費的系統(tǒng)資源要遠大于 Boa,因此本文采用Boa[5]作為 DM365的 Web服務器。實現(xiàn)動態(tài) Web頁面一般有3種技術可供選擇:CGI、ASP和PHP。因為目前嵌入式linux對ASP,PHP等動態(tài)Web頁面技術支持還不完善,而 CGI技術已較為成熟,,本文采用了CGI[6-7]實現(xiàn)動態(tài)Web頁面。

在DM365系統(tǒng)中,用傳統(tǒng)的CGI運行機制傳遞參數(shù)會導致頁面跳轉使得客戶端無法穩(wěn)定的瀏覽監(jiān)控頁面,本文改進了CGI的運行機制,從而使頁面能夠實時監(jiān)控。

1 動態(tài)Web的作用

在DM365達芬奇系統(tǒng)中,TI已經設計出完整的方案使得視頻圖像能夠實時的采集并且播放,但是簡單的采集和播放顯然不能滿足當前視頻監(jiān)控的需要。在很多實際應用中,客戶需要在客戶端通過Web參數(shù)傳遞控制遠端的DM365設備(例如云臺的控制),以及一些視頻智能分析和處理(例如人臉識別,車牌識別,越界報警等等)。

由圖1能夠看到動態(tài)Web在系統(tǒng)中的作用,它承擔著主機端(DM365)向客戶端傳輸視頻流以及客戶端向主機端傳遞動態(tài)參數(shù)的任務。

圖1 嵌入式Web在監(jiān)控系統(tǒng)中的作用

2 Web服務器的實現(xiàn)

嵌入式Web服務器以TCP/IP協(xié)議為基礎,給客戶端瀏覽器和主機端硬件提供一個統(tǒng)一的接口,使得客戶端瀏覽器能夠像在本地一樣透明的管理和監(jiān)視設備的運行情況。嵌入式Web服務器主要功能有:響應多個客戶的實時HTTP請求,并為每個客戶建立連接;設備的實時管理和參數(shù)配置;對設備訪問的安全控制機制,包括SSL、用戶口令等;實現(xiàn)設備的故障智能報警。

2.1 Boa服務器的移植

Boa服務器是一個能夠運行在 linux[8-9]操作系統(tǒng)下,支持CGI、特別是嵌入式設備中的單任務Web服務器,源代碼公開、性能高,現(xiàn)將其移植到DM365系統(tǒng)中,具體步驟如下:

1)從http://www.Boa.org/下載Boa源碼、解壓到工作目錄。

2)進入 Boa/src目錄,修改 defines.h文件中SERVER_ROOT參數(shù)值:

馬連長把全連的班長、副班長排在了“敢死隊”前面,倪二泉自告奮勇,排在了第一,排在第三位的則是四班長陳山利。

#define SERVER_ROOT "/etc/Boa"。

3)在終端輸入#./configure得到makefile文件,修改makefile中編譯器的選項:

CC =gcc,改成: CC= arm_v5t_le-gcc;CPP = gcc-E,改成:CPP=arm_v5t_le-g++ -E。

4)在終端輸入#make編譯出可執(zhí)行程序Boa;輸入#arm_v5t_le-strip Boa去除調試信息,最終得到發(fā)布版本Boa,將其放入DM365文件系統(tǒng)中的/bin目錄下。

2.2 Boa服務器的配置

在 Boa服務器移植成功后需對其做相應的設置,將 workspace/Boa/目錄下的配置文件 Boa.conf復制到DM365文件系統(tǒng)中的/etc/Boa目錄下(和移植中第2步的SERVER_ROOT 保持一致),該文件重要配置如下:

3 實現(xiàn)動態(tài)Web的CGI技術

3.1 CGI的工作過程

CGI程序與Web服務器的通信、參數(shù)的傳遞是根據(jù)環(huán)境變量(QueryString)、命令行參數(shù)的設置和標準輸入輸出(stdin/stdout)來進行的。Web服務器提供客戶端瀏覽器和CGI程序數(shù)據(jù)交換的通道。交互過程如圖2所示。

圖2 Web服務器和CGI程序的交互

3.2 CGI的編程語言的選擇

CGI程序幾乎可以用任何的編程語言來實現(xiàn),例如linux的Shell、Perl、C語言等。但是由于C語言的跨平臺性,以及C語言程序設計的方便,本文采用C語言來作為CGI的開發(fā)語言,并采用CGIC函數(shù)庫開發(fā)CGI程序(CGIC庫是一種開源可以免費使用的 CGI庫函數(shù),它封裝了一些 C語言開發(fā)CGI程序所常用的操作)。

4 動態(tài)Web的編程實現(xiàn)

4.1 Web服務器網頁的編寫

在 Web頁面數(shù)據(jù)交互中常用的方式是表單提取,表單提取有3種方法:GET、POST和URL附上鏈接。GET方式一般用于獲取數(shù)據(jù),URL附上鏈接方式不安全,而POST方式是用于傳遞數(shù)據(jù),Web數(shù)據(jù)傳遞是客戶端向主機端傳遞數(shù)據(jù),故采用POST方式。以最簡單的在DM365中實現(xiàn)云臺協(xié)議中的右轉作為范例,編寫網頁[10],核心代碼如下:

其中form action定義表單提取時候進行的動作是訪問DM365文件系統(tǒng)中right.cgi,method定義表單提取方法是post,input type是定義提取的方式是submit,name定義表單的名字right,value定義表單的值right。當客戶端瀏覽器點擊submit提取表單的時候事實上是向 CGI程序傳入 name=value的值即“right=RIGHT”。

4.2 利用CGIC編寫CGI程序

CGIC函數(shù)庫從 www.boutell.com/cgic下載。CGIC函數(shù)庫包含了cgic.c,cgic.h等文件,由于所有的CGI程序都需要進行一些必要的初始化操作,比如分析數(shù)據(jù)檢查環(huán)境變量,這些都是在 cgic.c文件中定義,所以 CGIC庫提供了自己的 main()。在用 CGIC來開發(fā)自己的 CGI程序時就不能再使用main(),而只能使用 CGIC提供的 cgiMain()來開始自己的程序。現(xiàn)以4.1節(jié)所要訪問的right.cgi為例編寫CGI程序:

4.3 結果與分析

修改cgic目錄下makefile中的編譯器選項(同2.1節(jié)所用方法一樣),在終端下輸入#make將生成的right.cgi放入文件系統(tǒng)的/www/httpd/cgi-bin/目錄下,并將4.1節(jié)編寫的網頁放入/www/httpd/目錄下。啟動DM365開發(fā)板,在客戶端輸入DM365開發(fā)板的IP:192.168.1.168,在點擊表單right后,和DM365相連的云臺開始右轉,但是頁面會跳轉至http://192.168.1.168/cgi-bin/right.cgi,而在實時視頻監(jiān)控中,需要頁面始終保持在監(jiān)控頁面http://192.168.1.168中,不能發(fā)生跳轉。

5 CGI運行機制的改進

要使頁面始終保持在監(jiān)控頁面中,有兩種方法可以實現(xiàn):

1)在cgi程序中加入頁面跳轉語句,使得頁面在跳轉后能夠自動跳轉回監(jiān)控頁面。

具體代碼是在4.2編寫的CGIC程序中添加語句:

這段代碼設置cgi向HTML頁面打印的刷新時間為0秒,跳轉IP是192.168.1.168(監(jiān)控頁面IP)。但是具體測試的時候無法達到 0秒跳轉回監(jiān)控頁面,這是因為網絡傳輸和 cgi程序的運行會占用一部分時間,所以頁面會發(fā)生停頓現(xiàn)象,達不到實時監(jiān)控的效果。

2)在網頁編程中加入后臺運行的語句,使得頁面在訪問cgi程序的時候,開辟一個新線程使cgi程序以后臺方式運行,,具體需在4.1節(jié)的關鍵代碼處進行相應的修改:

和4.1節(jié)比較,多定義了一個標簽iframe,iframe元素會創(chuàng)建包含另外一個文檔的內聯(lián)框架。上述代碼是在form中定義一個外部打開的target=right,當表單提取的時候不會立即鏈接到form action所指向的地址中,而是在iframe中找到對應name=right,執(zhí)行 iframe對其定義的操作 style="display:none",即在執(zhí)行form action的時候不發(fā)生頁面跳轉。經過測試頁面不再發(fā)生跳轉,消除了頁面停頓的現(xiàn)象,符合實時監(jiān)控的要求。

6 結語

本文對Web參數(shù)傳遞中2個關鍵的環(huán)節(jié)(Web服務器的選取和Web動態(tài)頁面實現(xiàn)機制)進行了深入的分析,最終采用Boa服務器作為Web服務器,CGI作為實現(xiàn)的動態(tài)頁面機制。在文章的最后還以實現(xiàn)云臺右轉為例改進了傳統(tǒng)的動態(tài)頁面實現(xiàn)的方式,實驗結果表明,在動態(tài)參數(shù)進行傳遞時,頁面不發(fā)生任何變化,DM365監(jiān)控系統(tǒng)能夠實時監(jiān)控。

[1] 圣錢生,張桂英,吳有俊.基于 DaVinci的自動對焦算法研究及實現(xiàn)[J].通信技術,2012,45(01):56-58.

[2] 楊林,楊鵬,李長齊.Web 應用漏洞分析及防御解決方案研究[J].信息安全與通信保密,2011(02):58-63.

[3] 倪奕.基于 JBoss 實現(xiàn) Web 服務與通信業(yè)務整合[J].通信技術,2011,44(12):121-124.

[4] 韓鯤,薛輝.Web 數(shù)據(jù)庫的安全審計機制[J].信息安全與通信保密,2011(06):92-94.

[5] BENTHAM J.嵌入式系統(tǒng)Web服務器[M].北京:機械工業(yè)出版社,2003:256.

[6] 李磊.利用CGI程序實現(xiàn)動態(tài)W eb的方法[J].計算機科技與工程,2009,9(06):1611-1613.

[7] BERLIN D J.精通 CGI編程[M].北京:清華大學出版社,1998:1.

[8] 華清遠見嵌入式培訓中心.嵌入式 Linux應用程序開發(fā)標準教程[M].北京:人民郵電出版社,2009:1.

[9] 吳士力,劉奇,朱蘭.嵌入式 Linux應用開發(fā)全程解析與實踐[M].北京:機械工業(yè)出版社,2010:2.

[10] 祁大鵬.Dreamweaver CS4實用教程[M].北京:電子工業(yè)出版社,2010:1.

猜你喜歡
頁面嵌入式定義
大狗熊在睡覺
刷新生活的頁面
搭建基于Qt的嵌入式開發(fā)平臺
嵌入式軟PLC在電鍍生產流程控制系統(tǒng)中的應用
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
Altera加入嵌入式視覺聯(lián)盟
倍福 CX8091嵌入式控制器
自動化博覽(2014年4期)2014-02-28 22:31:15
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
山的定義
公務員文萃(2013年5期)2013-03-11 16:08:37
同一Word文檔 縱橫頁面并存
主站蜘蛛池模板: 成人免费午夜视频| 91在线免费公开视频| 四虎影视国产精品| 国产精品无码AV中文| 一本大道无码高清| 久久国产拍爱| 午夜欧美理论2019理论| 亚洲视频一区在线| 亚洲精品第五页| 国内嫩模私拍精品视频| 91福利一区二区三区| 国产福利在线观看精品| 国外欧美一区另类中文字幕| 亚洲第一色视频| 国产亚洲精| 国产精品无码影视久久久久久久| 综1合AV在线播放| 欧美日韩在线亚洲国产人| 亚洲无码不卡网| h视频在线观看网站| 欧美中出一区二区| 强奷白丝美女在线观看| 亚洲精品成人7777在线观看| 无码中文字幕乱码免费2| 精品亚洲欧美中文字幕在线看| 婷婷色中文网| 一区二区偷拍美女撒尿视频| 国产粉嫩粉嫩的18在线播放91| 国产乱子伦手机在线| 在线高清亚洲精品二区| 亚洲精品第一在线观看视频| 欧美日韩国产一级| 日本高清免费一本在线观看 | 91午夜福利在线观看精品| 日本高清免费不卡视频| 国内熟女少妇一线天| 国产精品三区四区| 亚洲精品人成网线在线| 99久久无色码中文字幕| …亚洲 欧洲 另类 春色| 国产精品护士| 国产精品太粉嫩高中在线观看| 国产精品密蕾丝视频| 成人va亚洲va欧美天堂| 成人精品在线观看| 国产成人亚洲无吗淙合青草| 亚洲高清资源| 亚洲综合精品第一页| 999精品色在线观看| 日韩天堂网| 国产精品无码翘臀在线看纯欲| 亚洲男人的天堂网| 国产女人18水真多毛片18精品| 欧美亚洲国产日韩电影在线| 啊嗯不日本网站| 三上悠亚在线精品二区| 欧美成人二区| 天堂久久久久久中文字幕| 欧洲在线免费视频| 婷婷午夜影院| 亚洲精品无码久久毛片波多野吉| 国产精品视频猛进猛出| 中文字幕首页系列人妻| 欧美成人区| 99热这里只有精品久久免费| 中字无码av在线电影| 国产精品香蕉在线观看不卡| 国内精品自在欧美一区| 成人综合久久综合| 又爽又黄又无遮挡网站| 91精品久久久久久无码人妻| 国产成人亚洲日韩欧美电影| 一本色道久久88| 青草精品视频| 欧美一道本| 激情六月丁香婷婷四房播| 精品1区2区3区| 黄色网站不卡无码| 国产91特黄特色A级毛片| 亚洲爱婷婷色69堂| 国产午夜福利亚洲第一| 啦啦啦网站在线观看a毛片|