美文网首页
虚拟化笔记

虚拟化笔记

作者: codeMan_6616 | 来源:发表于2017-08-18 15:35 被阅读6次

    1.虚拟化:计算机资源的抽象和模拟

    平台虚拟化:针对计算机和操作系统的虚拟化
    资源虚拟化:针对特定系统资源的虚拟化,比如内存、存储(ceph)、网络(sdn)资源等
    应用程序虚拟化:应用程序和操作系统解耦,为应用程序提供一个虚拟的运行环境
    

    2.平台虚拟化实现方式

    全虚拟化
    半虚拟化
    硬件辅助虚拟化
    

    3.cpu虚拟化

    目标:让guestOS里面的指令能够正常执行,保证性能和效率,尽可能接近物理机
    方式:
        全虚拟化:
            虚拟机模拟了完整的底层硬件,操作系统和软件不做任何修改就可以运行在虚拟机中
            实现:特权级压缩和二进制翻译(BT)技术实现
                Ring0-4指令权限
            代表:VMware esxi
            cpu全虚拟化 = 特权压缩+二进制翻译
        半虚拟化
            对虚拟机的操作系统进行内核改造,虚拟机有自己的特殊指令,和VMM一起配合工作
            代表:Xen
            性能很高,更加接近物理机速度,
            缺点:无法虚拟windows系统(windows闭源,无法改造内核代码)
        硬件辅助虚拟化
            对cpu指令进行改造,让cpu从根本上支持虚拟化
            Intel:VT-x
            AMD:AMD-v
            cat /proc/cpuinfo | grep vmx    //intel
            cat /proc/cpuinfo | grep svm    //amd
            效率和性能很高,接近物理机
            代表:kvm
    

    4.内存虚拟化

    guestOS和物理机共用同一个物理内存,要做到相互不影响
    物理内存划分:块、页、页表
    方式:
        全虚拟化:
             影子页表技术
        半虚拟化
            页表写入法技术
        硬件辅助虚拟化
            引入EPT(Extended Page Table 扩展页表)技术
    

    5.IO虚拟化

    硬盘 or 网卡虚拟化
    让虚拟化能够访问到它需要的IO资源,与宿主机相互隔离
    方式:
        全虚拟化:
            模拟IO设备实现,虚拟出来的设备跟底层硬件无关
        半虚拟化
            采用前端驱动和后端驱动架构实现
        硬件辅助虚拟化
            让虚拟机直接使用物理设备
            intel:VT-d
            AMD:IOMMU
            PCI-SIG:IOV
            极大消除性能开销

    相关文章

      网友评论

          本文标题:虚拟化笔记

          本文链接:https://www.haomeiwen.com/subject/yhearxtx.html