虚拟机运算系统及方法

文档序号:6494053阅读:304来源:国知局
虚拟机运算系统及方法
【专利摘要】一种虚拟机运算系统,运行于主机中,该系统包括:建立模块,用于为主机的每个虚拟机建立一个或多个运算环境,每个运算环境代表执行一种运算;接收模块,用于接收客户端设定的运算数据及运算类型;确定模块,用于根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境;运算模块,用于将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果;及整合模块,用于整合所有执行运算的虚拟机的运算结果,得到总运算结果。本发明还提供一种虚拟机运算方法。本发明能够利用虚拟机快速高效地执行不同的运算。
【专利说明】虚拟机运算系统及方法
【技术领域】
[0001]本发明涉及一种云服务系统及方法,特别是关于一种虚拟机运算系统及方法。
【背景技术】
[0002]云运算能够使用户将运算工作转移到远端的服务器上,节省了用户的硬件购置成本,提高了运算效能。然而,在云运算中,运算设备(实体机或虚拟机)需要安装一定的运算程序以实现一定类型的运算。当用户需要进行其他类型的运算时,需要对运算设备的运算程序进行更新,运算设备执行运算的弹性较低。并且,更新运算程序需要花费较多的时间和资源,降低了系统效能。

【发明内容】

[0003]鉴于以上内容,有必要提供一种虚拟机运算系统,能够利用虚拟机快速高效地执行不同的运算。
[0004]此外,还有必要提供一种虚拟机运算方法,能够利用虚拟机快速高效地执行不同的运算。
[0005]一种虚拟机运算系统,运行于主机中,该系统包括:建立模块,用于为主机的每个虚拟机建立一个或多个运算环境,每个运算环境代表执行一种运算;接收模块,用于接收客户端设定的运算数据及运算类型;确定模块,用于根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境;运算模块,用于将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果;及整合模块,用于整合所有执行运算的虚拟机的运算结果,得到总运算结果。
[0006]一种虚拟机运算方法,应用于主机中,该方法包括:为主机的每个虚拟机建立一个或多个运算环境,每个运算环境代表执行一种运算;接收客户端设定的运算数据及运算类型;根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境;将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果;及整合所有执行运算的虚拟机的运算结果,得到总运算结果。
[0007]本发明根据不同的运算需求改变虚拟机的运算环境,实现了利用虚拟机快速高效地执行不同的运算。
【专利附图】

