|
浅析处理器虚拟优化技术及KVM实现虚拟化把事物从一种形式改变为另一种形式,计算机的虚拟化使单个计算机看起来像多个计算机或完全不同的计算机,虚拟化技术也可以使多台计算机看起来像一台计算机,这叫做服务器聚合fserver aggregation)或网格计算(grid computing)。KVM是以色列开源组织Qumranet开发的一个开源虚拟机监控器,从Linux一2.6.20开始被包含在Linux内核中 因此KVM可以自然地使用Linux内核提供的内存管理、多处理器支持等功能,易于实现,而且还可以随着Linux内核的发展而发展。 初始化工作完成之后,Oemu线程以ioctl的方式向KVM 内核模块发出运行VCPU的指示,后者执行VM entry操作,将处理器由kernel模式切换到Guest模式,中止宿主机软件,转而运行客户软件。注意。宿主机软件被中止时,正处于Qemu线程上下文,且正在执行ioctl系统调用的kernel模式处理程序。客户软件在运行过程中,如发生异常或外部中断等事件,或执行I/0操作,可能导致VM exit,将处理器状态由Guest模式切换回Kernel模式。KVM 内核模块检查发生VM exit的原因,如果VM exit由于I/O操作导致,则执行系统调用返回操作,将I/O操作交给处于User模式的Qemu线程来处理,Qemu线程在处理完I/O操作后再次执行ioctl,指示KVM切换处理器到Guest模式,恢复客户软件的运行;如果VM exit由于其它原因导致,则由KVM内核模块负责处理,并在处理后切换处理器到Guest模式,恢复客户机的运行。
责编:李红燕 微信扫一扫实时了解行业动态 微信扫一扫分享本文给好友 著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。 |
最新专题 推荐圈子 |
|