发明名称 |
一种实时性增强的虚拟CPU调度方法 |
摘要 |
本发明公开了一种实时性增强的虚拟CPU调度方法,包括:虚拟机管理控制工具接受用户操作虚拟机及调度参数的命令;管理控制工具判断用户命令是否关系实时虚拟机,若涉及实时虚拟机,计算满足实时虚拟机可调度性的条件,根据计算结果对物理CPU资源进行动态划分;采用实时性增强的虚拟CPU调度方法进行调度,对运行实时虚拟机的CPU资源池使用全局最早截止时间优先调度算法,对运行非实时虚拟机的CPU资源池使用额度调度算法;对全局最早截止时间优先调度算法进行虚拟CPU缓存命中的优化。本发明在保证实时虚拟机实时性的同时,通过对CPU资源的划分带来了良好的隔离性,减少了对非实时虚拟机的性能影响。 |
申请公布号 |
CN103678003A |
申请公布日期 |
2014.03.26 |
申请号 |
CN201310697467.1 |
申请日期 |
2013.12.18 |
申请人 |
华中科技大学 |
发明人 |
吴松;金海;付丹青;周理科 |
分类号 |
G06F9/50(2006.01)I;G06F9/455(2006.01)I |
主分类号 |
G06F9/50(2006.01)I |
代理机构 |
华中科技大学专利中心 42201 |
代理人 |
朱仁玲 |
主权项 |
一种实时性增强的虚拟CPU调度方法,包括以下步骤:(1)Xen虚拟化平台启动并初始化,通过虚拟机管理控制工具原有用户接口创建一个或多个虚拟机,并且,虚拟机管理控制工具等待接收用户发送的虚拟机控制命令;(2)虚拟机管理控制工具接收到用户命令后,判断命令类型,若是以下三种命令之一:1)设置虚拟机类型;2)修改虚拟机调度参数;3)销毁虚拟机,则触发动态核划分机制,所述动态核划分机制通过分析用户的命令,获取指定的虚拟机的ID以及相应要修改的参数,计算满足Xen上实时虚拟机可调度性所需的物理CPU数量,并将物理CPU资源池划分为实时物理CPU池与非实时物理CPU池;(3)利用动态核划分机制对底层物理CPU资源进行划分后,得到实时CPU池和非实时CPU池,针对非实时CPU池中的非实时虚拟机,按照Xen默认的调度算法Credit调度进行处理,针对实时CPU池中的实时虚拟机,采用全局SEDF调度算法,在调度算法数据结构上,将每个PCPU对应一个运行队列改为只采用一个全局的运行队列服务所有的PCPU,并在队列数据结构中加入队列锁以保证PCPU互斥地操作队列;在调度阶段,每个CPU从队列中获取合适的虚拟CPU运行,并在选取下一个调度的虚拟CPU结束时判断该虚拟CPU之前运行的PCPU是否是当前调度PCPU,若是,则不进行任何处理,结束调度;否则,设置该虚拟CPU的迁移标志,并将事件通道的对应关系转移到当前调度PCPU。 |
地址 |
430074 湖北省武汉市洪山区珞喻路1037号 |