KVM功能概览
来源:互联网 发布:java里字段 编辑:程序博客网 时间:2024/05/29 09:32
在KVM架构中,虚拟机实现为常规的Linux进程,由标准Linux调用程序进行调度。事实上,每个虚拟CPU显示为一个常规的Linux进程。
需要注意的是,KVM本身不执行任何模拟,需要用户空间程序通过/dev/kvm接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的I/O,并将它的视频显示映射回宿主的显示屏。目前这个应用程序就是大名鼎鼎的QEMU。
KVM的功能特性:
(1)内存管理
KVM从Linux继承了强大的内存管理功能。一个虚拟机的内存与任何其他Linux进程的内存一样进行存储,可以以大页面的形式进行交换以实现更高的性能,也可以以磁盘文件的形式进行共享。NUMA支持(非一致性内存访问,针对多处理器的内存设计)允许虚拟机有效地访问大量内存。
KVM支持最新的基于硬件的内存虚拟化功能,支持Intel的扩展页表(EPT)和AMD的嵌套页表(NPT),以实现更低的CPU利用率和更高的吞吐量。
内存页面共享通过一项名为内核同页合并(Kernel Same-page Merging,KSM)的内核功能来支持。KSM扫描每个虚拟机的内存,如果虚拟机拥有相同的内存页面,KSM将这些页面合并到一个在虚拟机之间共享的页面,仅存储一个副本。如果一个客户机尝试更改这个共享页面,它将得到自己的专用副本。
(2)存储
KVM能够使用Linux支持的任何存储来存储虚拟机镜像,包括IDE、SCSI和SATA的本地磁盘,网络附加存储(NAS)(包括NFS和SAMBA/CIFS)或者支持iSCSI和光纤通道的SAN。多路径I/O可用于改进存储吞吐量和提供冗余。
KVM的原生磁盘格式为QCOW2,它支持快照,允许多级快照,压缩和加密。
(3)设备驱动程序
KVM支持混合虚拟化,其中准虚拟化的驱动程序安装在客户机操作系统中,允许虚拟机使用优化的I/O接口而不使用模拟的设备,从而为网络和块设备提供高性能的I/O。KVM准虚拟化的驱动程序使用IBM和Red Hat联合Linux社区开发的VirtIO标准,它是一个与虚拟机管理程序独立的、构建驱动程序的接口,允许为多个虚拟机管理程序使用一组相同的设备驱动程序,能够实现更出色的虚拟机交互性。
- KVM功能概览
- Jodd功能概览
- Camera 功能概览
- kvm快照功能
- kvm快照功能
- KVM学习:基础功能
- Smartbi电子表格版功能概览
- Asp.Net2.0开发功能概览
- Asp.Net2.0开发功能概览
- Asp.Net2.0开发功能概览
- Asp.Net2.0开发功能概览
- Android Java包各种功能概览
- Android Java包各种功能概览
- EMC PowerPath多路径软件功能概览
- KVM虚拟机创建功能详细讲解
- KVM虚拟机创建功能详细讲解
- KVM虚拟机创建功能详细讲解
- KVM的driver_mirror功能相关实验
- uva11481 Arrange the Numbers(错位排列)
- 堆和栈的区别
- 数据库连接池
- 完美解决iOS的WebView自适应内容高度问题
- Android中对标准内核的按键映射以及按键驱动
- KVM功能概览
- POJ3250---Bad Hair Day(单调栈)
- 《算法导论》6、计算一个数组中逆序数的个数(C++,使用合并排序改编)
- 决定产品成败 | 优秀运营的6大准则
- week11---5月13日
- 诸葛分享:互联网产品用户运营的基本逻辑
- Activiti-工作流
- HihoCoder第六周:01背包问题
- javaScript中对象的克隆