KVM--基于内核的虚拟化技术

豆豆网   技术应用频道   2008年03月28日  【字号: 收藏本文

内容摘要:介绍KVM,它的本质以及如何配置和安装。虚拟化最近几年取得了长足的进步,首先由于有大量的开源虚拟机管理程序在不断发展,这个改进几乎排除了操作系统与大功率服务器快速增长的利用之间的障碍,公司立即受益。

  这种方法有许多优势,通过添加虚拟化功能到一个标准的Linux内核,虚拟环境能从所有正在Linux内核上运行的工作中受益,在这种模式下,每个虚拟机都是一个常规的Linux进程,通过Linux调度程序进行调度,通常,一个标准的Linux进程都有两个执行模式:内核模式和用户模式。对于应用程序而言用户模式是默认模式,当它需要一些来自内核的服务时就进入内核模式,如往磁盘上写入时。KVM添加了第三个模式:客户模式。

  客户模式进程是运行在虚拟机内的,它非常象正常模式(无虚拟实例),有它自己的内核和用户空间变量、在客户模式下可以使用正常的kill和ps命令,因为无虚拟实例,KVM虚拟机表现为一个正常的进程,能象其他进程一样被杀掉,KVM利用硬件虚拟技术虚拟处理器的形态,虚拟机的内存管理由内核直接处理,目前的版本I/O在用户空间处理,主要通过QEMU完成。

  一个典型的KVM安装包括以下部件:

  一个管理虚拟硬件的设备驱动,这个驱动通过一个字符设备/dev/kvm陈列它的功能

  一个模拟pc硬件的用户空间部件,目前,这在用户空间处理,它是一个稍微改动过的QEMU进程。

  I/O模型直接衍生于QEMU,支持写时复制磁盘映像和其他QEMU特征。

  你如何查明你的系统是否能运行KVM?首先,你需要一个支持虚拟化的处理器,这里有一个兼容KVM的处理器列表(http://wiki.xensource.com/xenwiki/HVM_Compatible_Processors),看看你的处理器是否在其中。另外,你还可以检查/proc/cpuinfo,如果在cpu flags字段看到了vmx或smx,那么你的处理器就支持KVM。

  如何比较KVM和现存的管理程序

  相对它的竞争者而言,KVM还是一个比较新的项目,与KVM的主要开发者Avi Kivity会面时,他是这样与其他解决方案做对比的:

来源:51CTO    作者:黄永兵    责编:豆豆技术应用

正在加载评论...