虚拟化基础-华为云计算虚拟化
Posted jks212454
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟化基础-华为云计算虚拟化相关的知识,希望对你有一定的参考价值。
虚拟化基础-华为云计算虚拟化
一、什么是虚拟化
1.虚拟化的概念
在计算机科学中,虚拟化技术(Virtualization)是一种资源管理(优化)技术,
将计算机的各种物理资源(e.g. CPU、内存以及磁盘空间、网络适配器等 I/O 设备)予以抽象、转换,
然后呈现出来的一个可供分割并任意组合为一个或多个(虚拟)计算机的配置环境。
2.虚拟化的理解
①vmware官方描述
虚拟化:创建软件或虚拟表示形式的应用、服务器、存储和网络,以减少 IT 开销,同时提高效率和敏捷性。
②通俗理解
我们在一台电脑上可以安装多个不同的系统,并且可以同时运行,且彼此之间相互独立,不受影响。
3.虚拟化的特点
1. 文件
2. 隔离
3. 相对于硬件独立
4. 分区
二、虚拟化的重要发展历史
2003年——由剑桥大学开发项目产生
2007年——发布了RHEL5.0
2008年—— RHEL5.0中,第一次加入了虚拟化,使用的XEN虚拟化
(Citrix 收购XEN)
2008年 ——红帽收购KVM
华为FusionCompute6.3之前使用的是基于XEN的虚拟化,FusionCompute 6.3.0版本及以后,切换为KVM虚拟化。
三、计算虚拟化发展图示
四、三种虚拟化类型比较
1.三种虚拟化类型比较
全虚拟化 | 硬件辅助虚拟化 | 半虚拟化 | |
---|---|---|---|
实现技术 | 利用二进制翻译技术,来转化虚拟机的指令 | 遇到特权指令转到root模式执行 | 内核中加入system call 进行指令集拦截和翻译 |
实现方式 | 通过虚拟化软件来进行转换 | 通过VT-X来标记虚拟机,在Bios中CPU需要开启虚拟化功能 | domain 0 |
操作系统是否要修改 | 无需修改客户操作系统 | 无需修改客户操作系统 | 客户操作系统需要修改来支持hypercall,因此它不能运行在物理硬件本身或其他的hypervisor上,不支持Windows |
兼容性 | 兼容性好 | 兼容性好 | 兼容性差 |
性能 | 差 | 全虚拟化下,CPU需要在两种模式之间切换,带来性能开销;但是,其性能在逐渐逼近半虚拟化。 | 好。半虚拟化下CPU性能开销几乎为0,虚机的性能接近于物理机。 |
代表软件及厂商 | VMware Workstation/QEMU/Virtual | Mware ESXi/Microsoft Hyper-V/Xen 3.0/KVM | xen |
2.计算虚拟化相关概念
VT-X:VT-X用于标记VM是一台虚拟机,则VM大部分指令可以直接运行在CPU之上,只有19条敏感指令集需要经过VMM拦截并转换,丢给物理内核来处理(ring0)
KVM:Kernel-based Virtual Machine 基于内核的虚拟机
xen:XEN虚拟化必须运行在XEN内核中
五、内存虚拟化
1.内存虚拟化作用
内存虚拟化解决虚拟机里面的进程如何访问物理机上的内存这一问题。
2.内存虚拟化实现方式
1.内存虚拟化涉及到对系统物理内存的共享和动态地为虚拟机分配内存。内存虚拟化和当代操作系统对虚拟内存的支持类似。
2.应用程序看到的连续地址空间和底下真正的物理内存不一定是一一对应的。操作系统保存了虚拟页号到物理页号的映射。
3.当前所有的x86 CPU包含了一个内存管理单元(MMU)和一个旁路缓冲(TBL)以优化虚拟内存的性能。
3.内存虚拟化图示
六、虚拟化补充学习链接
以上是关于虚拟化基础-华为云计算虚拟化的主要内容,如果未能解决你的问题,请参考以下文章