虚拟化四、KVM虚拟化技术
2016-07-24 23:02
176 查看
一、KVM概述
1、KVM
Kernel-based Virtual Machine 基于内核的虚拟机
以色列Qumranet公司研发,是内核的一个模块
2006年研发,2008被RedHat收购了
依赖于KVM技术:Intel VT-X,AMD AMD-V
2、KVM模块载入后的系统运行模式
内核模式:GuestOS执行I/O类操作,或其它的特殊指令的操作
用户模式:代表GuestOS代为请求I/O类操作,
来宾(guest)模式:GuestOS的非I/O类操作,事实上,它被称作虚拟机的用户模式
3、KVM的组件
两类组件:
/dev/kvm:工作于hypervisor,在用户空间可通过ioctl()系统调用来完成VM创建,启动等管理功能,它是一个字符设备,
功能:创建VM,为VM分配内存,读写VCPU的寄存器,向CPU注入中断,运行VCPU等
qemu进程:工作于用户空间,主要用于实现模拟PC机的I/O设备
4、KVM特性
1)内存管理
将分配给VM的内存交换至SWAP
支持使用Huge Page(大内存页);
支持使用Intel EPT或AMD RVI技术完成内存地址映射:GVA-->GPA-->HPA简化为GVA-->HPA
1、KVM
Kernel-based Virtual Machine 基于内核的虚拟机
以色列Qumranet公司研发,是内核的一个模块
2006年研发,2008被RedHat收购了
依赖于KVM技术:Intel VT-X,AMD AMD-V
2、KVM模块载入后的系统运行模式
内核模式:GuestOS执行I/O类操作,或其它的特殊指令的操作
用户模式:代表GuestOS代为请求I/O类操作,
来宾(guest)模式:GuestOS的非I/O类操作,事实上,它被称作虚拟机的用户模式
3、KVM的组件
两类组件:
/dev/kvm:工作于hypervisor,在用户空间可通过ioctl()系统调用来完成VM创建,启动等管理功能,它是一个字符设备,
功能:创建VM,为VM分配内存,读写VCPU的寄存器,向CPU注入中断,运行VCPU等
qemu进程:工作于用户空间,主要用于实现模拟PC机的I/O设备
4、KVM特性
1)内存管理
将分配给VM的内存交换至SWAP
支持使用Huge Page(大内存页);
支持使用Intel EPT或AMD RVI技术完成内存地址映射:GVA-->GPA-->HPA简化为GVA-->HPA
相关文章推荐
- java中“==”和equals方法的区别,再加上特殊的String引用类型
- php的写时复制
- 1初识IO
- 04-java小案例-调用函数-内存
- hdu4826Labyrinth-dp动态规划
- python核心编程十五章练习
- c printf格式总结
- 来来来, 出个面试题考一下你的实际开发经验
- POJ 2533 Longest Ordered Subsequence
- spring mvc无法访问controller的解决方法
- Python学习进程(13)文件与IO
- 变量的定义 scanf 的使用 简单运算符
- EasyDarwin开源流媒体云平台之语音对讲功能设计与实现
- hdu 3699 fzu 2009 A hard Aoshu Problem 枚举 模拟
- (4.1.27.11)Android动态加载so文件
- 【华为机试】题目+解答+自己不足+提升
- mysql如何选择合适的数据类型存储不同的数据
- NSURLConnection / NSURLSession/ SDWebImage
- EasyDarwin开源流媒体云平台之语音对讲功能设计与实现
- 自适应网页设计