虚拟化技术的目的


虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理硬件,简单来说就是将底层资源进行分区,并向上层提供特定的和多样化的执行环境。

虚拟化的原理


在OS中加入一个虚拟化层(VMM),虚拟化层可以对下层(HostOS)硬件资源(物理CPU、内存、磁盘、网卡、显卡等)进行封装、隔离,抽象为另一种形式的逻辑资源,再提供给上层(GuestOS)使用。所以你可以理解VMM其实就是联系HostOS和GuestOS的一个中间件,当然虚拟化可以将一份资源抽象为多份,也可以将多份资源抽象为一份。

通过虚拟化技术实现的虚拟机一般被称之为GuestOS(客户),而作为GuestOS载体的物理主机称之为HostOS(宿主)。

虚拟机 Virtual Machine


满足下面几个条件的OS就是虚拟机:

  • 由VMM提供的高效(>80%)、独立的计算机系统

  • 拥有自己的虚拟硬件(CPU、内存、网络设备、存储设备)

  • 对于上层软件,虚拟机就是真实的机器

  • Virtual Machine Monitor

虚拟化技术实现方式有哪些?


现在市场上最常见的虚拟化软件有VMWare workstation(VMWare)、VirtualBox(Oracle)、Hyper-V(Microsoft)、KVM(Redhat)、Xen等,这些软件统称之为VMM(Virtual Machine Monitor),使用不同的虚拟化实现。而这些虚拟化实现的方式可以分为:

  • 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在guest操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(VMM 虚拟机管理程序)来捕获处理。既VMM会为GuestOS抽象模拟出它所需要的包括CPU、磁盘、内存、网卡、显卡等抽象硬件资源,所以全虚拟化的GuestOS并不会知道自己其实是一台虚拟机。全虚拟化的运行速度要快于硬件模拟,但是性能方面不如裸机,因为Hypervisor需要占用一些资源。典型的全虚拟化软件有:VMWare、Hyper-V、KVM-x86(复杂指令集)。

全虚拟化的两种实现方式:  1、基于二进制翻译的全虚拟化;

2、基于扫描和修补的全虚拟化。

  • 半虚拟化:是另一种类似于全虚拟化的技术,它使用Hypervisor分享存取底层的硬件,但是它的guest操作系统集成了虚拟化方面的代码。该方法无需重新编译或引起陷阱,因为操作系统自身能够与虚拟进程进行很好的协作。典型的半虚拟化软件有:Xen、KVM-PowerPC(简易指令集)半虚拟化除了修改内核外还有另外一种实现方法–在每一个GuestOS中安装半虚拟化软件:VMTools、RHEVTools。

 半虚拟化需要guest操作系统做一些修改,使guest操作系统意识到自己是处于虚拟化环境的,但是半虚拟化提供了与原操作系统相近的性能。

虚拟化技术分哪些类?


  • 主机虚拟化:

完全虚拟化:vmare workstation,kvm,xen(hvm)

半虚拟化:xen,uml

模拟:qemu

  • 用户空间虚拟化(容器):

lxc,openvz,Solaris Containers,FreeBSD jails

  • 库虚拟化:

WINE Cywin

  • 应用程序虚拟化:

jvm,pvm,……

