[发明专利]一种基于当前VCPU调度状态的动态中断均衡映射方法有效
| 申请号: | 201410018108.3 | 申请日: | 2014-01-15 |
| 公开(公告)号: | CN103744716A | 公开(公告)日: | 2014-04-23 |
| 发明(设计)人: | 管海兵;李健;马汝辉;朱敏君;周凡夫 | 申请(专利权)人: | 上海交通大学 |
| 主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50 |
| 代理公司: | 上海旭诚知识产权代理有限公司 31220 | 代理人: | 郑立 |
| 地址: | 200240 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 当前 vcpu 调度 状态 动态 中断 均衡 映射 方法 | ||
1.一种基于当前VCPU调度状态的动态中断均衡映射方法,其特征在于,所述方法包括以下步骤:
(1)每当虚拟硬件产生一个虚拟中断,虚拟I/O APIC接收所述虚拟中断,并将所述虚拟中断传送到目标VCPU的虚拟本地APIC;
(2)中断均衡分配器在所述虚拟中断被传送到所述目标VCPU的虚拟本地APIC之前拦截所述虚拟中断;
(3)所述中断均衡分配器分析调度器提供的调度状态信息,获得处于活跃状态的VCPU列表;
(4)所述中断均衡分配器根据所述处于活跃状态的VCPU列表,重新选定目标VCPU;
(5)所述中断均衡分配器将所述虚拟中断传送到步骤(3)中重新选定的目标VCPU的虚拟本地APIC;
(6)所述目标VCPU的虚拟本地APIC向所述目标VCPU进行所述虚拟中断注入。
2.如权利要求1所述的方法,其特征在于,步骤(3)中选定目标VCPU的方法包括步骤:
(31)获得所述处于活跃状态的VCPU列表中VCPU的个数;
(32)如果所述个数为0,根据所述调度状态信息,选定所述目标VCPU;如果所述个数为1,选定所述处于活跃状态的VCPU列表中VCPU为所述目标VCPU;如果所述个数大于1,根据所述处于活跃状态的VCPU列表中VCPU的中断负载,选定所述目标VCPU。
3.如权利要求2所述的方法,其特征在于,步骤(32)中根据调度状态信息,选定所述目标VCPU的方法包括步骤:
(321)读取所述调度状态信息;
(332)选定所有VCPU中预测最快进入活跃状态的VCPU为所述目标VCPU。
4.如权利要求3所述的方法,其特征在于,步骤(332)中预测最快进入活跃状态的VCPU的依据是VCPU处于空闲状态。
5.如权利要求3所述的方法,其特征在于,如果所述VCPU均未处于空闲状态,步骤(332)中预测最快进入活跃状态的VCPU的依据是VCPU在等待队列中位置与剩余信用值。
6.如权利要求2所述的方法,其特征在于,步骤(32)中根据所述处于活跃状态的VCPU列表中VCPU的中断负载,选定目标VCPU的方法包括步骤:
(323)读取当前虚拟机结构体维护的VCPU中断负载表;
(334)比较所述处于活跃状态的VCPU列表中VCPU的中断负载,选定中断负载最小的VCPU为目标VCPU。
7.如权利要求1所述的方法,其特征在于,步骤(1)中所述虚拟硬件包括为虚拟设备和/或经VMM中断处理的物理设备。
8.如权利要求1所述的方法,其特征在于,步骤(5)中通过VT-x的事件注入机制完成所述虚拟中断注入。
9.如权利要求1所述的方法,其特征在于,在虚拟机SHARED_INFO结构的基础上增加成员变量sched_info,用于记录VCPU的调度状态。
10.如权利要求9所述的方法,其特征在于,每当调度器发生一次VCPU切换,被换入的VCPU和被换出的VCPU完成上下文交换后,被换入的VCPU成为活跃VCPU,所述活跃VCPU所属的虚拟机SHARED_INFO结构的sched_info成员变量标记为活跃;被换出的VCPU的所属的虚拟机SHARED_INFO结构的sched_info成员变量标记为等待。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410018108.3/1.html,转载请声明来源钻瓜专利网。