【附图说明】
[0008]图1为本发明虚拟机运算系统较佳实施例的应用环境示意图。
[0009]图2为图1中虚拟机运算系统的功能模块图。
[0010]图3为本发明虚拟机运算方法较佳实施例的流程图。
[0011]主要元件符号说明 _
主机11网络|2
客户端F
虚拟机运算系统 10
存储设备_11
处理器_12_
建立模块_100
SWl块而
确定模块_102
运算模块_103
整合模块_104
操作模块1105
如下【具体实施方式】将结合上述附图进一步说明本发明。
【具体实施方式】
[0012]参阅图1所示,是本发明虚拟机运算系统较佳实施例的应用环境示意图。所述虚拟机运算系统10运行于主机I中,主机I通过网络2与多个客户端3相连接。主机I安装有一台或多台虚拟机(图1未画出)。例如,主机I安装有三台虚拟机,分别记为VM1、VM2与VM3。主机I还包括存储设备11及处理器12。所述存储设备11存储虚拟机运算系统10的程序代码及运行过程中所需的数据。所述处理器12执行虚拟机运算系统10的程序代码,根据不同的运算需求改变虚拟机的运算环境,以执行不同的运算。所述网络2可以是内部网(Intranet),也可以是互联网(Internet)或其它类型的通讯网络,如GPRS、W1-Fi/WLAN、3G/WCDMA.3.5G/HSDPA 等。
[0013]参阅图2所示,是图1中虚拟机运算系统的功能模块图。所述虚拟机运算系统10包括建立模块100、接收模块101、确定模块102、运算模块103、整合模块104及操作模块105。
[0014]所述建立模块100用于为主机I的每个虚拟机建立一个或多个运算环境,并将建立的运算环境存储至存储设备11。每个运算环境代表执行一种运算。在本实施例中,建立模块100通过为虚拟机建立快照来建立虚拟机的运算环境。例如,主机I安装有三台虚拟机,分别为VM1、VM2与VM3。建立模块100在虚拟机VMl中建立三个快照,分别记为第一快照、第二快照及第三快照;在虚拟机VM2中建立二个快照,分别记为第四快照及第五快照;在虚拟机VM3中建立三个快照,分别记为第六快照、第七快照及第八快照。其中,第一快照代表求和,第二快照代表求平均值,第三快照代表求乘积,第四快照代表求平方和,第五快照代表求平方根,第六快照代表求对数,第七快照代表求最小值,第八快照代表求最大值。
[0015]所述接收模块101用于接收用户通过客户端3设定的运算数据及运算类型。在本实施例中,接收模块101提供一个虚拟机运算页面,用户通过客户端3访问该虚拟机运算页面,并从该虚拟机运算页面中输入运算数据及运算类型。例如,用户设定的运算数据是[I, 2,3,4,5,6,7,8,9,10],输入的运算类型是求平均值。
[0016]所述确定模块102用于根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境。例如,接收模块101接收的运算数据是[1,2,3,4,5,6,7,8,9,10],接收的运算类型是求平均值。相应地,确定模块102确定执行运算的虚拟机是虚拟机VM1,确定该虚拟机VMl对应的运算环境是第二快照。若确定模块102确定执行运算的虚拟机为一个,则虚拟机运算系统10执行单机运算。若确定模块102确定执行运算的虚拟机为多个,则虚拟机运算系统10执行分散式平行运算。
[0017]所述运算模块103用于将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果。例如,运算模块103将虚拟机VMl切换到第二快照的运算环境,在第二快照的运算环境下求所述运算数据的平均值。
[0018]所述整合模块104用于整合所有执行运算的虚拟机的运算结果,得到总运算结果,并将该总运算结果输出给客户端3。例如,整合模块104将虚拟机VMl与虚拟机VM3的运算结果进行整合得到总运算结果,并将该总运算结果输出给客户端3。
[0019]所述操作模块105用于对虚拟机的运算环境进行操作。所述操作包括新增、修改及删除。例如,操作模块105根据用户指令删除虚拟机VM3的第六快照。
[0020]参阅图3所示,是本发明虚拟机运算方法较佳实施例的流程图。
[0021]步骤S301,建立模块100为主机I的每个虚拟机建立一个或多个运算环境,并将建立的运算环境存储至存储设备11。每个运算环境代表执行一种运算。在本实施例中,建立模块100通过为虚拟机建立快照来建立虚拟机的运算环境。例如,主机I安装有三台虚拟机,分别为VM1、VM2与VM3。建立模块100在虚拟机VMl中建立三个快照,分别记为第一快照、第二快照及第三快照;在虚拟机VM2中建立二个快照,分别记为第四快照及第五快照;在虚拟机VM3中建立三个快照,分别记为第六快照、第七快照及第八快照。其中,第一快照代表求和,第二快照代表求平均值,第三快照代表求乘积,第四快照代表求平方和,第五快照代表求平方根,第六快照代表求对数,第七快照代表求最小值,第八快照代表求最大值。
[0022]步骤S302,接收模块101接收用户通过客户端3设定的运算数据及运算类型。在本实施例中,接收模块101提供一个虚拟机运算页面,用户通过客户端3访问该虚拟机运算页面,并从该虚拟机运算页面中输入运算数据及运算类型。例如,用户设定的运算数据是[I, 2,3,4,5,6,7,8,9,10],输入的运算类型是求平均值。
[0023]步骤S303,确定模块102根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境。例如,接收模块101接收的运算数据是[1,2,3,4,5,6,7,8,9,10],接收的运算类型是求平均值。相应地,确定模块102确定执行运算的虚拟机是虚拟机VM1,确定该虚拟机VMl对应的运算环境是第二快照。若确定模块102确定执行运算的虚拟机为一个,则虚拟机运算系统10执行单机运算。若确定模块102确定执行运算的虚拟机为多个,则虚拟机运算系统10执行分散式平行运算。
[0024]步骤S304,运算模块103将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果。例如,运算模块103将虚拟机VMl切换到第二快照的运算环境,在第二快照的运算环境下求所述运算数据的平均值。
[0025]步骤S305,整合模块104整合所有执行运算的虚拟机的运算结果,得到总运算结果,并将该总运算结果输出给客户端3。例如,整合模块104将虚拟机VMl与虚拟机VM3的运算结果进行整合得到总运算结果,并将该总运算结果输出给客户端3。
[0026]步骤S306,操作模块105用于对虚拟机的运算环境进行操作。所述操作包括新增、修改及删除。例如,操作模块105根据用户指令删除虚拟机VM3的第六快照。
【权利要求】
1.一种虚拟机运算系统,运行于主机中,其特征在于,该系统包括: 建立模块,用于为主机的每个虚拟机建立一个或多个运算环境,每个运算环境代表执行一种运算; 接收模块,用于接收 客户端设定的运算数据及运算类型; 确定模块,用于根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境; 运算模块,用于将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果;及 整合模块,用于整合所有执行运算的虚拟机的运算结果,得到总运算结果。
2.如权利要求1所述的虚拟机运算系统,其特征在于,该系统还包括: 操作模块,用于对所述虚拟机的运算环境进行操作。
3.如权利要求2所述的虚拟机运算系统,其特征在于,所述操作包括新增、修改及删除。
4.如权利要求1所述的虚拟机运算系统,其特征在于,所述建立模块通过建立快照来建立虚拟机的运算环境。
5.如权利要求1所述的虚拟机运算系统,其特征在于,所述整合模块还用于将所述总运算结果输出给所述客户端。
6.一种虚拟机运算方法,应用于主机中,其特征在于,该方法包括: 为主机的每个虚拟机建立一个或多个运算环境,每个运算环境代表执行一种运算; 接收客户端设定的运算数据及运算类型; 根据接收的运算数据及运算类型确定一个或多个执行运算的虚拟机,并确定每个执行运算的虚拟机对应的运算环境; 将各个执行运算的虚拟机切换到对应的运算环境进行运算,得到各个执行运算的虚拟机的运算结果;及 整合所有执行运算的虚拟机的运算结果,得到总运算结果。
7.如权利要求6所述的虚拟机运算方法,其特征在于,该方法还包括: 对所述虚拟机的运算环境进行操作。
8.如权利要求7所述的虚拟机运算方法,其特征在于,所述操作包括新增、修改及删除。
9.如权利要求6所述的虚拟机运算方法,其特征在于,所述虚拟机的运算环境利用快照来建立。
10.如权利要求6所述的虚拟机运算方法,其特征在于,该方法还包括: 将所述总运算结果输出给所述客户端。
【文档编号】G06F9/455GK103902351SQ201210582352
【公开日】2014年7月2日 申请日期:2012年12月28日 优先权日:2012年12月28日
【发明者】彭冠桥, 叶建发, 李忠一, 林彦宏 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1