Hyper-V 裸内存使用量 3Gb,在 48GB 主机上

Hyper-V 裸内存使用量 3Gb,在 48GB 主机上

刚购买了新的 48GB 服务器。其余组件并不重要。Win 2008 R2 是主机,仅安装了 Hyper-V 角色,并且主机在启动 Windows 时占用 3GB RAM。我很担心当我开始添加虚拟机时会是什么样子。有人知道为什么没有任何虚拟机的裸主机占用这么多内存吗?

答案1

自从 Windows NT 问世以来,这种问题就一直存在。我记得有人说:“我有一台全新的机器,里面有 24MB 的 RAM,而 NT 空闲时占用了 22MB。它可能在做什么?”

答案与当时相同,尽管数字不同。Windows 将使用可用 RAM 来加快速度,将代码图像留在内存中并用于文件缓存。如果您确实将机器用于某种用途,则大部分 RAM 将被清除并用于其他用途。

您真的想要一个不通过使用未使用的 RAM 来加速自身运行的系统吗?

答案2

转到“性能”,打开资源监视器,查看不同的内存类别:

你会看见 :

  1. 工作集和私有:这两个才是最重要的
  2. 提交:这个是虚拟的(通常不会真正使用)

您看到的大部分内容是缓存或预分配,它们将被移出以用于实际工作进程。暂时不用担心。

看一下这个,以便更好地理解各种计数器(有点旧(2008)但仍然有效): http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx

答案3

如果您在系统菜单中看到 48GB,但在任务管理器中只使用了 3GB,则一切正常。操作系统将获取其所需的空间,其余空间可供您的虚拟机使用。

答案4

需要注意两点:

  1. 无论主机操作系统需要做什么,始终在 Hyper-V 服务器上保留大约 2GB 的内存。因此,只为虚拟机配置约 46GB 的内存。
  2. 添加虚拟机时主机分区(“物理”操作系统安装)使用的内存,但为了满足虚拟机的内存要求除外。每个虚拟机的内存开销非常小,因此您可以毫无问题地将虚拟机配置为使用最多 46GB 的内存,这种内存压力将导致主机分区本身使用更少的内存进行缓存。

例如,我在一台内存为 16GB 的机器上运行 Windows 7,我的机器目前使用 5,635MB 的缓存。一台只有 16GB 的机器上有 5.5GB 的缓存。但这没什么可担心的,那只是因为我有近 8GB 的​​可用内存,而 Windows 正在使用我的可用内存来加速我的系统。如果我启动了更多程序和虚拟机,用于缓存的内存将分配给任何需要它的程序。

相关内容