查看: 224|回复: 0

CPU虚拟化、内存虚拟化、I\O虚拟化

[复制链接]
  • TA的每日心情
    奋斗
    2022-7-25 00:26
  • 签到天数: 1 天

    [LV.1]初来乍到

    5万

    主题

    5万

    帖子

    16万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    167923
    发表于 2024-1-7 12:30:49 | 显示全部楼层 |阅读模式
    6 u3 S# ~2 |- F+ R

    CPU虚拟化

    完全虚拟化:可以依靠虚拟化层来对虚拟出虚机所需要的全部资源,这时候我们的OS是完全无感知的,并且完全不需要更改内核,这是一个纯软件驱动的虚拟化,优点是移植性较好。这种架构的情况下,用户OS对硬件发送指令会产生异常事件(因为此时OS无法直接驱动硬件,但是自己却没有感知),这些异常事件会被VMM虚拟化层捕捉到,然后VMM进行翻译向硬件发送请求。但是在intel-X86的OS中,一些敏感指令无法产生异常事件,那么就不会被捕捉,进而无法对硬件进行操作,这是完全虚拟化的一种瓶颈。但是现在完全虚拟化是进行二进制翻译,对特权指令进行二进制的翻译,提高翻译率。这对VMM的要求高。半虚拟化:和完全虚拟化的架构一样,但是这个是需要来修改OS的内核来使得OS可以感知到自己在虚拟化层之上。用户发送特权指令是触发一个hypercall来翻译用户的指令,性能好点。硬件辅助虚拟化:将CPU分为两种状态root mode和non-root mode,特权指令在root模式下,非特权是non-root,这种模式下VMM只是一种透传的功能,但是前提是硬件支持虚拟化。 / K) ~8 O8 t* J8 [

    举例说明:

    7 z8 v2 H9 z2 \& H' G$ M1 E
    $ V$ e5 n' C; L; E1 g2 S

    一个物理设备16核,复用率是2,然后虚拟化层给我们虚拟出了32个vCPU,那么如果我分给一个虚机16个VCPU,是对应物理的设备的一个核或者几个核,还是分别对应16个核?

    答案是16核一一对应的。算法会尽量地并行处理任务。以此来提高事件处理的速度。

    内存虚拟化

    ! I/ L6 Y+ A5 d6 Z: R/ O3 x9 P

    内存复用技术,可以提高50%虚拟机的密度,最高可以提高150%,但是虚拟机的密度越高,用户的体验就越差。

    3 H2 Q& Y) ?* k3 a4 V6 I; V* q

    1.内存共享,写时复制:多个虚机未用的空间会映射到同一个物理内存未用的空间,此时这个空间只有只读的权限。当虚机需要对内存写数据的时候,会临时开辟一个新的空间给虚机使用。

    0 h2 m: \* q% Z/ e/ h, B# |

    2.内存置换:如果此时虚机需要30G的内存并且都是数据跑满的情况下,但是物理内存只有20G,此时内存会拿DISK10G内存,而VMM会把热数据(访问次数较高的数据)存储在物理内存中,把冷数据(长时间不被别人访问的数据)存储在磁盘disk中,这样来回的置换,以此来提高用户的体验,这样置换的原因是假如这个disk是机械硬盘的话,用户的访问就会特别慢。体验也会变差。

    6 Q8 m& y8 F+ h$ J/ [) L4 Z" x* y

    3.内存气泡:VMM通过映射表把虚机内空闲的碎片化的内存拼凑起来,拼成一个大的内存,来给更多的虚机使用(注意:在实际当中,如果这些技术在都打开的情况下,那么这三种技术都会混合使用,我们是不知道是使用的哪一种,虚机的密度越高的话用户的体验就越差。)

    $ Y- g5 e# S' G* y

    I/0虚拟化

    & d1 Y, |+ \0 Y1 r/ S' Y

    1.完全虚拟:完全使用软件来模拟真实的硬件,这样捕捉的话路径较长,性能较差。

    - `% {2 u c' I8 W

    2.半虚拟化:虚机的前驱指令会直接由VMM转发给硬件的后驱Doamin0原生驱动处理,然后驱动程序在转发给相应的外设,VMM参与较少,路径会减少,性能会变好。

    $ q" _% q+ R/ |) v1 K# Q

    3.IO-through:I/O透传:直接分配给虚拟的物理设备,此时的设备需要支持虚拟化,在VMM上安装驱动,直接映射到虚机上,VMM只是做透传作用,这样的话是最优的一种方案。

    # V! T3 n- D2 p* J8 P' |; v

    目前完全虚拟化和半虚拟化都是朝着硬件虚拟化上发展,随着硬件虚拟化的发展,VMM的瓶颈会降低,用户的体验也会大大的增加!

    & T& h) ]& r7 P6 Z% X5 C7 [ 0 s$ I$ ]8 X6 R 4 R. S( a# _0 U8 l% A1 h, m
    回复

    使用道具 举报

    懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    客服QQ/微信
    921439866 周一至周日:09:00 - 21:00
    致力打造互联网创业第一品牌,学习网上创业赚钱,首选泓嘉网络创业,值得信赖! 泓嘉网络科技 版权所有!

    本站内容均转载于互联网,并不代表泓嘉网立场! 拒绝任何人以任何形式在本站发表与中华人民共和国法律相抵触的言论!。

    信息产业部备案号 豫ICP备2022016396号-1

    QQ|免责声明|广告服务|小黑屋|泓嘉网创 ( 豫ICP备2022016396号-1 )|网站地图

    GMT+8, 2026-4-17 10:49 , Processed in 0.194041 second(s), 26 queries .

    快速回复 返回顶部 返回列表