gpt4 book ai didi

memory-management - KVM 中的动态内存分配

转载 作者:行者123 更新时间:2023-12-04 07:50:19 27 4
gpt4 key购买 nike

我有 Ubuntu 16.04 主机,我在上面使用 KVM 安装了一个虚拟 guest (Windows server 2012)。可用的总 RAM 为 16 GB。
我已经安装了 virtio 气球驱动程序。我已经为 Windows 分配了 4GB 的当前内存和 12GB 的最大内存。但是,Windows 将 8GB 未分配内存视为已用内存。
Memory usage in Guest
当我打开一些繁重的应用程序时,分配的内存仅限于 4GB 的可用内存。在 Windows 中使用全部内存时,计算机的行为方式相同(运行不顺畅)。
Windows 可以看到所有 12 GB 的 RAM,但只能使用 4 GB。
如何确保 Windows 可以利用所有 12GB 内存?

最佳答案

您描述的行为只是气球驱动程序的操作方式。管理程序公开安装了 12 GB 虚拟 DIMM 的虚拟机。然后气球驱动程序获取 8 GB 的内存并将其返回给管理程序。它获取内存的方式因 guest 操作系统而异,但本质上它必须分配内存以使其看起来正在使用中,从而防止 guest 操作系统使用它。气球驱动程序不会根据 guest 工作负载要求自动调整。因此,如果您的 Windows guest 需要超过 4 GB,则需要在主机操作系统上使用 libvirt/virsh 来更改气球级别,将一些“已使用”的 8 GB 还给 guest 操作系统。如果您希望 guest 操作系统看到并使用完整的 12 GB,则根本不要使用气球驱动程序。

关于memory-management - KVM 中的动态内存分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43039272/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com