一种虚拟机系统及其启动方法

文档序号:6460782阅读:152来源:国知局
专利名称:一种虚拟机系统及其启动方法
技术领域
本发明属于虚拟一支术领域,尤其涉及一种虚拟机系统及该虚拟机系统的启 动方法。
背景技术
虚拟化技术(Virtualization Technology, VT)是指在一套完整的计算机硬 件平台上,通过软件或硬件的方法,将一组硬件虛拟成多组硬件,并提供给多 个独立运行的软件系统(通常是操作系统,如Windows98、 Windows2000、 WindowsXP、 Linux、 Urlix、 Mac等)作为独立运行环境。这些独立运行的环境 (操作系统)通常被称为虚拟机(Virtual Machines, VM)。具备VT技术的计 算机装置可以并行的运行多个独立的操作系统,各操作系统之间除了运行过程 中分享硬件资源(如内存、10、存储器和VT处理器O夕卜,互相保持独立,可 以看作是多个独立的计算机在运行。
目前,VT技术主要有两种, 一种是完全虛拟化(Full Virtualization)的虛 拟机技术, 一种是半虚拟化(也称为准虚拟化,Part Virtualization)的虚拟机技 术。其中完全虚拟化的虚拟机技术是指所虚拟的硬件环境与计算机底层的真实 硬件环境完全相同,操作系统可以不经任何修改就可以直接运行在虛拟硬件上, 其有软件和硬件两种实现方式,软件实现如VMWare虛拟机,硬件实现如硬件 仿真器。虽然VMWare等其他虛拟化系统实现了硬件环境的完全虚拟化,但 它们仍需要进行实时的机器代码翻译,从而影响计算机的性能。
准虚拟化的虚拟机技术是指所虚拟的硬件环境与计算机底层的真实硬件环 境并不完全相同,操作系统需要进行适当的修改,才能在虛拟的硬件环境中运 行。准虛拟化的虚拟机技术以Xen虚拟机技术为代表。Xen是一个开放源代码说明书第2/9页
虚拟才几监^见器(Virtual Machines Modules, VMM),其工作才莫式为主枳4莫式, 即在安装好主机操作系统(Host OS)后,再在Host OS中安装Xen,然后在 Xen上安装其他操作系统(统称为Guest OS)。在主积4莫式下,Guest OS建立 在Host OS上的可访问资源,当Host OS的资源供不应求时,或者各Guest OS 之间的协作不友好时,Host OS的资源将成为Guest OS的性能瓶颈,从而难以 保证所有的资源能够正确地分配给有相应资源需求的进程。

发明内容
本发明实施例的目的在于提供一种虚拟机系统,旨在解决现有准虚拟化技 术由于采用主机模式导致各客户操作系统之间协作不友好,使主机操作系统成 为客户操作系统的性能瓶颈的问题。
本发明实施例是这样实现的, 一种虚拟机系统,包括计算机硬件、虚拟机 监视器、主机操作系统和一个或者多个虛拟机,所述虚拟机监视器集成于所述 主机操作系统中,所述一个或者多个虚拟机运行于所述虚拟机监视器中。
本发明实施例的另一目的在于提供一种虚拟机系统的启动方法,所述虚拟 机系统包括计算机硬件、集成有虚拟机监视器的主机才喿作系统以及运行于所述 虚拟机监视器的一个或者多个虛拟机,所述方法包括下述步骤
对主机操作系统的完整性进行度量,完成主机操作系统的引导操作;
加载集成于主机操作系统中的虛拟机监视器,并将虚拟机系统的控制权转 换至虚拟机监视器;一
虚拟机监视器根据用户输入的虚拟机管理命令,执行相应的操作。
在本发明实施例中,通过将虚拟机监视器集成到主机操作系统中,即在计 算机底层的真实硬件与主机操作系统之间插入可控的虛拟机监视器,通过该虚 拟机监视器可以直接对运行于虚拟机监视器上的一个或者多个客户操作系统进 行监控和度量,从而使各客户操作系统通过底层硬件的支持,直接访问硬件资 源,,直接在硬件支持下运行,拥有最佳的性能。


图1是本发明实施例提供的虚拟机系统的结构示意图; 图2是本发明实施例提供的虚拟机监视器的结构示意图; 图3、图4、图5、图6、图7、图8是本发明最佳实施例提供的图形化虛 拟机监视器的各种界面示意图9是本发明实施例提供虚拟机系统的启动方法的实现流程图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,将虚拟机监视器集成到主机操作系统中,从而在计算 机底层的真实硬件与主机操作系统之间插入可控的虛拟机监视器层,通过集成 在主机操作系统中的虚拟机监视器可以直接对虚拟机监视器上运行的客户操作 系统进行监控和度量,从而使各客户操作系统不再需要主机操作系统的支持, 直接在硬件支持下运行,从而拥有最佳的性能。
随着Intel VT和AMD VT技术的发展,虚拟化4支术已延伸到中央处理器 (Central Processing Unit, CPU)领域,从而以Xen虚拟机技术为代表的虚拟 机技术也多了一种工作模式,即管理程序模式。管理程序模式是指融合了 VT技 术的CPU (以后均称为VT处理器)可以直4妻支持Xen,可控的Guest OS不经 任何修改就可以直4妄在Xen上运行,这样,Guest OS的运行不再需要Host OS 的支持,直接在硬件支持下运行,从而拥有最佳的性能。本发明实施例提供的 虚拟机系统正是基于VT处理器设计的。
图1示出了本发明实施例提供的虚拟机系统的逻辑结构,为了便于说明, 仅示出了与本发明实施例相关的部分。
6本发明实施例提供的虚拟机系统包括硬件10、集成有虚拟机监视器的主机
操作系统20,以及运行于虚拟机监视器上的一个或者多个虚拟机30。
其中硬件10的结构与现有的虚拟机系统的硬件系统的结构基本一致,主要 包括VT处理器101、主板(图未示出)、内存102、输入输出(Input/Output, I/O)设备103、存储设备104 (如硬盘或者光介质存储设备等)等。
集成有虚拟机监视器的主机操作系统20是虚拟机系统的虚拟平台,其中虚 拟机监视器在主机操作系统20中是以模块化实现的。当用户在硬件10上安装 该集成有虚拟机监视器的主机操作系统20时,该虛拟机监视器以Driver的形 式作为主机操作系统20的Driver进行加载。在本发明实施例中,主机操作系 统20可以是现有技术中的任何一种操作系统(如Linux操作系统、Windows 2000 操作系统、WindowsXP操作系统、FreeBSD操作系统或者类Linux操作系统等)。 为了减少虚拟机系统中的集成有虚拟机监视器的主机操作系统20占用的系统 资源,该主机操作系统采用Linux操作系统。其中虛拟机监视器基于硬件10进 行虚拟化处理,为运行于虚拟机监视器上的一个或者多个虚拟机30虚拟出的虚 拟机环境,该虚拟机监浮见器的技术原理和基于硬件的虛拟化技术是现有技术, 在此不再赘述。
'运行于虚拟机监视器上的一个或者多个虚拟机30主要由客户操作系统和 运行在客户操作系统中的应用软件组成,如其可以由用户根据需要在主机操作 系统20中集成的虛拟机监视器上安装的一个或者多个客户操作系统和在每个 客户操作系统下运行的应用软件组成。在一台计算机中,可以同时并行的运行 多个虚拟机30,且各虚拟机30之间相互独立,互不干涉,同时为用户提供应 用和服务。该一个或者多个虛拟机30运行在虛拟机监—见器所虛拟出的虛拟机环 境中,通过虚拟机监视器提供的虚拟硬件抽象层实现对物理硬件的访问和调用。 为了便于虚拟机监视器对其上运行的一个或者多个虚拟机30进行监控和 度量,在本发明实施例中,集成在主机操作系统20的中的虚拟机监视器采用图 形化界面实现。图2示出了本发明实施例提供的虛拟机监视器的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
虚拟机管理命令接收单元201接收用户发送的虚拟机管理命令。该虛拟机 管理命令包括但不限于虚拟机创建命令、虚拟机修改命令、虚拟机启动命令、 虚拟机激活命令、虚拟机切换命令、虚拟机删除命令等。用户可以通过虚拟机 监视器呈现给用户的图形界面发送虛拟机管理命令。
硬件设备虛拟化单元202对虚拟机系统中的硬件10进行虚拟化处理,主要 包括VT处理器201的虚拟化处理、内存102的虚拟化处理、输入输出 (Input/Output, I/O )设备103的虚拟化处理以及存储设备104的虚拟化处理等。
虚拟的硬件资源。如当虚拟机管理命令接收单元201接收到用户发送的虛拟机 创建命令时,虚拟机资源配置单元203根据用户输入的待创建的虚拟机30的创
当虚拟机管理命令接收单元201接收到用户发送的虚拟机修改命令时,虚拟机 资源配置单元203根据用户输入的待修改的虚拟机30的修改参数,为待修改的 虚拟机30重新分配硬件设备虚拟化单元202虚拟的硬件资源。
虚拟机调度单元204通过VT指令库205中的VM Entry和VM Exit指令实 现虚拟机系统的控制权在虚拟机监视器和虛拟机30之间的转换。在虚拟机监视 器内部,通过虚拟机调度单元204控制每个虚拟机30对虚拟机系统中VT处理 器101和其他硬件资源的占用,从而实现各虛拟机30中的应用软件的并行处理。 其中VT指令库25中存储有虚拟机监视器的全部指令,并对这些指令进行管理。
虚拟机监视器与运行于其上的虛拟机30对虛拟机系统的控制权之间的交 互有两种机制Guest OS到虚拟机监视器的同步调用由特定的系统调用函数来 完成,该过程类似于传统OS中对系统调用的使用,由于该过程属于现有技术 或者根据现有技术容易推导出,在此不再赘述;虛拟机监视器到Guest OS的通 告递交由异步事件机制来完成,该过程类似于常用的设备中断递交机制,允许 重要事件(如GuestOS的中断请求)采用轻量级的通告形式,由于该过程属于现有技术或者根据现有技术容易推导出,在此不再赘述。
以下详细说明本发明实施例提供的虚拟机系统的启动流程
首先在计算机硬件平台中安装集成有虛拟机监视器的主机操作系统,主机 操作系统安装好之后,重新启动计算机可以进入主机"^喿作系统。由于虚拟机监 视器是以模块化集成在主机操作系统中的,在进入主机操作系统时,虚拟机监 视器将以驱动(Driver)的形式作为主机操作系统的Driver进行加载。进入主 机操作系统后,用户将会进入如图3所示的虚拟机监视器的登录界面。在用户 第一次使用该虚拟机系统时,该虛拟机监视器的登录信息是默认的,如默认的 用户名为Admin,密码为123456。用户可以修改虚拟机监视器的登录信息。当 用户釆用默认的登录信息登录虚拟机监视器后,进入如图4所示的虚拟机监视 器的主界面。虚拟机监视器与运行于其上的所有虚拟机之间的操作,如在虚拟 机监视器中创建新的虚拟机,启动已创建的虚拟机等都将在该虚拟机监视器的 主界面进行。下面将介绍如何在该虚拟机监视器中创建新的虚拟机。
用户通过点击如图4所示的虚拟机监视器的主界面中.的"创建虛拟机"按 钮,向虚拟机监视器发送虛拟机创建命令。虚拟机监视器中的虛拟机管理命令 接收模块接收到该虚拟机创建命令后,向用户输出一如图5所示的创建参数设 置窗口,以供用户输入待创建的虚拟机的创建参数。用户可以通过该创建参数 设置窗口设置待创建的虚拟机的名称,待创建的虛拟机的内存大小和存储设备 的容量,虚拟CPU (Virtual CPU, VCPU).的个数,待创建的虚拟机是否支持 CDROM和USB设备,当用户设置待创建的虚拟机支持CDROM时,用户还可 以设置硬盘和CDROM的启动顺序。当用户设置完待创建虚拟机的创建参数后, 通过点击该创建参凄t设置窗口的"提交"按钮来确认本次设置,以向虚拟机监 视器输入待创建虚拟机的创建参数。
虚拟机监视器中的虚拟机资源配置单元根据用户输入的待创建虚拟机的创 建参数,为该待创建虚拟机分配硬件设备虚拟化单元虚拟的硬件资源,创建新 的虚拟机。为了便于用户对虚拟机监视器中运行的一个或者多个虚拟机进行监控和度量,将新创建的虚拟机添加至如图4所示的虚拟机监视器的主界面中。 在虚拟机监视器的主界面中添加了新创建的虚拟机之后,虚拟机监视器的主界
面如图6所示。
用户可以通过如图6所示的虚拟机监视器主界面中呈现的"启动虚拟机" 标志(该标志可以是图标或者按钮等)向虛拟机监视器发送虚拟机启动命令, 虚拟机监视器的虚拟机管理命令接收模块接收到该虚拟机启动命令后,启动该 虚拟机启动命令对应的虚拟机。虚拟机启动之后,用户即可在该虚拟机中安装 客户操作系统和应用软件等。
如果虚拟机启动之后默认处于全屏状态,用户可以通过如图6中的切换按 钮向虛拟机监-见器发送虚拟机切换命令,虚拟机调度单元通过VT指令库中的 VM Entry和VM Exit指令实现虚拟机系统的控制权在虚拟机监一见器和虛拟机之 间的转换,从而实现从客户操作系统切换到主机操作系统,此时,虚拟机监视 器的主界面如图7所示。
当从客户才喿作系统切换到主机操作系统后,上述已启动的虚拟机依然是运 行的,当用户需要使用该虚拟机时,用户可以通过如图7所示的"激活虚拟机" 标志(该标志可以是图标或者按钮等),向虚拟机监视器发送虚拟机激活命令, 虚拟机监视器的虚拟机管理命令接收模块接收到该虚拟机激活命令后,将虚拟 机系统的操作权从主机操作系统切换至与该虚拟机激活命令对应的虚拟机。
当用户不再需要该虚拟机时,可以通过"关闭虚拟机"标志(该标志可以 是图标或者按钮等)向虚拟机监视器发送虚拟机关闭命令,虛拟机监视器的虛 拟机管理命令接收模块接收到该虚拟机关闭命令后,虚拟机调度单元通过VT 指令库中的VM Entry和VM Exit指令将虛拟机系统的控制权从客户操作系统 切换到主机操作系统,返回到如图6所示的虚拟机监一见器的主界面。
如果创建的虛拟机的配置难以满足用户的需求,则用户可以通过图6所示 的虚拟机监视器中呈现的"修改虚拟机"标志(该标志可以是图标或者)向虚 拟机监视器发送虚拟机修改命令,虚拟机监视器中的虚拟机管理命令接收模块接收到该虚拟机修改命令后,向用户输出一如图8所示的创建参数修改窗口, 用户可以修改的虚拟机的创建参数包括虚拟机的内存大小和存储设备的容量、 虚拟CPU的个数、虚拟机支持的设备、虚拟机所支持的设备的启动顺序等。当 用户修改好虛拟机的创建参数后,通过点击该修改参数设置窗口的"提交"按 钮来确认本次修改,以向虚拟机监视器输入修改的虚拟机的创建参数。虛拟机 监视器中的虚拟机资源配置单元根据用户输入的修改后的虛拟机创建参数,重 新为该虚拟机分配石更件设备虚拟化单元虚拟的硬件资源,此时,虚拟机监视器
的主界面如闺6所示。对虚拟机进行修改后,需要重新启动该虚拟才几,虛拟机
的配置才生效。
当用户需要删除已创建的虚拟机时,可以通过图6所示的虚拟机监视器的 主界面中呈现的"虛拟机删除"标志(该标志可以是图标或者按钮等),向虚 拟机监视器发送虚拟机删除命令,虚拟机管理平台的虛拟机资源配置单元将分 配给该虚拟才几的虛拟石更件资源收回,从而删除该虛拟才几。
图9示出了本发明实施例提供的虛拟机系统的启动方法的实现流程,该虚 拟机系统包括计算机硬件、集成有虚拟机监视器的主机操作系统以及运行于所 迷虚拟机监视器的一个或者多个虛拟机,详述如下
在步骤S901中,计算机加电启动后,VT处理器对主机操作系统的完整性 进行度量,完成主才il4喿作系统的引导操作。该步骤与现有技术中的计算机启动 相似,在此不再赘述。
在步骤S902中,加载作为主机操作系统中的Driver的虛拟机监视器,同 时虚拟机系统的控制权转换至该虛拟机监视器。其中该虛拟机监视器是采用图 形化界面实现的,该虛拟机监视器的内部组成如上所述,在此不再赘述。
在步骤S903中,虚拟机监视器根据用户输入的虛拟机管理命令,执行相应 的操作。其中,虚拟机管理命令包括虚拟机创建命令、虚拟机修改命令、虛拟
机启动命令、虚拟机激活命令、虚拟机切换命令或者虚拟机删除命令。如当用 户输入的虚拟机管理命令为虚拟机创建命令时,则虛拟机监视器先向用户输出
ii一创建参数设置窗口 ,再根据用户通过该创建参数设置窗口输入的虚拟机创建 参数创建新的虚拟机;当用户输入的虚拟机管理命令为虚拟机修改命令时,则 虚拟机监视器先向用户输出一修改参数设置窗口 ,再根据用户通过该修改参数 设置窗口输入的修改后的虚拟机创建参数重新为该虚拟机分配虛拟化处理后的
硬件资源;当用户输入的虛拟机管理命令为虚拟机启动命令时,则虛拟机监视 器启动用户请求启动的虚拟机;所述虛拟机管理命令为虚拟机激活命令时,虚 拟机监视器执行所述虚拟机激活命令,激活虚拟机;当用户输入的虛拟机管理 命令为虚拟机切换命令时,则虚拟机监视器执行该虚拟机切换命令,将当前虚 拟机切换至用户请求的虚拟机;当用户输入的虚拟机管理命令为虚拟机删除命 令时,则虚拟机监视器删除该虚拟机,并回收分配给该虚拟机的经虚拟化处理 后的硬件资源。依次类推,虛拟机监视器根据用户输入的虛拟机管理命令,执 行相应的操作。
在本发明实施例中,通过将虛拟机监视器集成到主机操作系统中,即在计 算机底层的真实硬件与主机操作系统之间插入可控的虚拟机监视器层,通过集 成在主机操作系统中的虚拟机监视器可以直接对虛拟机监视器上运行的客户操 作系统进行监控和度量,从而使各客户操作系统不再需要主机操作系统的支持, 直接在硬件支持下运行,从而拥有最佳的性能。同时集成于主机操作系统中的 虚拟机监视器采用图形化界面设计,对上层客户操作系统所执行操作的完全图 形化支持,易用性有了很大提高,降低了用户使用虚拟机技术的操作门槛,隐 藏了很大的客户群,便于操作。
以上所述^L为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
权利要求
1、一种虚拟机系统,包括计算机硬件、虚拟机监视器、主机操作系统和一个或者多个虚拟机,其特征在于,所述虚拟机监视器集成于所述主机操作系统中,所述一个或者多个虚拟机运行于所述虚拟机监视器中。
2、 如权利要求l所述的系统,其特征在于,所述虛拟机监视器包括 虚拟机管理命令接收单元,用于接收用户发送的虛拟机管理命令; 硬件设备虚拟化单元,用于对所述硬件进行虛拟化处理; 虚拟机资源配置单元,用于将所述硬件设备虛拟化单元进行了虛拟化处理的^_件分配给所述一个或者多个虛拟机;通过VT指令库,用于管理所述虚拟机监视器的全部指令; 虛拟机调度单元,用于通过所述VT指令库中的指令实现虚拟机系统的控制权在所述虚拟机监视器和所述虚拟机之间的转换。
3、 如权利要求1或2所述的系统,其特征在于,所述虛拟机监视器采用图 形化界面实现。
4、 如权利要求2所述的系统,其特征在于,所述虚拟机管理命令包括虚拟 机创建命令、虚拟才几修改命令、虚拟机启动命令、、虛拟机激活命令、虛拟机 切换命令或者虛拟机删除命令。 '
5、 如权利要求2所述的系统,其特征在于,所述硬件设备虚拟化单元对 VT处理器、内存、输入输出设备和/或存储设备进行虛拟化处理。
6、 如权利要求l所述的系统,其特征在于,所述主机操作系统为Linux操 作系统、Windows 2000操作系统、WindowsXP操作系统、FreeBSD操作系统 或者类Linux操作系统。
7、 如权利要求l所述的系统,其特征在于,所述硬件包括VT处理器、主 板、内存、输入输出设备或者存储设备。
8、 如权利要求1所述的系统,其特征在于,所述虚拟机监视器以模块化的 方式集成于所述主机操作系统中,在安装所述主机操作系统时,所述虛拟机监视器以驱动的形式作为所述主机操作系统的驱动进行加载。
9、 一种如权利要求1所述的虛拟机系统的启动方法,其特征在于,所述方法包括下述步骤对主机操作系统的完整性进行度量,完成主机操作系统的引导操作; 加载集成于主机操作系统中的虚拟机监视器,并将虛拟机系统的控制权转 换至虚拟机监视器;虚拟机监视器根据用户输入的虚拟机管理命令,执行相应的操作。
10、 如权利要求9所述的方法,其特征在于,所述虛拟机管理命令包括虚 拟机创建命令、虛拟机修改命令、虛拟机启动命令、虚拟机激活命令、虚拟机 切换命令或者虛拟机删除命令。
11、 如权利要求IO所述的方法,其特征在于,所述虛拟机管理命令为虚拟 机创建命令时,虚拟机监视器执行所述虚拟机创建命令,创建新的虚拟机;所 述虚拟机管理命令为虛拟机修改命令时,虚拟机监视器执行所述虚拟机修改命 令,重新为虚拟机分配虚拟化处理后的硬件资源;所述虛拟机管理命令为虛拟 机启动命令时,虚拟机监视器执行所述虚拟机启动命令,启动虚拟机;所述虛 拟机管理命令为虚拟机激活命令时,虛拟机监视器执行所述虚拟机激活命令, 激活虚拟机「所述虛拟机管理命令为虛拟机切换命令时,虚拟机监视器执行所 述虚拟机切换命令,从当前虚拟机切换至用户请求的虚拟机;所述虛拟机管理 命令为虚拟机删除命令时,虛拟机监视器执行所述虚拟机删除命令,删除用户 请求删除的虛拟机。
全文摘要
本发明适用于虚拟技术领域,提供了一种虚拟机系统及其启动方法,虚拟机系统包括计算机硬件、虚拟机监视器、主机操作系统和一个或者多个虚拟机,所述虚拟机监视器集成于所述主机操作系统中,所述一个或者多个虚拟机运行于所述虚拟机监视器中。在本发明实施例中,通过将虚拟机监视器集成到主机操作系统中,即在计算机底层的真实硬件与主机操作系统之间插入可控的虚拟机监视器,通过该虚拟机监视器可以直接对运行于虚拟机监视器上的一个或者多个客户操作系统进行监控和度量,从而使各客户操作系统通过底层硬件的支持,直接访问硬件资源,直接在硬件支持下运行,拥有最佳的性能。
文档编号G06F9/455GK101493781SQ20081006599
公开日2009年7月29日 申请日期2008年1月24日 优先权日2008年1月24日
发明者姚文泽, 靖 宋, 张拥军, 林诗达, 明 石, 兵 贾 申请人:中国长城计算机深圳股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1