日本在线www-日本在线播放一区-日本在线不卡免费视频一区-日本在线不卡视频-成人影院久久久久久影院-成人影院一区二区三区

ABB25年10月
關(guān)注中國自動(dòng)化產(chǎn)業(yè)發(fā)展的先行者!
工業(yè)智能邊緣計(jì)算2025年會(huì)
2025工業(yè)安全大會(huì)
CAIAC 2025
OICT公益講堂
當(dāng)前位置:首頁 >> 案例 >> 案例首頁

案例頻道

基于Web的嵌入式設(shè)備管理



    隨著互聯(lián)網(wǎng)絡(luò)硬件、軟件的迅猛發(fā)展,嵌入式系統(tǒng)被廣泛應(yīng)用到工作和生活的各個(gè)領(lǐng)域中,如何對這些設(shè)備進(jìn)行管理成為嵌入式系統(tǒng)軟件開發(fā)中的一個(gè)重要方面。用戶只有通過設(shè)備所提供的管理接口對共進(jìn)行配置、管理和監(jiān)控,因些管理接易用程度和效率成為衡量設(shè)備優(yōu)劣的重要標(biāo)準(zhǔn)之一。在嵌入式設(shè)備中加入 HTTP服務(wù)能將其轉(zhuǎn)化成Web Server,可以向Internet或內(nèi)部網(wǎng)提供基于Web的圖形化管理接口,用戶可以使用瀏覽器作為接口來訪問嵌入式設(shè)備。這樣不僅使設(shè)備的易用性大大提高,而且可以省去專用管理軟件,從而方便地進(jìn)行統(tǒng)一管理。

    1 Wind Web Server介紹

    VxWorks是WindRiver公司開發(fā)的具有工業(yè)體體育場地位的高位能實(shí)時(shí)操作系統(tǒng)內(nèi)核,它是一個(gè)運(yùn)行在目標(biāo)機(jī)上的高性能、可裁減的嵌入式實(shí)時(shí)操作系統(tǒng),具有先進(jìn)的網(wǎng)絡(luò)功能,支持市面上逾90%的處理器。該公司的網(wǎng)絡(luò)協(xié)議棧產(chǎn)品Wind Web Server提供了功能強(qiáng)大的基于Web方式的網(wǎng)絡(luò)管理系統(tǒng),可以無縫地集成到任何基于VxWorks的嵌入式應(yīng)用中。

    Wind Web Server具有以下特性:

    ?完全支持HTTP 1.1標(biāo)準(zhǔn)

    ?不需要文件系統(tǒng)

    ?支持Java Applets、圖像文件、聲音文件等

    ?可通過標(biāo)記支持SSI

    ?URL處理可定制

    ?靈活配置的模塊結(jié)構(gòu)

    ?腳本小(7~40KB)

    ?支持用戶/用戶組/密碼認(rèn)證

    ?有IP過濾機(jī)制

    ?支持CGI

    ?可記錄日志

    ?支持別名

    ?支持服務(wù)器推送(Server push)技術(shù)。

    Wind Web Server采用模塊設(shè)計(jì),可以方便地進(jìn)行裁剪以滿足應(yīng)用的特殊要求。根據(jù)配置,Wind Web Server需要7~40KB的內(nèi)存。在嵌入式系統(tǒng)中硬件資源寶貴,有時(shí)并不需要文件系統(tǒng)。Wind Web Server提供了一個(gè)工具Pagepack,可以在編譯和連接時(shí)將Web內(nèi)容放在程序代碼中,從而可以存儲(chǔ)在ROM中。

    2 Wind Web Server結(jié)構(gòu)

    嵌入式系統(tǒng)的使用的資源是受限的,在許多飛速下甚至沒有外部存儲(chǔ)系統(tǒng),這一點(diǎn)要求嵌入式系統(tǒng)的 Web服務(wù)器與UNIX和Windows平臺(tái)上的Web服務(wù)器有很大不同。Wind Web Server采用模塊化和可伸縮的系統(tǒng)結(jié)構(gòu),允許用戶進(jìn)行裁剪以滿足資源的不同限制。

    Wind Web Server由以下關(guān)鍵部分組成:

    ?Web服務(wù)器核心

    ?HTTP請求處理模塊(RPM)

    ?RPM調(diào)度程序

    ?服務(wù)器端符號(hào)表

    ?API函數(shù)

    2.1 Web服務(wù)器核心和RPM調(diào)度程序

    Web服務(wù)器核心作為一個(gè)任務(wù)運(yùn)行在目標(biāo)系統(tǒng)中。提供網(wǎng)絡(luò)服務(wù)綁定、Socket函數(shù)調(diào)用和初始化參數(shù)的設(shè)置等。RPM調(diào)度程序決定怎樣響應(yīng)HTTP請求,即決定了HTTP請求的地址和RPM的對應(yīng)關(guān)系。

    2.2 HTTP請求處理模塊(RPM)

    HTTP請求處理模塊分為兩大類:系統(tǒng)RPM和用戶RPM。其中系統(tǒng)RPM執(zhí)行HTTP請求的基本處理,包括:記錄日志、處理別名與MIME頭、IP地址檢查、密碼驗(yàn)證和訪問限制。而用戶RPM處理具體的頁面請求,包括:文件系統(tǒng)RPM、SSI(Server Side Include)RPM、CGI PRM、用戶函數(shù)調(diào)用RPM、服務(wù)器推送RPM等。另外用戶可以使用自定義RPM完成一些特殊的處理過程。

    2.3 服務(wù)器端符號(hào)表

    Wind Web Server主要通過符號(hào)表來支持Web存取目標(biāo)機(jī)中的變量,每個(gè)符號(hào)表包含如下屬性:

    ?Address 內(nèi)存地址

    ?Name 名稱

    ?Descrip 描述

    ?Type 數(shù)據(jù)類型

    ?Num Elems 變量個(gè)數(shù)

    ?GET Routine 讀加調(diào)函數(shù)

    ?GET Param 調(diào)回調(diào)數(shù)數(shù)的參數(shù)

    ?SET Routine 寫回調(diào)函數(shù)

    ?SET Param 寫回調(diào)函數(shù)的參數(shù)

    ?Access ID 變量的訪問控制

    將網(wǎng)頁請求和符號(hào)表聯(lián)系起來的方法有兩種:擴(kuò)展 SSI和服務(wù)器推送。

    (1)擴(kuò)展SSI的實(shí)現(xiàn)

    可以在 HTML網(wǎng)頁中使用標(biāo)記,每個(gè)標(biāo)記都與存在于Wind Web Server符號(hào)表中的一個(gè)讀或?qū)懟卣{(diào)函數(shù)相對應(yīng)。當(dāng)網(wǎng)頁為Wind Web Server請求時(shí),包含變量值等動(dòng)態(tài)信息的讀或?qū)懟卣{(diào)函數(shù)輸出替代了網(wǎng)頁上的標(biāo)記,從而動(dòng)態(tài)顯示或提交數(shù)據(jù)內(nèi)容。這項(xiàng)技術(shù)同時(shí)提高了在HTML頁中處理表單的能力。傳統(tǒng)的Web Server只能處理事先確定的缺省的表單元素,在Wind Web Server,實(shí)際值可以從符號(hào)表中得以,然后在HTML頁被提交到客戶端前插入到表單中。Wind Web Server還提供了一個(gè)工具formpack,用于在包含表單的普通網(wǎng)頁中加入標(biāo)記。

    Wind Web Server中已經(jīng)包含標(biāo)準(zhǔn)的SSI實(shí)現(xiàn),如輸入框、下拉列表、復(fù)選框等。另外,用戶可以加入自定義的SSI函數(shù)以處理特定的HTTP請求。

    (2)服務(wù)器推送的實(shí)現(xiàn)

    HTTP是一種請求響應(yīng)協(xié)議,如果要對服務(wù)器端進(jìn)行持續(xù)的監(jiān)控,必須不斷地發(fā)送請求刷新頁面,這將大大加重服務(wù)器的負(fù)擔(dān)。Wind Web Server能夠使用內(nèi)嵌的Linve Control模塊在頁面中的Java applet與服務(wù)器端的符號(hào)表之間建立一條持續(xù)的交線鏈路,使服務(wù)器端符號(hào)表變量的改變無需客戶端請求而直接對客戶端發(fā)布,從而實(shí)現(xiàn)了服務(wù)器推送的目的。

    2.4 HTTP請求處理過程

    一個(gè)典型的 HTTP請求處理包含以下步驟:

    (1)接收到HTTP請求后,服務(wù)器取出包含目的URL的請求地字符串,將其存入描述HTTP請求的數(shù)據(jù)結(jié)構(gòu)中;

    (2)如果該請求是頁面提交,即如下形式:http://target/xxx.xxx.htm?para1=xxx?2=xxx,則將提交參數(shù)存入環(huán)境變量QUERY_STRING中。

    (3)調(diào)用所有已配置的系統(tǒng)RPM,如果返回正確,則繼續(xù);

    (4)調(diào)用頁面對應(yīng)的用戶PRM,如果該頁面中包含SSI標(biāo)記,則調(diào)用SSI RPM;

    (5)查找標(biāo)記,例如:則調(diào)用標(biāo)準(zhǔn)SSI函數(shù)ShowValue()對符號(hào)表中的變量usersymbol進(jìn)行處理,然后將得到的變量值插入要返回的HTML頁面中,傳送至客戶端。

    3 并發(fā)中的關(guān)鍵技術(shù)

    3.1 自定義用戶RPM

    通過調(diào)用函數(shù) httpRomConfAdd(HTTP_M_GET,"/user_rpm/"User_rpm),把形如http://x.x.x.x/user_rpm/*.htm?para1=xxx?2=xxx的請求用函數(shù)框架如下:

    short User_rpm(HTTP_REQ_ID reqId{

    char* para;

    httpStatusSet (reqId,HTTP_OK);

    httpHeaderGenerate (reqId); /*產(chǎn)生THHP頭*/

    para=httpGetEnv(reqId,"QUERY_STRING"); /*得到輸入?yún)?shù)*/

    …… /*處理輸入?yún)?shù)及準(zhǔn)備輸出結(jié)果*/

    httpStringPut (reqId,"..."); /*開始輸出*/

    …… /*輸出全部HTML語句*/

    httpStringPut(reqId,"..."); /*結(jié)束輸出*/

    return(RPM_DONE);

    }

    3.2 自定義SSI處理函數(shù)

    通過調(diào)用函數(shù) httpSsiFnConfAdd("user ssi",User_ssi)建立自定義SSI處理函數(shù)User_ssi。當(dāng)而面中包含如下標(biāo)記時(shí):,服務(wù)器將調(diào)用函數(shù)User_ssi(參數(shù)為para),并將輸入插到準(zhǔn)備返回的HTTP頁面中。函數(shù)User_rpm的實(shí)實(shí)框架如下:

    short User_ssi(HTTP_REQ_ID redid,char * szArg){

    char *para;

    parg=szArg; /*得到輸入?yún)?shù)*/

    …… /*處理輸入?yún)?shù)及準(zhǔn)備輸出結(jié)果*/

    httpStringPut (reqId,"…"); /*輸出全部HTML語句*/

    return(HTTP_OK);

    }

    3.3 et Java applet實(shí)現(xiàn)服務(wù)器推送

    Live Control模塊的API提供如下Java類的實(shí)現(xiàn):

    ?DirectRegistry Applet與符號(hào)表進(jìn)行通訊的基本部件

    ?DirectReadProxy 從DirectRegistry中獲取符號(hào)表變量的改變

    ?DirectWriteProxy 更新DirectRegistry中符號(hào)表變量的值

    ?DataObjectChangeListenet、DataObjectStatusListener用于監(jiān)聽的容器

    用 Java applet實(shí)現(xiàn)服務(wù)器推送的框架如下:

    (1)創(chuàng)建用于連接服務(wù)器端的DirectRegistry類的實(shí)例:

    myServerURL=new URL(http://"+getDocumentBase().getHost()+"/lc/");

    myRegistry=new DirectRegistry(myServerURL);

    (2)創(chuàng)建用于監(jiān)聽符號(hào)表變量的Java部件:

    myWidget=new TextWidget("0",10);

    (3)創(chuàng)建DirectReadProxy和DirectWriteProxy的實(shí)例用于讀寫符號(hào)表變量mySymbol:

    myReadProxy=new DirectReadProxy("mySymbol");

    myWriteProxy=new DirectWriteProxy("mySymbol");

    (4)將Java部件myWidget加入myReadProxy和my Write Proxy,成為監(jiān)聽容器:

    myReadProxy.addDataObjectChangeListener(myWidget);

    myWriteProxy.addDataObjectChangeListener(myWidget);

    (5)將已創(chuàng)建的監(jiān)聽容器myReadProxy、myWriteProxy加入myRegistry中,完成Applet與服務(wù)器端Live Control模塊的連接:

    myRegistry.addPropertyChangeListener(myReadProxy);

    myRegistry.addPropertyChangeListener(myWriteProxy);

    另外,用戶可以創(chuàng)建自己的 Java部件和DataObject ChangeListener方法,以完成更高級(jí)的應(yīng)用。

    3.4 配置HTTP服務(wù)

    Wind Web Serrver可進(jìn)行裁剪用于不同的應(yīng)用環(huán)境,可配置的參數(shù)較多,同時(shí)參數(shù)之間相互影響。因此參數(shù)的配置是否妥當(dāng)將直接影響HTTP服務(wù)的性能,甚至導(dǎo)致HTTP服務(wù)不能正常工作。其中對Web Server內(nèi)存池的配置使用尤為關(guān)鍵,需要進(jìn)行仔細(xì)調(diào)整和多次測試。另外整個(gè)系統(tǒng)的網(wǎng)絡(luò)內(nèi)存池的容量也直接影響HTTP服務(wù)的性能,需要結(jié)合系統(tǒng)規(guī)模進(jìn)行配置。

    4 實(shí)例應(yīng)用

    在 ADSL匯接器系統(tǒng)軟件的開發(fā)過程中,使用Wind Web Server開發(fā)了基于Web的圖形化設(shè)備管理接口,用戶在任何地點(diǎn)只需使用瀏覽器就可以對設(shè)備進(jìn)行全面的管理,包括:

    ?可以對系統(tǒng)用戶認(rèn)證和管理,不同的用戶具有不同的操作權(quán)限;

    ?可以對系統(tǒng)進(jìn)行實(shí)時(shí)監(jiān)控,頁面依照機(jī)柜布局設(shè)計(jì)。設(shè)備面板和頁面上的各種信號(hào)燈同步變化,一目了然。同時(shí)可以在頁面上直接使用設(shè)備面板上的各種按鍵,操作方便。采用了服務(wù)器推送技術(shù),降低了網(wǎng)絡(luò)通信量和系統(tǒng)負(fù)擔(dān);

    ?可以對初如化數(shù)據(jù)進(jìn)行修改和保存;

    ?可以遠(yuǎn)程更新整個(gè)軟件系統(tǒng);

    ?可以隨時(shí)獲取和清除計(jì)費(fèi)信息。

    整個(gè)程序(含頁面代碼)共 200K 字節(jié)左右,任務(wù)的優(yōu)先級(jí)設(shè)為最低,不影響原系統(tǒng)的正常運(yùn)行,達(dá)到了很好的效果。

熱點(diǎn)新聞

推薦產(chǎn)品

x
  • 在線反饋
1.我有以下需求:



2.詳細(xì)的需求:
姓名:
單位:
電話:
郵件:
欧美a级大片| 成人免费高清视频| 午夜在线影院| 日本乱中文字幕系列| 欧美激情中文字幕一区二区| 亚洲第一页乱| 午夜激情视频在线观看| 一级女性大黄生活片免费| 黄色免费三级| 日本免费看视频| 色综合久久手机在线| 日韩中文字幕一区二区不卡| 韩国三级视频网站| 999久久狠狠免费精品| 高清一级片| 午夜在线观看视频免费 成人| 精品国产亚洲人成在线| 精品国产一区二区三区久久久狼| 亚洲 男人 天堂| 尤物视频网站在线观看| 韩国三级一区| 色综合久久天天综合| 欧美1卡一卡二卡三新区| 99色视频在线| 久久精品大片| 美女免费精品视频在线观看| 亚洲精品影院| 日韩专区亚洲综合久久| 台湾毛片| 亚洲第一视频在线播放| 美国一区二区三区| 精品国产香蕉伊思人在线又爽又黄| 欧美国产日韩久久久| 一a一级片| 久久精品大片| 天天做人人爱夜夜爽2020| 国产亚洲男人的天堂在线观看| 精品视频免费在线| 日本特黄一级| 亚洲女人国产香蕉久久精品| 九九久久国产精品大片| 九九精品在线播放| 欧美大片毛片aaa免费看| 二级片在线观看| 999精品在线| 99久久精品国产片| 中文字幕一区二区三区精彩视频| 毛片电影网| 午夜精品国产自在现线拍| 久久精品人人做人人爽97| 久久久成人网| 亚洲第一视频在线播放| 欧美a级大片| 色综合久久天天综合绕观看| 国产精品12| 亚欧乱色一区二区三区| 91麻豆爱豆果冻天美星空| 欧美1卡一卡二卡三新区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 成人免费观看的视频黄页| 亚洲天堂在线播放| 免费毛片基地| 欧美电影免费| 久久久久久久免费视频| 欧美日本韩国| 精品国产三级a∨在线观看| 精品国产亚洲人成在线| 国产成人精品影视| 久久国产精品永久免费网站| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产极品精频在线观看| 色综合久久天天综线观看| 亚洲精品永久一区| 国产91精品一区二区| 欧美激情一区二区三区视频高清| 韩国三级香港三级日本三级| 成人免费观看网欧美片| 可以免费看毛片的网站| 日韩专区第一页| 成人影视在线播放| 夜夜操天天爽| 亚洲第一色在线| 美女免费黄网站| 国产成人啪精品视频免费软件| 国产精品123| 国产一区二区精品久| 四虎影视精品永久免费网站| 国产91视频网| 日韩专区在线播放| 成人免费一级纶理片| 欧美国产日韩久久久| 色综合久久久久综合体桃花网| 久久精品店| 麻豆网站在线免费观看| 可以在线看黄的网站| 青青青草视频在线观看| 国产精品1024永久免费视频| 夜夜操天天爽| 四虎影视库| 天天做人人爱夜夜爽2020毛片| 国产美女在线观看| 精品久久久久久中文| 国产国语对白一级毛片| 可以免费看毛片的网站| 欧美另类videosbestsex| 日韩男人天堂| 国产91精品系列在线观看| 精品久久久久久影院免费| 999精品在线| 久久精品免视看国产成人2021| 成人免费网站久久久| 国产麻豆精品高清在线播放| 一a一级片| 日韩专区在线播放| 日韩中文字幕一区二区不卡| 日韩中文字幕在线亚洲一区| 深夜做爰性大片中文| 国产一区精品| 欧美一区二区三区在线观看 | 99热精品一区| 91麻豆tv| 国产美女在线一区二区三区| 黄色福利| 999久久狠狠免费精品| 999久久狠狠免费精品| 成人高清护士在线播放| 999久久狠狠免费精品| 久草免费在线色站| 日韩中文字幕一区| 天天做日日干| 精品视频一区二区三区免费| 黄视频网站免费| 精品视频在线观看一区二区 | 精品国产一区二区三区久| 精品国产一区二区三区久久久蜜臀| 麻豆网站在线看| 国产不卡在线播放| 精品久久久久久中文字幕一区 | 二级特黄绝大片免费视频大片| 日本免费乱理伦片在线观看2018| 欧美一级视频免费| 国产一区二区高清视频| 国产精品12| 国产91素人搭讪系列天堂| 亚洲 欧美 91| 国产美女在线一区二区三区| 亚洲第一页乱| 日韩中文字幕在线播放| 日韩欧美一二三区| 91麻豆tv| 韩国毛片 免费| 香蕉视频久久| 一级女性全黄生活片免费| 精品视频在线看| 二级特黄绝大片免费视频大片| 人人干人人草| 国产精品自拍亚洲| 国产成人精品在线| 成人影视在线播放| 免费国产在线视频| 欧美激情一区二区三区中文字幕| 麻豆午夜视频| 久久久成人网| 亚洲女人国产香蕉久久精品| 国产激情一区二区三区| 国产网站麻豆精品视频| 日韩中文字幕一区二区不卡| 欧美激情在线精品video| 亚洲精品中文一区不卡| 久久精品店| 91麻豆高清国产在线播放| 日韩在线观看免费完整版视频| 国产伦理精品| 国产福利免费观看| 欧美大片aaaa一级毛片| 你懂的日韩| 精品久久久久久影院免费| 麻豆午夜视频| 久草免费在线色站| 精品国产一区二区三区久久久狼| 久草免费在线视频| 国产精品自拍亚洲| 久久久久久久免费视频| 高清一级做a爱过程不卡视频| 黄视频网站免费| 久久99这里只有精品国产| 91麻豆精品国产高清在线| 亚洲 男人 天堂| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产一区二区精品在线观看| 99久久精品国产麻豆| 毛片成人永久免费视频| 国产伦理精品| 一级毛片视频免费| 午夜在线观看视频免费 成人| 国产精品自拍在线观看| 国产韩国精品一区二区三区| 欧美激情一区二区三区在线| 日韩在线观看视频黄| 四虎精品在线观看|