zoukankan      html  css  js  c++  java
  • virtio/pass-through

    一、半虚拟化驱动(virtio)
    virtio 是一种 I/O 半虚拟化解决方案,是对半虚拟化 Hypervisor 中的一组通用 I/O 设备的抽象
    提供了一套上层应用与各 Hypervisor 虚拟化设备(KVM,Xen,VMware等)之间的通信框架和编程接口

    virtio_balloon
    可以让guest在运行时动态地调整它所占有host的内存资源,且无需关闭宿主机。
    http://smilejay.com/2012/11/kvm-ballooning-overview/

    virtio_net
    可以提供网络吞吐量和降低网络延迟,达到和原生网卡差不多的性能
    ethtool -i eth0

    virtio_blk
    提供高速访问块设备I/O的方法
    使用该驱动的磁盘显示为: /dev/vda ...
    IDE磁盘:/dev/hda ...
    SATA磁盘:/dev/sda ...


    二、PCI设备直接分配(VT-d/pass-through)
    将host中的PCI设备直接分配给guest完全使用
    不需要或者很少需要hypervisor的参与

    SR-IOV
    为了实现多个虚拟机能够共享同一个物理设备的资源并且达到设备直接分配的性能

    3. 热插拔

    4. 热迁移

    5. 嵌套虚拟化

    6. KSM
    COW技术(copy-on-write): 写时复制
    当使用fork函数创建一个进程时,子进程和父进程共享内存,当子进程或者父进程试图修改它们共享内存的区域时,
    内核会分配一块新的内存区域,并将试图修改的共享内存区域复制到新的内存区域上,然后让进程去修改复制的内存。

    KSM和COW技术有点相反

    KSM: Kernel Samepage Merging
    当内核扫描多个进程有相同的内存区域和内存页,将这些内存区域合并成一个,并标识为“写时复制”

  • 相关阅读:
    Mybatis 延迟加载策略
    Mybatis中的多表查询 多对多
    Mybatis中的多表查询 多对一,一对多
    Mybatis 的动态 SQL 语句
    Mybatis中的连接池
    判断一个对象是否为数组
    包装对象概念 (做好事不留名的雷锋)
    javascript 继承之拷贝,原型,类式
    ajax参数
    面向对象小实例之 选项卡
  • 原文地址:https://www.cnblogs.com/stellar/p/8630214.html
Copyright © 2011-2022 走看看