虚拟化技术—基础(1)相关推荐

  1. 50 xen虚拟化技术基础、xen虚拟化技术进阶

    01 xen虚拟化技术基础 配置环境: node1 192.168.1.61 CentOS6.6 [root@node1 ~]# uname -r 2.6.32-504.el6.x86_64 [roo ...

  2. 天翼云从业认证(1.6)虚拟化技术基础、服务器虚拟化、存储虚拟化和网络虚拟化技术;

    虚拟化技术基础.服务器虚拟化 常见虚拟化技术:vmware.xen.kvm. 虚拟化技术特征:分区.隔离.封装.相对于硬件独立. 全虚拟化:抽象VM具有完全的物理机特征,操作系统在其上运行,不需要任何 ...

  3. 虚拟化技术基础知识全面了解

    一 虚拟化简介    虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机(对计算机物理资源的抽象,实现资源的模拟.隔离和共享).在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的 ...

  4. 虚拟化一、虚拟化技术基础原理

    一.虚拟化       虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而 ...

  5. Linux操作系统及平台虚拟化技术漫谈

    虚拟化Linux可以通过很多技术来实现,包括从平台到操作系统虚拟化.实际上,Linux可以说是唯一一个具有广泛虚拟化解决方案的操作系统.在本文中,我们将讨论实现Linux虚拟化的多种方式,以及Linu ...

  6. 虚拟化技术知识点初步梳理

    第一部分:虚拟化技术基础 1.计算机五大部件介绍 2.虚拟化基本概念介绍与发展历史 3.VMware workstation虚拟架构的简单介绍 4.CPU虚拟化技术 模拟与全虚拟化技术. BT二进制装 ...

  7. XEN和KVM云计算虚拟化技术

    一.XEN和KVM云计算虚拟化技术 01_虚拟化技术基础原理详解 02_Xen虚拟化及DomU的实现 03_Xen基于iscsi共享实现实时迁移 04_kvm虚拟化 下载链接:链接:http://pa ...

  8. 【重识云原生】第二章计算第一节——计算虚拟化技术总述

    云平台计算领域知识地图: ​ 楔子:计算虚拟化技术算是云计算技术的擎天之柱,其前两代技术的演进一直引领着云计算的发展,即便到了云原生时代,其作用依然举足轻重. 一.计算虚拟化技术总述 1.1 虚拟化技 ...

  9. linux虚拟机 虚拟化软件有哪些,六大Linux虚拟化技术全面讲解

    关于Linux虚拟化的优势我们大家已经有所了解.目前使用最多的虚拟化操作系统还是Windows系列,但是Linux的成长速度是惊人的,大有替代Windows的趋势.关于Linux虚拟化技术大致上可以分 ...

最新文章

  1. $.post把表单对象传递过去_FormData对象
  2. h5文字垂直居中_CSS居中的常用方式以及优缺点
  3. mysql导入社工库文件_社工库-数据表结构设计和数据导入
  4. springboot 监听所有异常_SpringBoot 全局异常配置及返回自定义页面
  5. Python基础_列表与元组
  6. php制作水印图片,PHP实例制作水印图片
  7. 小情调的伤感空间日志分享:亲爱的、你还不懂么?
  8. c语言windows.h头文件详解
  9. cesium城市建筑物光效(cesium篇.23)
  10. 近30所高校,获教育部点名表扬!
  11. 如何在Windows 10上的虚拟桌面之间快速切换
  12. 《有限与无限的游戏》
  13. windows映像劫持技术
  14. 用echarts 中的地图来显示区域分布情况(vue),包括地理数据来源生成的制作注意事项
  15. 数据透视表中巧用平均值计算及时妥投率
  16. Centos安装 Node.js v12.16.1 和 v16.14
  17. http请求头有哪些字段
  18. 用java代码改变图片的尺寸
  19. 三极管和MOS管工作原理详解
  20. 宝宝无人看管? 谷歌婴儿监控AI来当保姆!

热门文章

  1. 计算机等级考试照片用ps怎么调,Photoshop教程:用PS消除照片中的杂色条纹
  2. L1-7 天梯赛的善良 (20 分)
  3. Box2d源码学习十三b2Collision之碰撞(下) 具体形状间的碰撞的实现
  4. Erupt Framework:开源神器,助你无需前端代码搞定企业级后台管理系统
  5. javascript中in用法介绍
  6. UVM response_handler和get_response机制
  7. 算法中的大O是什么意思
  8. 百度贴吧头像上传无尺寸限制
  9. 数学建模(2)--TOPSIS法
  10. 阿里云服务器远程桌面连接