CN110046027A - 一种虚拟化平台实现方法及虚拟化平台 - Google Patents
一种虚拟化平台实现方法及虚拟化平台 Download PDFInfo
- Publication number
- CN110046027A CN110046027A CN201910327774.8A CN201910327774A CN110046027A CN 110046027 A CN110046027 A CN 110046027A CN 201910327774 A CN201910327774 A CN 201910327774A CN 110046027 A CN110046027 A CN 110046027A
- Authority
- CN
- China
- Prior art keywords
- virtual
- platform
- virtual platform
- cpu
- video memory
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000006870 function Effects 0.000 claims abstract description 22
- 230000007246 mechanism Effects 0.000 claims abstract description 7
- 230000005856 abnormality Effects 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 238000009877 rendering Methods 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 235000013399 edible fruits Nutrition 0.000 claims 1
- 230000002159 abnormal effect Effects 0.000 abstract description 3
- 230000001133 acceleration Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 1
- 235000013599 spices Nutrition 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开一种虚拟化平台实现方法及虚拟化平台,涉及虚拟化技术领域;利用本发明方法搭建的虚拟化平台,可以快速对异常进行处理,并且具有3D功能的动态库,可以实现3D加速功能,QEMU系统通过QGA控制虚拟机QXL显存大小,可以对显存进行调整,同时安装VxWorks、道系统,可以获得系统级实时的支持,并且可以设置容错机制,进行实现虚拟机容错功能,增加平台的稳定性。
Description
技术领域
本发明公开一种虚拟化平台实现方法及虚拟化平台,涉及虚拟化技术领域。
背景技术
虚拟化平台主要提供虚拟化服务,对计算机进行资源管理,能够将计算机的各种实体资源予以抽象,进行池化,形成虚拟资源池,包括运行的内核层和用户空间层。虚拟化平台上层部署了虚拟机,这些虚拟机的虚拟内存空间全部要来自于底层硬件所提供的物理内存,提供虚拟化场景的资源,虚拟化平台可以对资源进行配置,满足不同业务对资源的需求。可以将资源保证在一定范围内动态变化,在保证预留资源的下限的同时可以限制其上限。虚拟化平台的开发正是为了满足普通用户的实际需求。
本发明提供一种虚拟化平台实现方法及虚拟化平台,利用本发明方法搭建的虚拟化平台,可以快速对异常进行处理,并且具有3D功能的动态库,可以实现3D加速功能,QEMU系统通过QGA控制虚拟机QXL显存大小,可以对显存进行调整,同时安装VxWorks、道系统,可以获得系统级实时的支持,并且可以设置容错机制,进行实现虚拟机容错功能,增加平台的稳定性。
发明内容
本发明针对现有技术的问题,提供一种虚拟化平台实现方法及虚拟化平台,可实现虚拟机容错功能、轻量3D支持以及实时虚拟化功能。
本发明提出的具体方案是:
一种虚拟化平台实现方法:
搭建虚拟化平台,创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,并编译生成3D功能的动态库,
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,
虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU 的寄存器集合加载到物理CPU上,通过相应指令切换到非root模式执行,直到虚拟CPU退出到root模式,虚拟化平台进行异常处理。
所述的方法中搭建的虚拟化平台将VirtualBox源码中关于3D功能的源码提取出来,编译通过后实现3D指令的本地渲染,通过搭建VirtualBox编译环境生成3D功能的动态库。
所述的方法中搭建的虚拟化平台建立容错机制,在虚拟化平台的虚拟机集群中存在备机,启动一台虚拟机的同时,另外一台物理节点上启动一个备机,备机同步主虚拟机的内存。
所述的方法中QEMU系统先将QGA编译出正确结果,在QGA中增加修改显存的代码修改虚拟化平台的虚拟机注册表中显存大小实现显存动态调整。
一种虚拟化平台,创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,并编译生成3D功能的动态库,
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,
虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU 的寄存器集合加载到物理CPU上,通过相应指令切换到非root模式执行,直到虚拟CPU退出到root模式,虚拟化平台进行异常处理。
所述的一种虚拟化平台将VirtualBox源码中关于3D功能的源码提取出来,编译通过后实现3D指令的本地渲染,通过搭建VirtualBox编译环境生成3D功能的动态库。
所述的一种虚拟化平台建立容错机制,在虚拟化平台的虚拟机集群中存在备机,启动一台虚拟机的同时,另外一台物理节点上启动一个备机,备机同步主虚拟机的内存。
所述的一种虚拟化平台中QEMU系统先将QGA编译出正确结果,在QGA 中增加修改显存的代码修改虚拟化平台的虚拟机注册表中显存大小实现显存动态调整。
本发明的有益之处是:
本发明提供一种虚拟化平台实现方法及虚拟化平台,利用本发明方法搭建的虚拟化平台,可以快速对异常进行处理,并且具有3D功能的动态库,可以实现3D加速功能,QEMU系统通过QGA控制虚拟机QXL显存大小,可以对显存进行调整,同时安装VxWorks、道系统,可以获得系统级实时的支持,并且可以设置容错机制,进行实现虚拟机容错功能,增加平台的稳定性。
附图说明
图1是本发明方法流程示意图;
图2是本发明虚拟化平台开发过程框图;
图3是本发明虚拟化平台管理架构框图。
具体实施方式
本发明提供一种虚拟化平台实现方法:
搭建虚拟化平台,创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,并编译生成3D功能的动态库,
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,
虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU的寄存器集合加载到物理CPU上,通过相应指令切换到非root模式执行,直到虚拟CPU退出到root模式,虚拟化平台进行异常处理。
同时提供一种虚拟化平台,创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,并编译生成3D功能的动态库,
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,
虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU的寄存器集合加载到物理CPU上,通过相应指令切换到非root模式执行,直到虚拟CPU退出到root模式,虚拟化平台进行异常处理。
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
利用本发明方法,搭建某一虚拟化平台,开放过程参考图1,其中虚拟化层主要使用基于kvm+qemu的方式来实现虚拟化,支持的guest类型包括 Windows、Linux和实时操作系统,每个guest都可作为主机系统的一个进程独立运行,
创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,因为QGA 是QEMU中的一个模块,将QGA编译出正确结果,然后在QGA中增加修改显存的代码来修改Windows虚拟机注册表中显存大小来实现显存动态调整,
编译生成3D功能的动态库,可在虚拟化平台上将VirtualBox源码中关于 3D服务器端的源码提取出来,在Debian8.6平台下编译通过,并与Spice客户端结合实现3D指令的本地渲染,然后通过在Windows下搭建VirtualBox编译环境生成3D客户端所需的动态库;
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,并可将 Linux实时补丁打进当前的虚拟化平台系统中获得系统级实时的支持,
当虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU 的寄存器集合加载到物理CPU上,通过VM-LAUNCH或VM-RESUME指令切换到非 root模式执行,直到该线程时间片到,或者其它中断引发虚拟机退出,VCPU 退出到root模式,进行异常处理。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
Claims (8)
1.一种虚拟化平台实现方法,其特征是
搭建虚拟化平台,创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,并编译生成3D功能的动态库,
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,
虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU的寄存器集合加载到物理CPU上,通过相应指令切换到非root模式执行,直到虚拟CPU退出到root模式,虚拟化平台进行异常处理。
2.根据权利要求1所述的方法,其特征是搭建的虚拟化平台将VirtualBox源码中关于3D功能的源码提取出来,编译通过后实现3D指令的本地渲染,通过搭建VirtualBox编译环境生成3D功能的动态库。
3.根据权利要求1或2所述的方法,其特征是搭建的虚拟化平台建立容错机制,在虚拟化平台的虚拟机集群中存在备机,启动一台虚拟机的同时,另外一台物理节点上启动一个备机,备机同步主虚拟机的内存。
4.根据权利要求3所述的方法,其特征是QEMU系统先将QGA编译出正确结果,在QGA中增加修改显存的代码修改虚拟化平台的虚拟机注册表中显存大小实现显存动态调整。
5.一种虚拟化平台,其特征是创建QEMU主线程,执行QEMU系统的初始化,
在初始化的过程中QEMU系统通过QGA控制虚拟机QXL显存大小,并编译生成3D功能的动态库,
创建posix线程对应虚拟CPU线程,同时安装VxWorks、道系统,
虚拟化平台的虚拟CPU线程被调度到物理CPU上执行时,对应虚拟CPU的寄存器集合加载到物理CPU上,通过相应指令切换到非root模式执行,直到虚拟CPU退出到root模式,虚拟化平台进行异常处理。
6.根据权利要求5所述的一种虚拟化平台,其特征是虚拟化平台将VirtualBox源码中关于3D功能的源码提取出来,编译通过后实现3D指令的本地渲染,通过搭建VirtualBox编译环境生成3D功能的动态库。
7.根据权利要求5或6所述的一种虚拟化平台,其特征是虚拟化平台建立容错机制,在虚拟化平台的虚拟机集群中存在备机,启动一台虚拟机的同时,另外一台物理节点上启动一个备机,备机同步主虚拟机的内存。
8.根据权利要求7所述的一种虚拟化平台,其特征是QEMU系统先将QGA编译出正确结果,在QGA中增加修改显存的代码修改虚拟化平台的虚拟机注册表中显存大小实现显存动态调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910327774.8A CN110046027A (zh) | 2019-04-23 | 2019-04-23 | 一种虚拟化平台实现方法及虚拟化平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910327774.8A CN110046027A (zh) | 2019-04-23 | 2019-04-23 | 一种虚拟化平台实现方法及虚拟化平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110046027A true CN110046027A (zh) | 2019-07-23 |
Family
ID=67278514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910327774.8A Pending CN110046027A (zh) | 2019-04-23 | 2019-04-23 | 一种虚拟化平台实现方法及虚拟化平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110046027A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443876A (zh) * | 2019-07-31 | 2019-11-12 | 新华三大数据技术有限公司 | 3d图像渲染方法及装置 |
CN110879754A (zh) * | 2019-11-27 | 2020-03-13 | 山东超越数控电子股份有限公司 | 一种虚拟化实现的方法和设备 |
CN111709031A (zh) * | 2020-05-28 | 2020-09-25 | 杭州电子科技大学 | 一种覆盖率引导的VxWorks内核模糊测试方法 |
CN113411225A (zh) * | 2021-08-20 | 2021-09-17 | 苏州浪潮智能科技有限公司 | 基于云主机的qga服务管理方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051710A (zh) * | 2012-12-20 | 2013-04-17 | 中国科学院深圳先进技术研究院 | 一种虚拟云平台管理系统及方法 |
CN103761139A (zh) * | 2014-01-25 | 2014-04-30 | 湖南大学 | 一种基于动态库拦截的通用计算虚拟化实现方法 |
KR20180107983A (ko) * | 2017-03-23 | 2018-10-04 | 한국전자통신연구원 | 가상화 플랫폼 생성 및 실행 장치 및 그 방법 |
CN109343922A (zh) * | 2018-09-17 | 2019-02-15 | 广东微云科技股份有限公司 | 一种gpu虚拟化画面显示的方法及装置 |
-
2019
- 2019-04-23 CN CN201910327774.8A patent/CN110046027A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051710A (zh) * | 2012-12-20 | 2013-04-17 | 中国科学院深圳先进技术研究院 | 一种虚拟云平台管理系统及方法 |
CN103761139A (zh) * | 2014-01-25 | 2014-04-30 | 湖南大学 | 一种基于动态库拦截的通用计算虚拟化实现方法 |
KR20180107983A (ko) * | 2017-03-23 | 2018-10-04 | 한국전자통신연구원 | 가상화 플랫폼 생성 및 실행 장치 및 그 방법 |
CN109343922A (zh) * | 2018-09-17 | 2019-02-15 | 广东微云科技股份有限公司 | 一种gpu虚拟化画面显示的方法及装置 |
Non-Patent Citations (2)
Title |
---|
LUX_VERITAS: "QEMU-KVM的初始化与客户系统的执行", 《CSDN》 * |
陶菘: "桌面云协议之SPICE协议介绍", 《微信公众号》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443876A (zh) * | 2019-07-31 | 2019-11-12 | 新华三大数据技术有限公司 | 3d图像渲染方法及装置 |
CN110879754A (zh) * | 2019-11-27 | 2020-03-13 | 山东超越数控电子股份有限公司 | 一种虚拟化实现的方法和设备 |
CN111709031A (zh) * | 2020-05-28 | 2020-09-25 | 杭州电子科技大学 | 一种覆盖率引导的VxWorks内核模糊测试方法 |
CN113411225A (zh) * | 2021-08-20 | 2021-09-17 | 苏州浪潮智能科技有限公司 | 基于云主机的qga服务管理方法、装置、设备及介质 |
CN113411225B (zh) * | 2021-08-20 | 2021-11-09 | 苏州浪潮智能科技有限公司 | 基于云主机的qga服务管理方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110046027A (zh) | 一种虚拟化平台实现方法及虚拟化平台 | |
CN107786568B (zh) | 一种拟态云主机的自动构建装置、方法及系统 | |
Tosatto et al. | Container-based orchestration in cloud: state of the art and challenges | |
US8713566B2 (en) | Method and system for delivering and executing virtual container on logical partition of target computing device | |
US8762986B2 (en) | Advanced packaging and deployment of virtual appliances | |
US9003392B2 (en) | Use of cloning in maintenance of virtual appliances | |
US9164790B2 (en) | Live virtual machine template creation | |
US20180316559A1 (en) | Managing virtual network functions | |
Vallee et al. | System-level virtualization for high performance computing | |
CN105573830B (zh) | 一种虚拟机迁移方法 | |
CN108089913B (zh) | 一种超融合系统的虚拟机部署方法 | |
JP2015534167A (ja) | クラウドコンピューティング環境で使用するサービス管理エンジンを提供するためのシステムおよび方法 | |
CN105447643A (zh) | 一种面向云计算平台的科学工作流系统及方法 | |
CN104714823B (zh) | 基于OpenStack的新建主机配置方法 | |
CN107678831A (zh) | 一种实现跨虚拟化平台间迁移的v2v方法 | |
CN108255574A (zh) | 一种虚拟机迁移方法及装置 | |
CN108900656A (zh) | 一种批量部署的方法及装置 | |
CN107368353A (zh) | 一种实现虚拟机内存热添加的方法和装置 | |
Hadley et al. | Multibox: Lightweight containers for vendor-independent multi-cloud deployments | |
CN106406978B (zh) | 私有云虚拟机模板自动制作装置及方法 | |
EP3114563A1 (en) | Method for generating upgrade campaigns to upgrade virtualization facilities | |
CN110058925A (zh) | 一种在云计算系统中创建虚拟机的方法 | |
Chen et al. | Mercury: Combining performance with dependability using self-virtualization | |
Panitkin et al. | ATLAS Cloud R&D | |
Slawinski et al. | Adapting mpi to mapreduce paas clouds: An experiment in cross-paradigm execution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190723 |
|
RJ01 | Rejection of invention patent application after publication |