内存超分的三种实现方式

讨论 eustance
Lv2 初级炼丹师
发布在 Linux   2214   0
讨论 eustance   2214   0

    KVM中内存也是允许过载使用(over-commit)的,KVM能够让分配给客户机的内存总数大于实际可用的物理内存总数。由于客户机操作系统及其上的应用程序并非一直100%地利用其分配到的内存,而且宿主机上的多个客户机一般也不会同时达到100%的内存使用率,所以内存过载分配是可行的。一般来说,有如下三种方式来实现内存的过载使用。

    1. 内存交换(swapping):用交换空间(swap space)来弥补内存的不足。
    2. 气球(ballooning):通过virio_balloon驱动来实现宿主机Hypervisor和客户机之间的协作来完成。
    3. 页共享(page sharing):通过KSM(Kernel Samepage Merging)合并多个客户机进程使用的相同内存页。

    其中,第一种内存交换的方式是最成熟的(Linux中很早就开始应用),也是目前被广泛使用的,不过,它相比于KSM和ballooning的方式效率较为低一些。

    版权声明:作者保留权利,不代表意本站立场。如需转载请联系本站以及作者。

    参与讨论

    回复《 内存超分的三种实现方式

    EditorJs 编辑器

    沙发,很寂寞~
    反馈
    to-top--btn