CN103051711B - 基于spice协议的嵌入式云终端系统的构建方法 - Google Patents
基于spice协议的嵌入式云终端系统的构建方法 Download PDFInfo
- Publication number
- CN103051711B CN103051711B CN201210562642.1A CN201210562642A CN103051711B CN 103051711 B CN103051711 B CN 103051711B CN 201210562642 A CN201210562642 A CN 201210562642A CN 103051711 B CN103051711 B CN 103051711B
- Authority
- CN
- China
- Prior art keywords
- gsoap
- spice
- instrument
- communication interface
- gtk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种基于SPICE协议的嵌入式云终端系统的构建方法,包括:运行GTK工具和DirectFB工具,生成GTK-DirectFB运行平台;将SPICE协议工具和SPICE-GTK工具移植到所述GTK-DirectFB运行平台下运行,通过交叉编译器进行编译,生成SPICE协议程序;运行gsoap工具,通过所述交叉编译器编译所述gsoap工具,创建gsoap通信接口库;在所述GTK-DirectFB运行平台中创建GUI界面程序;对所述SPICE协议程序、所述gsoap通信接口库和GUI界面程序进行封装打包,生成基于SPICE协议的嵌入式云终端系统。本发明提供的嵌入式云终端系统成本低、功耗小、体积小,不受协议厂商限制。
Description
技术领域
本发明涉及嵌入式云终端技术领域,特别是一种基于SPICE协议的嵌入式云终端系统的构建方法。
背景技术
计算终端是云计算产业链中的一个重要环节。在云计算的架构中,只有云服务器和云终端,服务和计算都在云服务器,而业务的使用和展现都在云终端,用户通过云终端使用云服务器提供的各种服务。云计算的发展促进了云终端的发展,云计算价值必须通过云终端才能完美地呈现给用户。云终端的概念有广义与狭义之分。从广义上讲,能使用云计算应用的终端都可以叫云终端。而狭义的云终端则指的是专用的云终端,它仅具有浏览器功能,用户进行数据处理、存储和程序操作应用都在网络或云服务器上完成,不需要进行大量的本地操作。
而在云计算发展过程中,云终端产品不断涌现,然而现有的云终端产品大多是基于X86架构的,云终端协议大部分是基于微软的RDP协议、VMWARE的PCOIP协议、CITRIX(思杰)的ICA协议等主流厂商协议,以上类型的云终端功耗大、成本高、整个云终端系统运行庞大、协议受厂商限制,使用性能受平台的限制大。
发明内容
基于此,本发明提供一种基于SPICE(Simple Protocol for IndependentComputing Environment,独立计算环境简单协议)协议的嵌入式云终端系统的构建方法,该嵌入式云终端系统成本低、功耗小、体积小,不受协议厂商限制。
一种基于SPICE协议的嵌入式云终端系统的构建方法,包括如下步骤:
运行用作图形用户界面开发的图形库GTK工具和嵌入式系统图形库DirectFB工具,生成GTK-DirectFB运行平台;
将独立计算环境简单协议SPICE协议工具和SPICE-GTK工具移植到所述GTK-DirectFB运行平台下运行,通过交叉编译器进行编译,生成SPICE协议程序;
运行gsoap工具,通过所述交叉编译器编译所述gsoap工具,创建gsoap通信接口库;
在所述GTK-DirectFB运行平台中创建GUI界面程序;
对所述SPICE协议程序、所述gsoap通信接口库和GUI界面程序进行封装打包,生成基于SPICE协议的嵌入式云终端系统。
上述基于SPICE协议的嵌入式云终端系统的构建方法,提供了一种基于SPICE协议的嵌入式云终端系统,该方法通过创建GTK-DirectFB运行平台,在该运行平台下通过交叉编译器编译有SPICE协议程序,再创建gsoap通信接口库以及创建GUI界面程序,即可生成该嵌入式云终端系统;本发明提供的嵌入式云终端系统封装有开源的SPICE协议,成本较低且不受厂商限制;本发明中运用的GTK运行工具、DirectFB运行工具和gsoap工具等都属于开源工具,编译过程快速灵活;最终生成的基于SPICE协议的嵌入式云终端系统成本低、体积小、功耗少,不受协议厂商限制,系统运行快速流畅。
附图说明
图1为本发明基于SPICE协议的嵌入式云终端系统的构建方法在一实施例中的流程示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细说明,但本发明的实施方式不限于此。
如图1所示,是本发明基于SPICE协议的嵌入式云终端系统的构建方法在一实施例中的流程示意图,包括:
S11、运行GTK工具和DirectFB工具,生成GTK-DirectFB运行平台;
要实现嵌入式云终端与云服务器以SPICE通信协议进行数据传输,云终端需安装有基于SPICE协议的嵌入式云终端系统;构建该基于SPICE协议的嵌入式云终端系统,首先要进行外围环境的搭建;由于SPICE协议是基于GTK平台运行的,并且需将SPICE协议移植到嵌入式系统中运行,因此需构建GTK-DirectFB运行平台;
其中,GTK(GIMP Toolkit,GIMP工具包)是指用作图形用户界面开发的图形库,它遵守GPL(GNU公共许可协议),是面向对象(object-oriented)的程序用户接口;DirectFB是专为嵌入式系统而设计的一个轻量级的提供硬件图形加速,输入设备处理和抽象的图形库,它集成了支持半透明的视窗系统以及在LinuxFramebuffer驱动之上的多层显示;
构建GTK-DirectFB运行平台,需GTK工具和DirectFB工具,在本实施例中可包括以下工具包:
pkg-config.tar.gz、glib-2.18.1.tar.gz、atk-1.22.0.tar.bz2、zlib-1.2.3.tar.gz、jpegsrc.v6b.tar.gz、libpng-1.2.32-no-config.tar.gz、expat-2.0.1.tar.gz、freetype-2.3.5.tar.gz、libxml2-2.6.23.tar.bz2、fontconfig-2.6.0.tar.gz、tiff-3.8.2.tar.gz、DirectFB-1.2.6.tar.gz、cairo-1.6.4.tar.gz、pango-1.20.4.tar.gz、gtk+-2.12.1.tar.bz2;
通过上述工具包的安装运行,生成了GTK-DirectFB运行平台,以构成SPICE协议与用户交互GUI程序所运行的基础图形库、字体库,以及各函数的API接口等。
S12、将SPICE协议工具和SPICE-GTK工具移植到所述GTK-DirectFB运行平台下运行,通过交叉编译器进行编译,生成SPICE协议程序;
在生成GTK-DirectFB运行平台后,根据云终端的CPU架构信息,选择合适的交叉编译环境;在进行嵌入式云终端系统的开发时,运行程序的目标平台云终端通常具有有限的存储空间和运算能力,比如云终端中常见的ARM平台,其一般的静态储存空间非常小,因此需通过交叉编译器编译源代码,最终生成在嵌入式云终端上可运行的系统;
交叉编译器是指在一种计算机环境中运行的编译程序,能编译出在另一种环境下运行的代码;在一较佳实施例中,根据云终端的硬件特点,所述交叉编译器为arm-linux-gcc编译器;gcc是一个用于嵌入式系统下编程的编译器,该编译器开源,且能支持多种不同的编程语言。
在本步骤中,为使嵌入式云终端系统支持SPICE协议,需安装SPICE协议工具;将SPICE协议工具(如spice-protocol-0.10.1.tar.bz2)和SPICE-GTK工具(如spice-gtk-0.9.tar)移植到所述GTK-DirectFB运行平台下运行,通过交叉编译器对两个工具进行编译,生成SPICE协议程序;
在本实施例中,对于spice-protocol-0.10.1本身的配置,此处需要指定编译即可./configure--host=arm-linux--build=i386-linux--prefix=/usr;make&&makeinstall就可以编译成功;
对于spice-gtk程序编译前需要进行配置./autogen.sh--prefix=/usr/local--enable-smartcard=no--with-sasl=no--with-audio=no--enable-usbredir=yes,用于启动云终端的samrtcard和usb等设备。
S13、运行gsoap工具,通过所述交叉编译器编译所述gsoap工具,创建gsoap通信接口库;
SPICE协议程序生成后,需建立SPICE客户端与服务器的通信接口;gsoap是一个开源的通信接口项目,可方便地进行web service客户端的通信接口的建立;根据不同的操作系统运行对应的gsoap工具;
在一较佳实施例中,所述运行gsoap工具,通过所述交叉编译器编译所述gsoap工具,创建gsoap通信接口库的步骤具体可包括:
运行gsoap工具,生成gsoap通信接口程序;
配置所述gsoap通信接口程序与所述spice协议程序的接口;
配置所述gsoap通信接口程序与云服务端的接口;
更新所述gsoap通信接口程序,生成所述gsoap通信接口库;
在本实施例中,可安装运行以下gsoap工具:
json-c_0.9.orig.tar.gz、openssl-0.9.7a.tar.gz、gsoap-2.7.bz2,生成gsoap通信接口程序;
在本步骤中可获取云服务器的IP地址,更新所述可执行文件中的服务器地址为所述IP地址;根据云服务器地址,需修改可执行文件中的服务器地址,以完成gsoap通信接口程序与云服务端的接口配置,实现与云服务器的连接;如ARM平台IP地址为192.168.0.121,因此可对calcserver.c文件作如下修改,将const char server[]="http://websrv.cs.fsu.edu/~engelen/calcserver.cgi"修改为constchar server[]="http://192.168.0.121:8888";
同时配置所述gsoap通信接口程序与云服务端的接口;在所述交叉编译器中编译更新后的所述可执行文件,生成所述gsoap通信接口程序;输入编译命令并执行,运行更新后可执行文件,交叉编译器即可生成gsoap通信接口库;该gsoap通信接口程序用于与云服务器建立通信连接,接收用户的账户信息和验证,同时在验证成功后返回服务器接入信息等功能;
云终端通过云服务器的IP地址,及正确的用户名与密码,通过gsoap通信接口将数据发送给服务器,服务器返回虚拟机列表数据;云终端在通过gsoap通信接口库将数据解析出来;对于gsoap接口整体的功能就开启服务器虚拟机,关闭服务器虚拟机,连接服务器虚拟机等,都可通过gsoap发送封装过的数据包给服务器,来达到终端操作服务器的目的。
S14、在所述GTK-DirectFB运行平台中创建GUI界面程序;
在GTK-DirectFB运行平台下创建所述SPICE客户端的GUI界面,为云终端显示设备提供一个人机交互界面,用户可通过GUI界面登录SPICE客户端,向云服务器发出数据请求,以及对云服务器返回的数据在云终端显示设备上进行可视化等操作。
S15、对所述SPICE协议程序、所述gsoap通信接口库和GUI界面程序进行封装打包,生成基于SPICE协议的嵌入式云终端系统;
通过交叉编辑器将生成的SPICE协议程序、gsoap通信接口程序和GUI界面程序进行封装打包,生成基于SPICE协议的嵌入式云终端系统,该嵌入式云终端系统即可在嵌入式云终端上运行,具有成本低、功耗小和体积小等优点;
在一较佳实施例中,所述对所述SPICE协议程序、所述gsoap通信接口程序和GUI界面程序进行封装打包的步骤前还包括:
分别对所述SPICE协议程序、所述gsoap通信接口程序和所述GUI界面程序中的调试代码和符号代码进行裁剪;
生成的SPICE协议程序、gsoap通信接口程序和GUI界面程序中包含有一些调试代码和符号代码等冗余代码,会影响系统的体积和运行速度,因此有必要对去除编译的库文件或可执行文件里的一些调试信息和符号信息,进行代码裁剪,减少代码数量,再生成基于SPICE协议的嵌入式云终端系统;例如可通过交叉编译器中的strip工具进行裁剪,输入“strip–strip-unneeded-R.note-R.comment”命令即可快速地裁剪掉系统中的调试代码。
本发明基于SPICE协议的嵌入式云终端系统的构建方法,提供了一种基于SPICE协议的嵌入式云终端系统,该方法通过创建GTK-DirectFB运行平台,在该运行平台下通过交叉编译器编译有SPICE协议程序,再创建gsoap通信接口程序以及创建GUI界面程序,即可生成该嵌入式云终端系统;本发明提供的嵌入式云终端系统封装有开源的SPICE协议,成本较低且不受厂商限制;本发明中运用的GTK运行工具、DirectFB运行工具和gsoap工具等都属于开源工具,编译过程快速灵活;最终生成的基于SPICE协议的嵌入式云终端系统成本低、体积小、功耗少,不受协议厂商限制,系统运行快速流畅。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (4)
1.一种基于SPICE协议的嵌入式云终端系统的构建方法,其特征在于,包括如下步骤:
运行用作图形用户界面开发的图形库GTK工具和嵌入式系统图形库DirectFB工具,生成GTK-DirectFB运行平台;
将独立计算环境简单协议SPICE协议工具和SPICE-GTK工具移植到所述GTK-DirectFB运行平台下运行,通过交叉编译器进行编译,生成SPICE协议程序;
运行gsoap工具,通过所述交叉编译器编译所述gsoap工具,创建gsoap通信接口库;
在所述GTK-DirectFB运行平台中创建GUI界面程序;
对所述SPICE协议程序、所述gsoap通信接口库和GUI界面程序进行封装打包,生成基于SPICE协议的嵌入式云终端系统。
2.根据权利要求1所述的基于SPICE协议的嵌入式云终端系统的构建方法,其特征在于,所述对所述SPICE协议程序、所述gsoap通信接口程序和GUI界面程序进行封装打包的步骤前还包括:
分别对所述SPICE协议程序、所述gsoap通信接口程序和所述GUI界面程序中的调试代码和符号代码进行裁剪。
3.根据权利要求1所述的基于SPICE协议的嵌入式云终端系统的构建方法,其特征在于,所述交叉编译器为arm-linux-gcc编译器。
4.根据权利要求1所述的基于SPICE协议的嵌入式云终端系统的构建方法,其特征在于,所述运行gsoap工具,通过所述交叉编译器编译所述gsoap工具,创建gsoap通信接口库的步骤具体为:
运行所述gsoap工具,生成gsoap通信接口程序;
配置所述gsoap通信接口程序与所述SPICE协议程序的接口;
配置所述gsoap通信接口程序与云服务端的接口;
更新所述gsoap通信接口程序,生成所述gsoap通信接口库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210562642.1A CN103051711B (zh) | 2012-12-21 | 2012-12-21 | 基于spice协议的嵌入式云终端系统的构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210562642.1A CN103051711B (zh) | 2012-12-21 | 2012-12-21 | 基于spice协议的嵌入式云终端系统的构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103051711A CN103051711A (zh) | 2013-04-17 |
CN103051711B true CN103051711B (zh) | 2015-09-02 |
Family
ID=48064205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210562642.1A Active CN103051711B (zh) | 2012-12-21 | 2012-12-21 | 基于spice协议的嵌入式云终端系统的构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103051711B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294472B (zh) * | 2013-05-30 | 2016-12-28 | 中标软件有限公司 | 基于Linux操作系统的中文字体渲染控制方法及系统 |
US9437131B2 (en) | 2013-07-05 | 2016-09-06 | Visteon Global Technologies, Inc. | Driving a multi-layer transparent display |
CN103823673B (zh) * | 2014-02-12 | 2017-07-07 | 陈昱 | 云计算系统终端实现gtk图形界面与云端应用对接的方法 |
CN103780441B (zh) * | 2014-03-04 | 2017-03-08 | 江苏省电力公司扬州供电公司 | 一种基于arm架构的云终端网络管理平台和管理方法 |
CN106776310B (zh) * | 2016-12-07 | 2020-05-22 | 广州视源电子科技股份有限公司 | 一种调试方法及调试装置 |
CN110020947A (zh) * | 2018-12-21 | 2019-07-16 | 中国银联股份有限公司 | 基于云内核的受理终端系统 |
CN114527964A (zh) * | 2022-02-18 | 2022-05-24 | 广州易方信息科技股份有限公司 | 实时通信库裁剪方法、装置、计算机设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7620037B1 (en) * | 2004-12-14 | 2009-11-17 | Aspen Networks, Inc. | Reliable ISP access cloud state detection method and apparatus |
CN101630258A (zh) * | 2009-07-29 | 2010-01-20 | 精伦电子股份有限公司 | Windows平台上嵌入式Linux软件集成开发系统及其构建方法 |
CN102404394A (zh) * | 2011-11-10 | 2012-04-04 | 浪潮齐鲁软件产业有限公司 | 一种基于vpdn的嵌入式网络开票税务云终端设计方法 |
-
2012
- 2012-12-21 CN CN201210562642.1A patent/CN103051711B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7620037B1 (en) * | 2004-12-14 | 2009-11-17 | Aspen Networks, Inc. | Reliable ISP access cloud state detection method and apparatus |
CN101630258A (zh) * | 2009-07-29 | 2010-01-20 | 精伦电子股份有限公司 | Windows平台上嵌入式Linux软件集成开发系统及其构建方法 |
CN102404394A (zh) * | 2011-11-10 | 2012-04-04 | 浪潮齐鲁软件产业有限公司 | 一种基于vpdn的嵌入式网络开票税务云终端设计方法 |
Non-Patent Citations (1)
Title |
---|
汤传斌.可移动的虚拟桌面:无线云终端.《计算机应用于软件》.2012,第29卷(第3期),第154-157页. * |
Also Published As
Publication number | Publication date |
---|---|
CN103051711A (zh) | 2013-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103051711B (zh) | 基于spice协议的嵌入式云终端系统的构建方法 | |
US11868745B2 (en) | System and method for compiling high-level language code into a script executable on a blockchain platform | |
Theisen | Programming languages in chemistry: a review of HTML5/JavaScript | |
KR20140001953A (ko) | 상이한 컴파일러 스테이지로부터의 디버그 정보를 융합하는 방법 | |
US20090259612A1 (en) | Message conduit systems with algorithmic data stream control and methods for processing thereof | |
CN107168749A (zh) | 一种编译方法、装置、设备和计算机可读存储介质 | |
US10380329B2 (en) | Method and apparatus for preventing application from being deciphered | |
US8938712B2 (en) | Cross-platform virtual machine and method | |
CN107508846B (zh) | 应用客户端的更新方法和系统及终端设备 | |
CN111026439B (zh) | 应用程序的兼容方法、装置、设备及计算机存储介质 | |
CN107844410A (zh) | 一种分布式集群系统的调试方法和装置 | |
CN104267958A (zh) | 移动应用容器及其管理方法 | |
CN104580378A (zh) | 安装包的处理方法及装置 | |
Roomi et al. | OpenPLC61850: An IEC 61850 MMS compatible open source PLC for smart grid research | |
CN112631915B (zh) | 一种pcie设备软件仿真的方法、系统、设备及介质 | |
CN107885629A (zh) | 一种基于OpenSSL的QAT性能对比方法及系统 | |
CN105843659B (zh) | 一种嵌入式c编译器的实现方法及系统 | |
Scacchi et al. | Processes in securing open architecture software systems | |
CN103631585A (zh) | 一种用于开发应用程序的方法及系统 | |
CN1996336A (zh) | .Net程序保护的方法和系统 | |
Marinho et al. | Native and multiple targeted mobile applications | |
Fourtounis et al. | Supporting separate compilation in a defunctionalizing compiler | |
CN105786530A (zh) | 跨平台app设计方法及系统 | |
Conlon | Installing an alternate SSL provider on Android | |
Kurniawan et al. | Worqbench: an integrated framework for e-Science application development |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |