| 研究生: |
林建宏 Lin, Jian-Hong |
|---|---|
| 論文名稱: |
XHTML5:基於HTML5之雲端計算環境X視窗遠端操作系統 XHTML5:An X Window Remote Operation System for Cloud Computing Environment Based on HTML5 |
| 指導教授: |
陳 敬
Chen, Jing |
| 學位類別: |
碩士 Master |
| 系所名稱: |
電機資訊學院 - 電腦與通信工程研究所 Institute of Computer & Communication Engineering |
| 論文出版年: | 2012 |
| 畢業學年度: | 100 |
| 語文別: | 中文 |
| 論文頁數: | 96 |
| 中文關鍵詞: | X視窗系統 、雲端運算 、行動裝置 |
| 外文關鍵詞: | X Window, HTML5, Canvas, WebSocket, Thin-Client |
| 相關次數: | 點閱:79 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
隨著嵌入式系統發展成熟,使得行動裝置日趨普及。受限於行動裝置運算能力與系統架構之多樣性,許多應用程式,例如:X視窗環境應用程式,無法直接運行於行動裝置平台。本論文實現一X視窗應用程式遠端操作系統,客戶端之使用者可使用瀏覽器為系統平台操作遠端系統伺服器執行之X視窗環境應用程式,無須安裝客戶端軟體抑或任何外掛程式。
本論文實作之X視窗應用程式遠端操作系統在系統伺服器端使用Web與WebSocket Server實作客戶端與伺服器端雙向溝通介面,並設計X Server Manager、Application Manager、Input Handler處理使用者需求與資料輸入;在系統客戶端則設計了系統頁面為使用者操作介面。本論文包含四項重點:(1)以繪圖指令方式繪製應用程式畫面;相較於以傳送圖片方式顯示應用程式畫面,傳送繪圖指令更能節省網路頻寬。(2)以瀏覽器為系統平台,無須安裝外掛程式;本論文使用HTML5之Canvas元素實現一繪圖函式庫,將應用程式畫面繪製於網頁顯示。(3)以Server Push傳送畫面更新資訊;本論文使用HTML5定義之WebSocket通訊協定作為客戶端與伺服器溝通機制,伺服器可主動傳送畫面更新資訊至客戶端,較Client Pull更具即時性。(4)支援同時多人連線;本論文設計使用者輸入與畫面對應機制,使不同使用者之輸入與畫面不互相干擾。
本論文的主要貢獻在於使用繪圖指令方式呈現遠端應用程式之畫面;此一方式可有效地減少網路資料傳輸量,並降低系統操作延遲性。使用者操作遠端執行之X視窗環境應用程式因而更加快速且流暢。
With technology advancement, mobile devices prevail among embedded system products. However, many applications can not run directly on mobile devices due to limitation in computing power and platform variety. This thesis implements an X window remote operation system which allows users to access remote applications everywhere through a browser with no plug-in installation required and no other client-end software needed. There are Web & WebSocket Server, X Server Manager, Application Manager, and Input Handler on the server side. The Web & WebSocket Server realize the communication interface between server and clients while X Server Manager, Application Manager, and Input Handler deal with user input and requests from client side. The user interface on the client side is achieved by a web page.
The development of this X window remote operation system features four main characteristics. First, the output display produced by remote application is presented by drawing instructions. Forwarding drawing instructions consumes less bandwidth than forwarding pictures of the application output. Second, web browser is used as the unified platform. A drawing library for HTML5 canvas element is implemented which realizes drawing application screen on the web page. Third, server directly pushes screen update information to client. This thesis uses HTML5 WebSocket as the communication protocol between client and server, which allows the connection established by a client to remain open. Fourth, this system supports multiple connections. The connections are isolated and will not interfere with each other.
This thesis achieves the goals of decreasing the response latency and reducing the amount of data transferred over network from remote X window operation system. As a result, users can operate remote X window applications easily and smoothly.
[1] AJAX, http://zh.wikipedia.org/wiki/AJAX, 2012-06-11.
[2] AJAX核心-XMLHTTPRequest[筆記], http://jck11.pixnet.net/blog/post/11624882-ajax核心-xmlhttprequest [筆記], 2012-06-11.
[3] Browser與Server持續同步的做法介紹(Polling, Comet, Long Polling, WebSocket), http://www.josephj.com/entry.php?id=358, 2012-06-11.
[4] Carl Gutwin, Michael Lippold, and T. C. Nicholas Graham, “Real-Time Groupware in the Browser: Testing the Performance of Web-Based Networking”, ACM Conference on Computer Supported Cooperative Work, 2011.
[5] Citrix MetaFrame簡介, http://www.esrealm.com/Product1-1.htm, 2012-06-11.
[6] Citrix XenApp, http://en.wikipedia.org/wiki/Citrix_XenApp, 2012-06-11.
[7] Comet (Programming), http://en.wikipedia.org/wiki/Comet_%28programming%29, 2012-06-11.
[8] Flash to Focus on PC Browsing and Mobile Apps; Adobe to More Aggressively Contribute to HTML5, http://blogs.adobe.com/flashplatform/2011/11/flash-to-focus-on-pc-browsing-and-mobile-apps-adobe-to-more-aggressively-contribute-to-html5.html, 2012-06-11.
[9] HTML5, http://zh.wikipedia.org/wiki/HTML5, 2012-06-11.
[10] Ian. Fette, and Alexey Melnikov, “The WebSocket Protocol”, IETF, 2011.
[11] Independent Computing Architecture, http://en.wikipedia.org/wiki/Independent_Computing_Architecture, 2012-06-11.
[12] jQuery, http://jquery.com/, 2012-06-11.
[13] libwebsockets, http://git.warmcat.com/cgi-bin/cgit/libwebsockets/, 2012-06-11.
[14] MIT-SHM, http://www.x.org/releases/X11R7.6/doc/xextproto/shm.html, 2012-06-11.
[15] Pieter Simonens, Filip De Turck, Bart Dhoedt, and Piet Demeester, “Remote Display Solutions for Mobile Cloud Computing”, IEEE Computer Society Volume 44, Issue 8, 2011.
[16] RIA, http://zh.wikipedia.org/wiki/RIA, 2012-06-11.
[17] Ricardo A. Baratto, Leonard N. Kim, and Jason Nieh, “THINC: A Virtual Display Architecture for Thin-Client Computin”, ACM Symposium on Operating Systems Principles, 2005.
[18] Robert W. Scheifler, and Jim Gettys, “The X Window System”, ACM Transactions on Graphics, Vol.5, No.2, April 1986.
[19] Robert W.Scheifler, “X Window System Protocol”, 2004.
[20] Susan Angebranndt, Raymond Drewry, Philip Karlton, Todd Newman, Keith Packard, David P.Wiggins, and Jim Gettys, “Definition of the Porting Layer for the X v11 Sample Server”, 2010.
[21] THE HTML5 TEST, http://html5test.com/index.html, 2012-06-11.
[22] The WebSocket API, http://dev.w3.org/html5/websockets/, 2012-06-11.
[23] The X Rendering Extension, http://www.x.org/releases/current/doc/renderproto/renderproto.txt, 2012-06-11.
[24] Thoughts on Flash, http://www.apple.com/hotnews/thoughts-on-flash/, 2012-06-11.
[25] Tristan Richardson, Quentin Stafford-Fraser, Kenneth R. Wood, and Andy Hopper, “Virtual Network Computing”, IEEE Internet Computing Volume2 Number1, 1998.
[26] VNC, http://zh.wikipedia.org/wiki/VNC, 2012-06-11.
[27] WebSocket, http://zh.wikipedia.org/wiki/WebSocket, 2012-06-11.
[28] WIRESHARK, http://www.wireshark.org/, 2012-06-11.
[29] X.Org, http://www.x.org/wiki/, 2012-06-11.
[30] X_Window核心協議, http://zh.wikipedia.org/wiki/X_Window核心協議, 2012-06-11.
[31] X11R7.6, http://www.x.org/wiki/Releases/7.6, 2012-06-11.
[32] xdotool, http://www.semicomplete.com/projects/xdotool/, 2012-06-11.
[33] XSCOPE, http://www.x.org/archive/X11R7.5/doc/man/man1/xscope.1.html, 2012-06-11.
[34] 石振豪, “WebOS操作環境之行動裝置虛擬桌面系統”, 碩士論文, 國立成功大學, 2010.
[35] 宋卓翰, “Thin-client應用呈現平台的最佳化設計與實作”, 碩士論文,
國立交通大學, 2006.
[36] 張亞非, “掌握HTML5和RIA網站設計”, 上奇資訊, 2011.
[37] 莊弘祥 譯, Chris Tyler 原著, “X Window超級工具”, O’REILLY, 2008.
[38] 遠端桌面協定, http://zh.wikipedia.org/wiki/遠端桌面協定, 2012-06-11.
[39] 蔡侑縉, “Web作業系統環境音訊傳輸機制之設計與實作”, 碩士論文, 國立成功大學, 2011.
[40] 戴驛權, “X視窗應用程式分享系統之設計與實作”, 碩士論文, 國立成功大學, 2010.
校內:2014-09-12公開