虚拟机中虚拟双核同步调度的尝试

 
虚拟机中虚拟双核同步调度的尝试
康华 :主要从事 Linux 操作系统内核、虚拟机、Linux 技术标准、计算机安全、软件测试等领域的研究与开发工作,曾就职 MII-HP 软件实验室 瞬联软件公司/MOTOROLA,现就职于Lenovo研究院 。其所合写的Linux专栏见http://www.csdn.net/subject/linux/。 如果需要可以联系通过 [email protected] (MSN)联系我.    
摘要 在真实环境下多核物理存在,每个核都能够做到随时在线(活跃)。而在虚拟环境下VMM需要为每个运行的Guest OS都模拟出各自使用的虚拟核(一个或多个),这些虚拟核在真实核上按照时间片方式运行(类似于Native OS环境下的进程)。如果Guest OS需要支持多核,那么VMM就需要为Guest OS模拟出多个虚拟核。本文就讲述Guest Os看到的虚拟多核是否需要同步运行,以及尝试如何同步运行多虚拟核。
背景介绍
我们的研究对象是Xen架构下的虚拟多核同步,虚拟核(VCPU)可以看作是真实CPU的调度对象,这点和操作系统内的进程调度很相似。虚拟核对象(和进程描述符一样是一个管理结构)其中包含了:1 CPU信息,诸如寄存器,GDT地址等;2 调度信息,权重等;3运行信息, 所处的物理CPU,所属domain信息等 4 运行状态信息。
目前Xen的调度方法是以虚拟核为单位独立调度,而并非按照domain(即,Guest OS)为单位进行调度。也就是说任何一个VCPU作为任务都可在任何一个真实CPU上运行(Guest OS 只要看到有活跃的VCPU就可以运行)。这样以VCPU为单位调度的好处是整个虚拟系统的吞吐量大,因为每个VCPU可以根据真实CPU的忙闲选择其上运行,可以让系统利
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值