发明名称 一种多核环境下的Xen虚拟机调度控制方法
摘要 本发明提出了一种多核架构下的Xen虚拟机调度控制方法,包括如下步骤:(一)调度初始化;(二)调度信息统计的初始化,即对管理域(domain0)中的虚拟cpu进行监控,并实时地向虚拟机监控器(VMM)发送监控结果;(三)创建虚拟机并分配虚拟cpu,同时将虚拟cpu依照优先级级别和credit值存放到相应cpu分组的红黑树上,并且启动初始化阶段设置的所有定时器;(四)虚拟机调度。本发明可以动态调整分组中逻辑cpu执行的时间片,有效地减少了调度方法在执行过程中所消耗的时间,并对io任务有较好的响应时间,能够适应对时间要求较高的任务类型中。
申请公布号 CN102253857A 申请公布日期 2011.11.23
申请号 CN201110172852.5 申请日期 2011.06.24
申请人 华中科技大学 发明人 曾令仿;刘景宁;冯丹;张灿群;李家祥
分类号 G06F9/46(2006.01)I;G06F9/50(2006.01)I;G06F9/455(2006.01)I 主分类号 G06F9/46(2006.01)I
代理机构 华中科技大学专利中心 42201 代理人 李佑宏
主权项 一种多核架构下的Xen虚拟机调度控制方法,包括如下步骤:(一)调度初始化(1.1)首先,枚举所有逻辑cpu,将属于同一物理cpu并且核号相同的逻辑cpu分为一组,每个分组中的逻辑cpu共享同一个调度时间片长度;然后分配并初始化每个分组内各个cpu共享的用于组织和维护虚拟cpu的红黑树;(1.2)数据结构和调度参数的初始化首先,初始化cpu分组中所有逻辑cpu的时间片定时器,该时间片定时器用于控制相应逻辑cpu进行调度的时间间隔;然后,初始化调度方法的调度参数,即设置虚拟机的默认权重、基准负载以及基准时间片的初始值;(1.3)初始化每个cpu分组所拥有的定时器,该定时器用于根据负载情况动态调整相应cpu分组时间片的长度;(二)调度信息统计的初始化,即对管理域(domain0)中的虚拟cpu进行监控,并实时地向虚拟机监控器(VMM)发送监控结果,具体过程为:(2.1)在向客户域(domainU)发送数据过程中,后端驱动判断正在执行的虚拟cpu编号,并且向虚拟机监控器传输该cpu编号;(2.2)虚拟机监控器将收集的编号存储在cpu位图中;(三)创建虚拟机并分配虚拟cpu,同时将虚拟cpu依照优先级级别和credit值存放到相应cpu分组的红黑树上,并且启动初始化阶段设置的所有定时器;(四)虚拟机调度首先查询cpu位图,判断cpu位图中当前逻辑cpu正在执行的虚拟cpu的编号所对应的位是否已经置位;如果已经置位,则取消此次调度,如果没有置位,就从该逻辑cpu所在分组的红黑树中取最高优先级的虚拟cpu进行切换,实施调度。
地址 430074 湖北省武汉市洪山区珞喻路1037号