摘要
文中提出了动态半虚拟化方法(dynamic paravirtualization),它借用半虚拟化的方式,降低带硬件辅助支持的全虚拟化系统中的虚拟机陷出数量.在有硬件辅助的全虚拟化虚拟机管理器(VMM)下,由VMM在二进制代码层对客户操作系统(GuestOS)中频繁引起虚拟机陷出的那些热点指令进行替换、消除或合并虚拟机陷出.这种替换对GuestOS而言是透明的,GuestOS并不会感知到这些变动.文中重点关注降低内存虚拟化开销的动态内存半虚拟化方法(DMP).在VMM中实现了一套新的内存虚拟化管理机制,避免使用影子页表进行虚拟内存地址转换,并采用代码植入方法消除内存管理引起的虚拟机陷出.在采用IntelVT的KVM-54版本中实现了动态内存半虚拟化原型系统.实验表明,这种技术可以显著地减少页面中断导致的虚拟机陷出,从而降低其带来的系统开销.动态内存半虚拟化能够不修改GuestOS源代码也可达到半虚拟化的效果.
出处
《中国科学:信息科学》
CSCD
2010年第5期692-705,共14页
Scientia Sinica(Informationis)
基金
国家重点基础研究发展计划(批准号:2007CB310900)
国家自然科学基金(批准号:90718028
60873052)
国家高技术研究发展计划(批准号:2008AA01Z112)
教育部–英特尔信息技术专项科研基金(批准号:MOE-INTEL-08-09)
美国国家自然科学基金(批准号:CCF0643664)资助项目