CN103488522B - 一种管理虚拟机的设备的方法及设备 - Google Patents

一种管理虚拟机的设备的方法及设备 Download PDF

Info

Publication number
CN103488522B
CN103488522B CN201310432720.0A CN201310432720A CN103488522B CN 103488522 B CN103488522 B CN 103488522B CN 201310432720 A CN201310432720 A CN 201310432720A CN 103488522 B CN103488522 B CN 103488522B
Authority
CN
China
Prior art keywords
equipment
virtual machine
frequency
timer
state
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.)
Expired - Fee Related
Application number
CN201310432720.0A
Other languages
English (en)
Other versions
CN103488522A (zh
Inventor
王锐
迟建春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310432720.0A priority Critical patent/CN103488522B/zh
Publication of CN103488522A publication Critical patent/CN103488522A/zh
Application granted granted Critical
Publication of CN103488522B publication Critical patent/CN103488522B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供一种管理虚拟机的设备的方法及设备。涉及计算机领域,解决了现有技术在虚拟机没有使用设备的情况下,定时器还是保持高精度,造成CPU资源浪费的这一问题。具体方案为:通过获取所述虚拟机的设备的当前状态;并根据虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与所述定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率。本发明用于管理虚拟机的设备。

Description

一种管理虚拟机的设备的方法及设备
技术领域
本发明涉及计算机领域,尤其涉及一种管理虚拟机的设备的方法及设备。
背景技术
虚拟化平台可以实现一套硬件设备上运行多台虚拟机。虚拟机的设备为虚拟设备,可以由模拟处理器模拟并且进行相应的管理。模拟处理器可以是宿主机上的一个用户态进程,每一台虚拟机拥有一个自己的模拟处理器进程;模拟处理器里有若干定时器(timer)用来处理虚拟机设备的事件,定时器定期查询设备是否有事件需要处理来实现对设备事件的响应,定时器的触发频率影响着对设备事件的响应实时性。
一般情况下,模拟处理器里的定时器根据固定的频率定期的查询处理设备事件,如果有事件需处理则进行处理,之后重新进入定时器循环流程,等待下一次定时器到期,重复之前步骤。
发明人发现现有技术至少存在以下问题:作为用户态进程,模拟处理器会有资源开销,当宿主机上虚拟机数量多时,所有模拟处理器的CPU开销就非常高。现有技术只能根据使用场景,预先设定好定时器频率,在设备响应精度与模拟处理器进程CPU资源开销中做权衡取舍。某些对CPU资源要求高的场景下,通过降低虚拟机的设备定时器的频率,达到降低模拟处理器进程CPU利用率;某些对虚拟机的设备响应时间要求高的场景下,提高虚拟机的设备定时器频率,减少虚拟机的设备的响应延时。为了保障虚拟机设备能够得到及时响应,定时器的频率一般会设置的很高,但是在虚拟机没有使用设备的情况下,定时器还是保持高精度,造成CPU资源浪费,降低了虚拟机的性能。
发明内容
本发明实施例提供一种管理虚拟机的设备的方法及设备,实现保证虚拟机设备高精度性能体验同时降低了CPU的开销,提高虚拟机性能。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种管理虚拟机的设备的方法,包括:
获取所述虚拟机的设备的当前状态;
根据所述虚拟机的设备的当前状态以及预设的所述虚拟机的设备的状态与所述定时器频率的对应关系,将所述虚拟机的设备的定时器的当前频率更改为与所述虚拟机的设备的当前状态对应的定时器的频率。
在第一种可能的实现方式中,根据第一方面,所述虚拟机的设备的状态包括:所述虚拟机的设备有事件需要处理,或者,所述虚拟机的设备没有事件需要处理。
在第二种可能的实现方式中,根据第一种可能的实现方式,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备有事件需要处理对应所述定时器的第一频率;所述虚拟机的设备没有事件需要处理对应所述定时器的第二频率;其中,所述第一频率大于所述第二频率。
在第三种可能的实现方式中,根据第一方面,所述虚拟机的设备的状态包括:所述虚拟机的设备即将被使用,或者,所述虚拟机的设备不即将被使用。
在第四种可能的实现方式中,根据第三种可能的实现方式,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备即将被使用对应所述定时器的第三频率;所述虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,所述第三频率大于所述第四频率。
在第五种可能的实现方式中,根据第三种可能的实现方式或者第四种可能的实现方式,所述获取所述虚拟机的设备的当前状态,包括:
检测所述虚拟机的设备的当前所处的模式,其中,所述虚拟机的模式与所述虚拟机的设备一一对应,每一种模式分别用于指示与所述模式对应的所述虚拟机的设备即将被使用;
若所述虚拟机的当前所处的模式包含所述虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
第二方面,提供一种管理虚拟机的设备的设备,包括:
获取单元,用于获取所述虚拟机的设备的当前状态;
更改单元,用于根据所述获取单元获取的所述虚拟机的设备的当前状态以及预设的所述虚拟机的设备的状态与所述定时器频率的对应关系,将所述虚拟机的设备的定时器的当前频率更改为所述虚拟机的设备的当前状态对应的定时器的频率。
在第一种可能的实现方式中,根据第二方面,所述虚拟机的设备的状态包括:所述虚拟机的设备有事件需要处理,或者,所述虚拟机的设备没有事件需要处理。
在第二种可能的实现方式中,根据第一种可能的实现方式,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备有事件需要处理对应所述定时器的第一频率;所述虚拟机的设备没有事件需要处理对应所述定时器的第二频率;其中,所述第一频率大于所述第二频率。
在第三种可能的实现方式中,根据第二方面,所述虚拟机的设备的状态包括:所述虚拟机的设备即将被使用,或者,所述虚拟机的设备不即将被使用。
在第四种可能的实现方式中,根据第三种可能的实现方式,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备即将被使用对应所述定时器的第三频率;所述虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,所述第三频率大于所述第四频率。
在第五种可能的实现方式中,根据第三种可能的实现方式或者第四种可能的实现方式,所述获取单元具体用于,
检测所述虚拟机的设备的当前所处的模式,其中,所述虚拟机的模式与所述虚拟机的设备一一对应,每一种模式分别用于指示与所述模式对应的所述虚拟机的设备即将被使用;
若所述虚拟机的当前所处的模式包含所述虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
本发明的实施例提供的管理虚拟机的设备的方法及设备,通过获取虚拟机的设备的当前状态;并根据虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率,从而实现根据虚拟机的设备的当前状态自动更改虚拟机设备定时器的频率,从而在保证虚拟机设备高精度性能体验同时降低了CPU的开销,解决了现有技术在虚拟机没有使用设备的情况下,定时器还是保持高精度,造成CPU资源浪费的缺陷。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中的一种管理虚拟机的设备的方法流程示意图;
图2为本发明实施例提供的一种管理虚拟机的设备的方法流程示意图;
图3为本发明实施例提供的另一种管理虚拟机的设备的方法流程示意图;
图4为本发明实施例提供的再一种管理虚拟机的设备的方法流程示意图;
图5为本发明实施例提供的一种管理虚拟机的设备的装置结构示意图;
图6为本发明实施例提供的一种物理机的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
虚拟化平台可以实现在一套硬件设备上运行多台虚拟机。一个宿主机上的硬件设备被抽象成资源池,虚拟化平台把资源池中的设备资源组装成多台虚拟机。本发明实施例提供的管理虚拟机的设备的方法可以应用于多种虚拟化平台,本实施例仅以xen和基于内核的虚拟机(Kernel-based Virtual Machine,简称KVM)为例进行说明。
在xen或KVM虚拟化平台上,虚拟机的设备为虚拟设备,可以由模拟处理器模拟和管理,例如,虚拟机的设备可以包含模拟处理器模拟的USB鼠标,U盘等。其中,模拟处理器可以包括qemu,qemu是宿主机上的一个用户态进程,宿主机上每一台虚拟机拥有一个自己的qemu进程。参见图1,为现有技术中一种管理虚拟机的设备的方法流程图,如图1所示,现有技术中模拟处理器里的定时器根据固定的频率定期的检测是否有设备事件需要处理(例如N毫秒执行一次),如果有事件需处理则进行处理,之后重新进入定时器循环流程;如果没有事件需处理则返回定时器循环流程。
不难理解,定时器的触发频率影响着虚拟机的设备对事件响应的实时性。而作为用户态进程,qemu会有资源开销,尤其当宿主机上虚拟机数量较多时,所有qemu进程的CPU开销就不容忽视。而现有技术中模拟处理器里的定时器根据固定的频率定期的查询处理设备事件,如果有事件需处理则进行处理,之后重新进入定时器循环流程。所以导致高性能的设备体验与虚拟机的设备空闲时qemu进程CPU利用率不能兼顾,例如:对CPU资源要求高的场景下,现有技术一般采用降低虚拟机的设备的定时器频率以达到降低qemu进程的CPU开销,但牺牲了虚拟机的设备的响应实时性;在对设备的响应实时性要求高的场景下,现有技术虚拟机的设备的定时器一般使用高频率,会导致虚拟机的设备空闲时qemu进程的CPU开销增加。
为此,一方面,本发明实施例提供一种管理虚拟机的设备的方法,参见图2,该方法可以包括:
201:模拟处理器获取所述虚拟机的设备的当前状态;
虚拟机的设备是指与每个虚拟机对应的虚拟设备,例如模拟处理器模拟的键盘、鼠标、串口、USB设备等。
可选的,模拟处理器,例如qemu,可以对虚拟机的设备进行管理,qemu里面设置若干分别与虚拟机的设备一一对应的定时器(timer),定时器分别按照一定频率定期查询与该定时器对应的虚拟机的设备的状态,用于处理与该定时器对应的虚拟机的设备的事件,例如,与U盘、USB鼠标等设备对应的定时器可以为USB控制器定时器。
可选的,虚拟机的设备的状态可以根据需要进行设置,本发明实施例对于虚拟机的设备的具体的状态的种类和数量不进行限制。
例如,虚拟机的设备的状态可以包括:虚拟机的设备有事件需要处理,或者,虚拟机的设备没有事件需要处理。
再例如,虚拟机的设备的状态可以包括:虚拟机的设备即将被使用,或者,虚拟机的设备不即将被使用。
可选的,获取所述虚拟机的设备的当前状态,可以包括:
检测虚拟机的设备的当前所处的模式,其中,虚拟机的模式与虚拟机的设备一一对应,每一种模式分别用于指示与该模式对应的虚拟机的设备即将被使用;
若虚拟机的设备当前所处的模式包含该虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
例如:由于通常连接了VNC以后都会有鼠标操作,故可预设USB鼠标对应的模式为使用VNC登录虚拟机;所以,当模拟处理器检测到USB鼠标当前所处的模式为“使用VNC登录虚拟机”,则可判断USB鼠标的当前状态为即将被使用;
同理,由于通常插了U盘以后都会有U盘数据传输,故可预设U盘对应的模式为插了U盘;所以,当模拟处理器检测到U盘当前所处的模式为“插了U盘”,则可判断U盘的当前状态为即将被使用;
需要说明的是,虚拟机的设备的模式可以根据实际需要进行预设,虚拟机的设备的每一个模式可以对应该虚拟机的设备即将被使用,本发明实施例对虚拟机的设备的模式不进行具体限定。
202:根据虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率。
可选的,虚拟机的设备的状态与定时器频率的对应关系可以根据需要预先进行设置,每种虚拟机的设备的状态对应该虚拟机的设备的定时器的一个频率,本发明实施例对于该对应关系的形式不进行限制,优选的,对于响应精度要求高的虚拟机的设备的状态,可以对应一个较高的频率,对于响应精度要求不高的虚拟机的设备的状态,可以对应一个较低的频率,其中,本发明实施例对于较高的频率以及较低的频率不具体进行限制,具体可以根据实际要求或者经验确定。
可选的,该预设的虚拟机的设备的状态与定时器频率的对应关系可以包括:虚拟机的设备有事件需要处理对应所述定时器的第一频率;虚拟机的设备没有事件需要处理对应定时器的第二频率;其中,第一频率大于第二频率。
可选的,预设的虚拟机的设备的状态与定时器频率的对应关系可以包括:虚拟机的设备即将被使用对应所述定时器的第三频率;虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,第三频率大于第四频率。
本发明的实施例提供的管理虚拟机的设备的方法,通过获取所述虚拟机的设备的当前状态;并根据虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与所述定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率,从而实现根据虚拟机的设备的当前状态自动更改虚拟机设备定时器的频率,从而在保证虚拟机设备高精度性能体验的同时降低了CPU的开销,解决了现有技术在虚拟机没有使用设备的情况下,定时器还是保持高精度,造成CPU资源浪费的缺陷。
下面通过两个具体实施例对图2所示方法实施例进行详细描述。
实施例一
本实施例以虚拟机的设备为U盘,且以虚拟机的设备的状态为是否有事件需要处理为例进行说明,参见图3,可以包括:
301、模拟处理器获取虚拟机的设备即U盘的当前状态;
可选的,U盘的状态可以为是否有事件需要处理;
例如,qemu中U盘的定时器按照一定频率定期检测一次虚拟机是否有U盘事件。
302、若该U盘的状态为没有事件需要处理,将与该U盘对应的定时器的当前频率F更改为与“没有事件需要处理”这个状态对应的第二频率F2;
定时器的频率影响着虚拟机对该定时器对应的设备的事件响应的实时性,也影响着qemu进程的CPU利用率。以虚拟机平台上使用U盘传输数据为例,参见表1,为虚拟机模拟的U盘的定时器频率、传输数据时的写速度和模拟处理器的利用率三方面对应关系的测试结果。
表1
由表1可知,虚拟机模拟的U盘的定时器频率越低,文件写速率越低,模拟处理器利用率也越低,虚拟机模拟的U盘的定时器频率越高,文件写速率越高,模拟处理器利用率也越高。
所以,为了降低模拟处理器利用率,可以将第二频率F2设置为较低的频率,例如,F2=20次/ms。
303、当该U盘的状态为有事件需要处理,模拟处理器处理事件;
304、将与该U盘对应的定时器的当前频率F更改为与“有事件需要处理”这个状态对应的第一频率F1。
为了提高文件写速率,可以将第一频率F1设置为较高的频率,例如,F1=1000次/ms。
可见,本发明的实施例提供的管理虚拟机的设备的方法,通过判断虚拟机的U盘是否有事件需要处理,当查询到U盘需要传输数据时,此时将U盘的定时器当前频率更改为较高频率(1000次/ms),文件写速率提高到2.4MB/s,模拟处理器CPU利用率为2%;当模拟处理器获取到U盘没有事件需要处理时,将U盘的定时器当前频率更改为较低频率(20次/ms),此时文件写速率为880KB/s模拟处理器CPU利用率为1%。既保证了U盘传输数据时高的文件写速率(2.4MB/s),也保证了U盘无数据传输时(虚拟机的设备空闲时),与现有技术保证U盘以2.4MB/s传输数据相比,对闲时CPU的消耗降低了1%。降低了保证虚拟机设备高精度性能体验同时虚拟机不使用设备时CPU的开销。
实施例二
本实施例的原理与实施例一相同,故仅对不同部分进行详细说明,本实施例以虚拟机的设备为USB鼠标,且以USB鼠标的状态为是否即将被使用为例进行说明,参见图4,包括:
401、模拟处理器获取虚拟机的设备即USB鼠标的当前状态;
可选的,USB鼠标的状态可以为是否即将被使用;
示例性的,可以通过下述方式判断USB鼠标是否即将被使用:
例如:若当模拟处理器检测到USB鼠标当前所处的模式为“使用VNC登录虚拟机”,则可判断USB鼠标的当前状态为即将被使用;
402、若该USB鼠标没有即将被使用,将与该USB鼠标对应的定时器的当前频率F更改为与“没有即将被使用”这个状态对应的第四频率F4;
一般的,USB鼠标定时器频率越高,VNC登录虚拟机后USB鼠标越灵敏、越流畅,但是也会让虚拟机空闲时qemu CPU利用率越高。
参见表2,为虚拟机模拟的USB鼠标的定时器频和模拟处理器CPU的利用率两方面对应关系的测试结果。
表2
虚拟机模拟的USB鼠标定时器频率 模拟处理器利用率
200次/s 6%
500次/s 8%
1000次/s 12%
2000次/s 19%
所以,为了降低模拟处理器利用率,可以将第四频率F4设置为较低的频率,例如,F4=200次/s。
403、当该USB鼠标的状态为即将被使用,将与该USB鼠标的定时器的当前频率F更改为与“即将被使用”这个状态对应的第三频率F3。
为了提高USB鼠标的灵敏度和流畅度,可以将第三频率F3设置为较高的频率,例如,F3=2000次/s。
可见,本发明的实施例提供的管理虚拟机的设备的方法,通过判断USB鼠标是否即将被使用,当获取到该USB鼠标当前处于使用VNC登陆虚拟机模式,预计即将有鼠标事件需要处理将USB鼠标的定时器当前频率更改为2000次/s,,此时模拟处理器CPU利用率为19%;当模拟处理器获取到该USB鼠标当前没有处于使用VNC登陆模式,将该USB鼠标的定时器当前频率更改为200次/s,此时模拟处理器CPU利用率为6%。既保证了USB鼠标使用的灵敏流畅,也保证了与现有技术保证USB鼠标同样灵敏流畅相比,对闲时CPU的消耗降低了13%。另外,本实施例可以根据虚拟机当前的模式,预计到将会收到虚拟机的设备事件,在还没收到虚拟机的设备事件之前,就将定时器切换到高频,更好地保证外设使用时的性能体验。
一方面,本发明实施例提供一种管理虚拟机的设备的设备50,用于本发明实施例提供的方法,参见图5,该设备包括:
获取单元501,用于获取所述虚拟机的设备的当前状态;
可选的,虚拟机的设备的状态可以根据需要进行设置,本发明实施例对于虚拟机的设备的具体的状态的种类和数量不进行限制。
例如,虚拟机的设备的状态可以包括:虚拟机的设备有事件需要处理,或者,虚拟机的设备没有事件需要处理。
再例如,虚拟机的设备的状态可以包括:虚拟机的设备即将被使用,或者,虚拟机的设备不即将被使用。
可选的,获取单元501具体用于:
检测所述虚拟机的设备的当前所处的模式,其中,所述虚拟机的模式与所述虚拟机的设备一一对应,每一种模式分别用于指示与所述模式对应的所述虚拟机的设备即将被使用;
若所述虚拟机的当前所处的模式包含所述虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
更改单元502,用于根据获取单元501获取的虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率。
可选的,虚拟机的设备的状态与定时器频率的对应关系可以根据需要预先进行设置,每种虚拟机的设备的状态对应该虚拟机的设备的定时器的一个频率,本发明实施例对于该对应关系的形式不进行限制,优选的,对于响应精度要求高的虚拟机的设备的状态,可以对应一个较高的频率,对于响应精度要求不高的虚拟机的设备的状态,可以对应一个较低的频率,其中,本发明实施例对于较高的频率以及较低的频率不具体进行限制,具体可以根据实际要求或者经验确定。
可选的,该预设的虚拟机的设备的状态与定时器频率的对应关系可以包括:虚拟机的设备有事件需要处理对应所述定时器的第一频率;虚拟机的设备没有事件需要处理对应定时器的第二频率;其中,第一频率大于第二频率。
可选的,预设的虚拟机的设备的状态与定时器频率的对应关系可以包括:虚拟机的设备即将被使用对应所述定时器的第三频率;虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,第三频率大于第四频率。
本发明的实施例提供的管理虚拟机的设备的设备50,通过获取所述虚拟机的设备的当前状态;并根据虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与所述定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率,从而实现根据虚拟机的设备的当前状态自动更改虚拟机设备定时器的频率,从而在保证虚拟机设备高精度性能体验同时降低了CPU的开销,解决了现有技术在虚拟机没有使用设备的情况下,定时器还是保持高精度,造成CPU资源浪费的缺陷。
请参阅图6,为本发明实施例提供的一种物理机60。该物理机60除包括图6中示出的物理设备(处理器和存储器)之外,还可以包括键盘、鼠标、显示屏等输入/输出设备,以及串口等通信设备,还可以包括外置存储设备USB等;运行在物理设备之上的还可以有软件模式的虚拟机监视器或虚拟机内核,在虚拟机监视器或虚拟机内核上可以运行有一个或多个虚拟机,每个虚拟机都有与该虚拟机对应的虚拟设备(也可称之为虚拟机的设备或虚拟设备),例如虚拟的键盘、鼠标、串口、USB设备等。图6仅示出该物理机的物理设备,参见图6,该物理机60可以包括:
至少一个处理器601;存储器602,至少一个通信总线603,用于实现处理器601、存储器602以及其它未示出的模块之间的连接和相互通信;
其中,通信总线603可以是工业标准体系结构(Industry StandardArchitecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为EISA)总线等。该总线603可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器602可以包括只读存储器和随机存取存储器,并向处理器601提供指令和数据。存储器601的一部分还可以包括非易失行随机存取存储器(NVRAM)。
处理器601可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
处理器601用于从存储器602中获取指令后,执行如下动作:获取所述虚拟机的设备的当前状态;并根据所述获取的所述虚拟机的设备的当前状态以及预设的所述虚拟机的设备的状态与定时器频率的对应关系,将所述虚拟机的设备的定时器的当前频率更改为与所述虚拟机的设备的当前状态对应的定时器的频率。
可选的,虚拟机的设备的状态可以根据需要进行设置,本发明实施例对于虚拟机的设备的具体的状态的种类和数量不进行限制。
例如,虚拟机的设备的状态可以包括:虚拟机的设备有事件需要处理,或者,虚拟机的设备没有事件需要处理。
再例如,虚拟机的设备的状态可以包括:虚拟机的设备即将被使用,或者,虚拟机的设备不即将被使用。
可选的,处理器601具体用于:
检测所述虚拟机的设备的当前所处的模式,其中,所述虚拟机的模式与所述虚拟机的设备一一对应,每一种模式分别用于指示与所述模式对应的所述虚拟机的设备即将被使用;
若所述虚拟机的当前所处的模式包含所述虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
可选的,虚拟机的设备的状态与定时器频率的对应关系可以根据需要预先进行设置,每种虚拟机的设备的状态对应该虚拟机的设备的定时器的一个频率,本发明实施例对于该对应关系的形式不进行限制,优选的,对于响应精度要求高的虚拟机的设备的状态,可以对应一个较高的频率,对于响应精度要求不高的虚拟机的设备的状态,可以对应一个较低的频率,其中,本发明实施例对于较高的频率以及较低的频率不具体进行限制,具体可以根据实际要求或者经验确定。
可选的,该预设的虚拟机的设备的状态与定时器频率的对应关系可以包括:虚拟机的设备有事件需要处理对应所述定时器的第一频率;虚拟机的设备没有事件需要处理对应定时器的第二频率;其中,第一频率大于第二频率。
可选的,预设的虚拟机的设备的状态与定时器频率的对应关系可以包括:虚拟机的设备即将被使用对应所述定时器的第三频率;虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,第三频率大于第四频率。
本发明的实施例提供的管理虚拟机的设备的设备60,通过获取所述虚拟机的设备的当前状态;并根据虚拟机的设备的当前状态以及预设的虚拟机的设备的状态与所述定时器频率的对应关系,将虚拟机的设备的定时器的当前频率更改为与虚拟机的设备的当前状态对应的定时器的频率,从而实现根据虚拟机的设备的当前状态自动更改虚拟机设备定时器的频率,从而在保证虚拟机设备高精度性能体验同时降低了CPU的开销,解决了现有技术在虚拟机没有使用设备的情况下,定时器还是保持高精度,造成CPU资源浪费的缺陷。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (8)

1.一种管理虚拟机的设备的方法,其特征在于,包括:
获取所述虚拟机的设备的当前状态;其中,所述虚拟机的设备是虚拟机对应的虚拟设备中任一个;所述虚拟机的设备的状态包括:所述虚拟机的设备有事件需要处理,或者,所述虚拟机的设备没有事件需要处理;或者,所述虚拟机的设备即将被使用,或者,所述虚拟机的设备不即将被使用;
根据所述虚拟机的设备的当前状态以及预设的所述虚拟机的设备的状态与定时器频率的对应关系,将所述虚拟机的设备的定时器的当前频率更改为与所述虚拟机的设备的当前状态对应的定时器的频率。
2.根据权利要求1所述的管理虚拟机的设备的方法,其特征在于,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备有事件需要处理对应所述定时器的第一频率;所述虚拟机的设备没有事件需要处理对应所述定时器的第二频率;其中,所述第一频率大于所述第二频率。
3.根据权利要求1所述的管理虚拟机的设备的方法,其特征在于,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备即将被使用对应所述定时器的第三频率;所述虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,所述第三频率大于所述第四频率。
4.根据权利要求1或3所述的管理虚拟机的设备的方法,其特征在于,所述获取所述虚拟机的设备的当前状态,包括:
检测所述虚拟机的设备的当前所处的模式,其中,所述虚拟机的设备的模式与所述虚拟机的设备一一对应,每一种模式分别用于指示与所述模式对应的所述虚拟机的设备即将被使用;
若所述虚拟机的设备的当前所处的模式包含所述虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
5.一种管理虚拟机的设备的设备,其特征在于,包括:
获取单元,用于获取所述虚拟机的设备的当前状态;其中,所述虚拟机的设备是虚拟机对应的虚拟设备中任一个;所述虚拟机的设备的状态包括:所述虚拟机的设备有事件需要处理,或者,所述虚拟机的设备没有事件需要处理;或者,所述虚拟机的设备即将被使用,或者,所述虚拟机的设备不即将被使用;
更改单元,用于根据所述获取单元获取的所述虚拟机的设备的当前状态以及预设的所述虚拟机的设备的状态与定时器频率的对应关系,将所述虚拟机的设备的定时器的当前频率更改为与所述虚拟机的设备的当前状态对应的定时器的频率。
6.根据权利要求5所述的管理虚拟机的设备的设备,其特征在于,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备有事件需要处理对应所述定时器的第一频率;所述虚拟机的设备没有事件需要处理对应所述定时器的第二频率;其中,所述第一频率大于所述第二频率。
7.根据权利要求5所述的管理虚拟机的设备的设备,其特征在于,所述预设的所述虚拟机的设备的状态与所述定时器频率的对应关系包括:所述虚拟机的设备即将被使用对应所述定时器的第三频率;所述虚拟机的设备不即将被使用对应所述定时器的第四频率;其中,所述第三频率大于所述第四频率。
8.根据权利要求5或7所述的管理虚拟机的设备的设备,其特征在于,所述获取单元具体用于,
检测所述虚拟机的设备的当前所处的模式,其中,所述虚拟机的设备的模式与所述虚拟机的设备一一对应,每一种模式分别用于指示与所述模式对应的所述虚拟机的设备即将被使用;
若所述虚拟机的设备的的当前所处的模式包含所述虚拟机的设备对应的模式,则判断所述虚拟机的设备的当前状态为即将被使用。
CN201310432720.0A 2013-09-22 2013-09-22 一种管理虚拟机的设备的方法及设备 Expired - Fee Related CN103488522B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310432720.0A CN103488522B (zh) 2013-09-22 2013-09-22 一种管理虚拟机的设备的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310432720.0A CN103488522B (zh) 2013-09-22 2013-09-22 一种管理虚拟机的设备的方法及设备

Publications (2)

Publication Number Publication Date
CN103488522A CN103488522A (zh) 2014-01-01
CN103488522B true CN103488522B (zh) 2017-10-17

Family

ID=49828779

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310432720.0A Expired - Fee Related CN103488522B (zh) 2013-09-22 2013-09-22 一种管理虚拟机的设备的方法及设备

Country Status (1)

Country Link
CN (1) CN103488522B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110838953B (zh) * 2019-11-01 2021-08-17 北京字节跳动网络技术有限公司 一种测试方法、系统、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1508652A (zh) * 2002-12-18 2004-06-30 国际商业机器公司 关注功率的自适应轮询方法和系统
CN101027640A (zh) * 2004-09-30 2007-08-29 英特尔公司 为与虚拟机监控程序相关联的定时器提供支持
CN101719081A (zh) * 2009-12-01 2010-06-02 北京大学 一种虚拟机调度方法
CN101739113A (zh) * 2008-11-20 2010-06-16 国际商业机器公司 在虚拟化集群系统中进行能效管理的方法及装置
CN102103516A (zh) * 2009-12-22 2011-06-22 英特尔公司 基于虚拟cpu的频率和电压调节
US8191062B2 (en) * 2006-03-31 2012-05-29 Intel Corporation System for processor frequency governors to govern a processor frequency by deriving CPU utilization information based on the state of virtual machine monitor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8533709B2 (en) * 2005-08-04 2013-09-10 Microsoft Cororation Changing frequency of a virtual programmable interrupt timer in virtual machines to control virtual time

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1508652A (zh) * 2002-12-18 2004-06-30 国际商业机器公司 关注功率的自适应轮询方法和系统
CN101027640A (zh) * 2004-09-30 2007-08-29 英特尔公司 为与虚拟机监控程序相关联的定时器提供支持
US8191062B2 (en) * 2006-03-31 2012-05-29 Intel Corporation System for processor frequency governors to govern a processor frequency by deriving CPU utilization information based on the state of virtual machine monitor
CN101739113A (zh) * 2008-11-20 2010-06-16 国际商业机器公司 在虚拟化集群系统中进行能效管理的方法及装置
CN101719081A (zh) * 2009-12-01 2010-06-02 北京大学 一种虚拟机调度方法
CN102103516A (zh) * 2009-12-22 2011-06-22 英特尔公司 基于虚拟cpu的频率和电压调节

Also Published As

Publication number Publication date
CN103488522A (zh) 2014-01-01

Similar Documents

Publication Publication Date Title
CN104951694B (zh) 一种管理虚拟机的隔离方法及装置
JP2005235019A5 (zh)
EP2940595A1 (en) Method and relevant device for determining mode of managing shared virtual memory page
CN104123171B (zh) 基于numa架构的虚拟机迁移方法及系统
CN103399781B (zh) 云服务器及其虚拟机管理方法
CN101120317A (zh) 将存储器从一个虚拟机动态再分配到另一个的方法、装置和系统
JP2009110518A (ja) 仮想マシンデバイスの動的割り当て
CN104424122B (zh) 一种电子设备及内存划分方法
CN105335309B (zh) 一种数据传输方法及计算机
EP2449464A2 (en) Resource allocation in virtualized environments
CN104850394B (zh) 分布式应用程序的管理方法和分布式系统
CN108491311A (zh) 一种实时操作系统的看门狗监测方法及终端
CN104461735A (zh) 一种虚拟化场景下分配cpu资源的方法和装置
CN104111867B (zh) 一种虚拟机迁移装置及方法
CN111581043A (zh) 服务器功耗的监控方法、装置和服务器
CN108037898A (zh) 一种基于Ceph的dpdk通讯的方法、系统及装置
CN104391736B (zh) 虚拟机的休眠模式设置方法和装置
CN103838720B (zh) 页面文件载入执行方法和装置
CN104133671B (zh) 一种数字处理设备的硬件接口屏蔽装置及方法
JP2003132005A5 (zh)
CN104809026B (zh) 一种使用远程节点借用cpu计算资源的方法
CN103488522B (zh) 一种管理虚拟机的设备的方法及设备
CN108459906A (zh) 一种vcpu线程的调度方法及装置
CN116560803B (zh) 基于sr-iov的资源管理方法及相关装置
WO2020253490A1 (zh) 一种资源分配方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171017

Termination date: 20180922

CF01 Termination of patent right due to non-payment of annual fee