趙書田+劉海姣
摘 要: 當前桌面動態Web應用系統存在移動設備屏幕小、帶寬低、不方便輸入等弊端,在工作中可能會出現布局混亂、功能失效的問題,用戶體驗性不好。為此,設計了一種新的基于JavaScript的動態Web應用系統,給出動態Web應用系統體系結構,其由用戶層、JavaScript引擎層、Web服務層及數據層構成,介紹了系統總體結構和硬件架構。詳細分析了S3C44BOX芯片,給出JTAG接口和RS 485通信模塊的設計過程。實驗結果表明,該系統加載性能和程序執行效率高,安全性強。
關鍵詞: JavaScript; 動態Web; 應用系統; 通信模塊設計
中圖分類號: TN915?34; TP311.3 文獻標識碼: A 文章編號: 1004?373X(2017)15?0044?03
Abstract: The current desktop dynamic Web application systems have the problems (such as chaotic layout and disabled function) at work and poor user experience due to the disadvantages of small screen of mobile device, low bandwidth and inconvenient input. Therefore a new dynamic Web application system based on JavaScript was designed. The system architecture of the dynamic Web application system is composed of the user layer, JavaScript engine layer, Web service layer and data layer. The overall structure and hardware architecture of the system are introduced. The S3C44BOX chip is analyzed in detail. The design process of JTAG interface and RS 485 communication module is given. The experimental results show that the proposed system has high system loading performance, high execution efficiency, and strong security.
Keywords: JavaScript; dynamic Web; application system; communication module design
0 引 言
近年來,Web技術發展迅猛,網絡逐漸走進人們的生活和工作中。Web應用系統的用戶量眾多,且終端類型繁雜,用戶需求各異[1?2]。怎樣使Web應用系統適應PC、手機及ipad等各種硬件設備和不同瀏覽器平臺的訪問,達到用戶要求,是當前亟需解決的問題[3]。尤其是在3G業務發展迅速的今天,迫切需要一種有效的、適應能力強的Web應用系統[4]。
本文設計了一種新的基于JavaScript的動態Web應用系統,給出所設計動態Web應用系統體系結構,介紹了系統總體結構和硬件架構。實驗結果表明,所提系統加載性能和程序執行效率高,安全性強。
1 基于JavaScript的動態Web應用系統設計
1.1 基于JavaScript的Web體系結構
JavaScript是一種依據對象和事件驅動的腳本語言,其主要是為了和HTML結合使用,和頁面元素進行互動,防止高頻率的頁面刷新,為用戶提供更好的服務。JavaScript是通過嵌入至標準HTML語言中實現的,其能夠避免HTML語言自身的弊端,性能很高[5?6]。
JavaScript的主要優勢如下:
(1) JavaScript屬于解釋性腳本語言,便于編寫,無需預先編譯;
(2) JavaScript是面向對象的,能夠依據其建立所需的對象進行開發,還可使用其內置對象;
(3) JavaScript具有事件驅動特性,能夠達到Web應用系統前端開發交互頁面的要求;
(4) JavaScript安全性較高,代碼僅可在用戶客戶端瀏覽器運行;
(5) JavaScript具有平臺無關性,這是由于其通過瀏覽器解釋執行,在各種操作平臺下均可運行。
動態Web應用系統的設計宗旨為盡可能提高用戶的服務質量,當前用戶的要求越來越高,本節依據JavaScript的優點,將其作為動態Web應用系統的設計語言。
基于JavaScript的動態Web應用系統體系結構主要包括用戶層、JavaScript引擎層、Web 服務層及數據層四層,用圖1進行描述。
用戶層作為客戶端,主要用于顯示用戶請求、Web服務層返回的數據以及矢量數據。JavaScript引擎層和用戶層及Web服務層相連,主要用于完成和Web 服務層的通信、應用開發等任務,為整個體系的核心。Web服務層主要用于對JavaScript引擎層異步請求、業務請求和響應進行處理。數據層主要用于數據庫的管理。
1.2 動態Web應用系統總體設計
本文設計的基于JavaScript的動態Web應用系統主要由硬件和軟件部分構成。硬件是動態Web應用系統軟件環境運行的基礎,其為系統軟件的工作提供平臺與信息交換接口。而系統軟件是整個Web應用系統的控制核心,能夠對系統的正常工作進行控制,為人機交互提供信息[7]。圖2描述的是基于JavaScript的動態Web應用系統的總體結構。
1.3 系統硬件架構設計
系統硬件架構如圖3所示。JTAG45接口和以太網相連,以實現端口測試。通過外部SRAM對已經接收到的和即將要發送的數據以及系統中的變量進行保存,通過FLASH對MAC地址、IP地址等信息進行保存。系統開始運行時,首先對MAC地址、IP地址等信息進行讀取,再對網卡芯片RTL8019AS進行初始化處理,等待數據抵達[8]。在網卡芯片RTL8019AS接收到請求數據包后,系統將出現外部中斷,依據當前接收數據包中含有的幀的類型進行相應處理,同時將對應的回答幀傳輸至以太網控制器,通過以太網控制器傳輸至以太網絡。完成上述處理后,系統等待接收下一個數據包,繼續進行上述過程,如此循環。整個系統的通信是通過通信電路實現的。
1.4 MUC S3C44BOX芯片介紹
三星公司生產的S3C44BOX是常用的ARM7TDMI內核的片上系統,該芯片穩定性高、整體性能強大,是一種高性價比的微處理器。S3C44BOX采用全新的SAMBAI總線結構,不僅有ARM7TDMI內核的基本功能,還有豐富的外圍功能,設計人員可忽略復雜的外圍電路,成本低、效率高[9]。
1.5 JTAG接口設計
JTAG接口是一種國際標準測試協議,用于測試訪問端口。JTAG通過對可編程控制器在線編程,以及對寄存器進行邊界掃描實現系統的調試,提高了系統開發效率。JTAG接口有16引腳與20引腳,本節選用16引腳的方式,其電路圖用圖4進行描述,圖中JTAG接口引腳處和電阻相連,主要是為了保證調試時的安全穩定性。
在進行調試時,JTAG可按照需要確定訪問處理器的內核還是片上外設,選擇依據取決于NRESET,若該引腳是高電平,則對片上外設進行訪問;反之,若該引腳是低電平,則對處理器內核進行訪問,而NRESET高低電平之間的轉換是利用跳線完成的。
1.6 通信模塊設計
本節依據MODBUS協議,選用RS 485通信方式,這主要是因為RS 485通信方式成本低、結構簡單且數據傳輸速度快。本節選擇最高傳輸速率可達560 KB/s的RS 485通信芯片ADM2483作為通信模塊的核心芯片,其電路圖如圖5所示。該芯片的驅動器為限擺率驅動器,減少了不合理的終端匹配以及接頭形成的誤碼。ADM2483芯片具有失效保護功能,驅動器可對短路電流進行約束,同時能夠利用熱關斷電路把驅動器輸出置為高阻狀態,避免能耗過大。
2 實驗結果分析
本節從Web應用加載性能和程序執行效率兩個方面對本文方法的有效性進行驗證。實驗將HTML Web應用系統和C++ Web應用系統作為對比進行實驗。
2.1 Web應用加載性能測試
Web應用和本地應用最大的差異是即時下載性。受網絡傳輸速率的約束,若一次下載的文件過大,則下載時間將很長,用戶滿意度將大大降低,導致網站訪問量下降。所以,Web應用加載性能可通過文件大小的增長率進行衡量。
本節對Calculator,5lnARow,RGB三款應用進行測試,對實驗前文件大小進行記錄。分別將本文系統、HTML Web應用系統和C++ Web應用系統應用于三款應用中,對應用后的文件大小進行記錄,求出文件大小的增長因子,并對程序中關鍵代碼段的路徑空間規模進行記錄。實驗結果如表1所示。
分析表1可以看出,應用本文系統后文件大小降低,而應用HTML Web應用系統和C++ Web應用系統后,文件大小增加,空間需求加大,且本文系統路徑空間規模最大,會給攻擊者帶來不確定性,降低攻擊者的攻擊能力,大大增加了攻擊難度,提高系統安全性。
2.2 執行效率測試
本節將html5_demo與html5_demo_Pro作為研究對象,從運行結果對本文系統的執行效率進行驗證。html5_demo與html5_demo_Pro是繪圖應用,將其幀速率設置成50 f/s,運行時間設置成8 s,執行后會在顯示屏上顯示已經繪制的圖像個數,通過圖像個數對執行效率進行衡量。共運行5次,記錄5次本文系統、HTML Web應用系統和C++ Web應用系統繪制的圖像數量,結果如表2所示。
分析表2可以看出,針對同一次測試、兩種應用,本文系統繪制數量一直高于HTML Web應用系統和C++ Web應用系統,說明本文系統有很高的執行效率。
3 結 論
本文設計了一種新的基于JavaScript的動態Web應用系統,給出系統體系結構,介紹了系統總體結構和硬件架構。實驗結果表明,本文系統加載性能和程序執行效率高,安全性強。
參考文獻
[1] 李晶瑩,王方雄,侯英姿,等.基于HTML5/JavaScript的WebGIS功能界面設計與開發[J].微型機與應用,2016,35(7):19?21.
[2] 姜艷.一種基于JavaScript框架的混合應用開發技術[J].網絡新媒體技術,2016,5(4):59?64.
[3] 劉秀秀,潘梁,郭志川,等.基于Web運行環境的Android原生應用管理研究[J].網絡新媒體技術,2015,4(4):35?40.
[4] 房鼎益,黨舒凡,王懷軍,等.具有時間多樣性的JavaScript代碼保護方法[J].計算機應用,2015,35(1):72?76.
[5] 年雁云,翟世常,薛晨光.基于WebGIS的渤海漁業服務系統設計與開發[J].遙感技術與應用,2015,30(2):391?398.
[6] 周曉,鄭定超,方玖琳.基于UM220的北斗接收機及WEB終端設計[J].計算機測量與控制,2016,24(3):238?240.
[7] 孫曉鵬,文學虎,王蕾,等.基于Web的地理國情監測統計圖制作系統設計與實現[J].價值工程,2015,34(9):309?310.
[8] 姚瑤,王戰紅,石磊.基于頁面聚類的Web概念化模型研究[J].科學技術與工程,2014,14(25):272?276.
[9] 李潔,俞研,吳家順.基于動態污點分析的DOM XSS漏洞檢測算法[J].計算機應用,2016,36(5):1246?1249.