您的位置:主页 > 案例资讯 > 行业新闻 >
kvm原理简介
时间:2019-02-17 16:16 浏览次数:

  kvm开发人员没有从底层编写新的管理程序,而是选择基于Linux的内核,通过加载新??榻獿inux内核转换为管理程序。

  目前,kvm的设计是通过可加载的内核??槔粗С止惴旱目突Ф瞬僮飨低?,包括Windows。

  在KVM体系结构中,虚拟机作为常规的Linux进程实现,这些进程由标准的Linux调度程序调度。实际上,每个虚拟CPU都是作为一个常规的Linux进程实现的。这使得kvm可以享受Linux内核的所有功能。

  KVM本身不执行任何模拟。用户空间程序需要通过/dev/kvm接口设置客户端虚拟服务器的地址空间,为其提供模拟I/O,并将其视频显示映射回主机的显示屏。此应用程序是著名的QEMU。

  REHL6.x系统中的kvm客户机可以支持160个虚拟CPU和高达2TB的内存。kvm主机支持4096个CPU内核和高达64TB的内存。

  操作系统内核设计分为微核和单核两种。

  单个内核意味着整个内核被实现为单个大型进程,同时在单独的地址空间中运行。所有内核服务都在如此大的内核空间中运行,内核之间的通信可以简单地作为函数调用来实现。

  对于微内核,内核的功能分为几个独立的进程,每个进程称为服务器。许多服务器在自己的地址空间中运行,只有少数核心服务器以特权模式运行,服务器之间的通信采用进程间通信机制。独立的服务器进程提高了系统的健壮性,但是进程间通信的开销远远超过函数调用,因为它涉及内核空间和用户空间之间的上下文切换。

  Linux采用务实的设计:Linux内核设计为单核,以满足性能要求,同时Linux内核还具有??榛杓坪湍诤四?槎釉氐哪芰?。除了进程切换和内存管理等核心功能外,大多数内核功能都是作为单独的内核??樯杓坪褪迪值?。编译完这些??楹?,它们作为单独的二进制文件存在。在运行过程中,内核根据需要动态加载并链接到内核空间。未使用的??橐部梢栽诓僮髌诩涠对?。该设计不仅保证了内核的性能,而且提高了传统单核设计的灵活性。

  KVM作为内核??榇嬖?,它为Linux内核添加了虚拟化。

  从虚拟机的基本架构来看,它可以分为两种类型:类型1和类型2。

  类型1:当系统通电时,它首先加载并运行虚拟机监视程序,而传统的操作系统运行在它创建的虚拟机中。

  类型1管理程序可以看作是为虚拟机优化的操作系统内核。

  著名的开放源码虚拟化软件Xen、商用软件vmware esx/esxi和微软的hper-v都是类型1的代表。

  类型2:系统通电后,仍运行通用操作系统(也称主机操作系统)。作为一种特殊的应用,虚拟机监控程序可以作为操作系统功能的扩展。

  对于类型2的虚拟机,最大的优点是它们可以充分利用现有的操作系统,但是它们也会受到主机操作系统的限制。

  kvm、vmware工作站和virtualbox属于类型2虚拟机。

上海菲仁信息科技有限公司Copyright ?2019 - 2025 麦森特
水晶宫论坛网址