vmware workstation 16 pro 开启虚拟机占用内存远比分配给虚拟机的内存高?

不知道从哪个windows10和vmwareworkstation15pro哪个版本开始,发现多开几个虚拟机后32G内存不够用了。经过仔细对比发现,vmwareworks... 不知道从哪个windows10和vmware workstation 15pro哪个版本开始,发现多开几个虚拟机后32G内存不够用了。经过仔细对比发现,vmware workstation只要一打开虚拟机,已提交内存刷的就上去了。举个例子,一台linux分配了4G内存,第1张图是开机前的内存使用率和已提交内存大小一点开机,注意这个时候虚拟机还没真正启动,已提交内存立刻就增加了4G,见第2张图然后开机过程中,已提交内存还在增加,等到进入系统,随着虚拟机使用,已提交内存就会继续增加,基本上是一个4G的虚拟机,要被vmware提交8G甚至更多,看第3张图关机之后,已提交内存又回来了,看第4张图我为什么这么关心这个已提交内存呢?是因为虚拟机开多的情况下,这个已提交内存到了31G接近32G,物理机就无响应然后蓝屏重启了,这个时候真正内存使用才十几个G不到20G啊。在网上各种搜索,没搜到相关答案,就没有人遇到和我一样的问题么? 展开
 我来答
Rex蕉
2021-06-23 · 专注AI算法建模和应用分享
Rex蕉
采纳数:525 获赞数:1309

向TA提问 私信TA
展开全部

初步估计是由于虚拟内存与物理内存交互时导致页面错误,

这个问题会在win10低核心版本发生的概率较大,

又或者与一些设置相关,可以按我以下建议进行操作,看能否解决问题

首先,要从自查 win10版本开始,

第一步,检查一下win10 版本,

在win10设置里,如下图

设置

然后点关于,就可以查看到版本号

关于

如果核心版本低于20H2,建议先升级到20H2以上版本,因为核心版本低的win10存在非常多的BUG,这个我自己亲身体会。

第二步,虚拟内存的设置,不要小看这个虚拟内存设置,很多时候就是这个搞出各种问题。

在此电脑图标(就是我的电脑,懂的自然懂)上面右键,属性

此电脑

然后选择高级系统设置

高级系统设置

弹出菜单后,看下图的步骤操作,最后的目的是设置虚拟内存位置和大小,

虚拟内存

这里很关键,我自己有时候运行一些程序和搭建开发环境的时候,

万万没想到报蓝,居然是这里设置影响的,

如果你的内存是很大,千万不要使用系统的自动分配虚拟内存!切记!切记!

因为系统自动分配的虚拟内存,会直接建立一个和你物理内存一样大小的缓存文件!

很多人会忽略了这个问题,比如你的SSD分配给你的当前系统空间只有100GB,

但是你的内存是64GB,那么你就等着哭吧,自动分配的虚拟内存会把你的系统盘空间全吃掉,

系统盘空间不足的时候就会产生各种各样的问题。

虚拟内存的大小设置,建议是从256MB起步,

然后最大值就是取决于你是做什么用途来做设置,比如VMware如果要多开很多个,

那就可以在一个空间较大的磁盘上(建议不要和VM文件一个磁盘,同盘会影响整体性能)设置最大值为32768MB。


第三步,将VM虚拟机改为直接使用物理内存

这一步取决于运行VM虚拟机多少个有关,

如果开的虚拟机使用的内存总和要大于物理内存(需要计算上系统本身和程序本身需要的4GB左右),那这一步可以不看,

因为这一步是直接让VM虚拟机直接使用物理内存,不使用虚拟内存,VM默认下是使用主机虚拟内存+物理内存相结合的,

需要找到虚拟机的主配置文件,以 .VMX结尾的文件,每个虚拟机是唯一的很好找,如下图

VMX文件

找到这个文件后,需要使用记事本的方式打开它,

打开文件

使用记事本打开后,用查找的功能找到memsize这个关键字,如下图

添加

然后在memsize这个字段下面,最加入一行配置

mainMem.useNamedFile= "FALSE"

加入进去后保存。如果你有多个虚拟机就需要每个都要改一遍。

这时候你改完的虚拟机就直接使用物理内存了,不会使用虚拟内存,

如果运行多个虚拟机后,在内存满的情况下,VM程序也会提示反馈内存不足不让其虚拟机运行的。

好了,以上的建议,希望可以帮助到你

更多追问追答
追问
你好,按照你说得,添加这行,mainMem.useNamedFile= "FALSE",4G内存的虚拟机开机瞬间已提交内存增加了8个G,而且随着虚拟机开机过程一直增加。
我是21H1的系统,操作系统本身也没开虚拟内存,觉得32G够了,不需要开虚拟内存
追答

你好,虚拟内存不是说内存大就不开的,有小部分程序或系统缓存是需要使用虚拟内存的,建议按照我上面发的第二步设置,如果你是做开发环境的话就更加需要虚拟内存了。

还有你说的已提交的内存很大的问题,目前这个问题就连微软官方也无法解释的(可能是漏洞又或者是某种目的不告诉我们真相)。

如果真要研究这个提交内存大小的问题,也有很多方面都会影响到提交内存的大小。

1、显卡的共享内存会导致已提交变大,你可以查看虚拟机使用显存的大小。

2、杀病毒软件,杀毒软件大多都是驱动级的,经过杀毒软件的剖析后也会增加提交大小。

3、某程序的内存泄漏,比如QQ输入法的进程等等。

4、有些程序使用到显卡的硬件加速之类的软件,如浏览器等。

所以需要多方面着手,现在你只看已提交的内存大小是没有任何意义的,道不如看一下物理内存占用了多少

如图上使用中的,你可以观察启动虚拟机前是多少,启动虚拟机后是多少,一般你在VM的配置里添加了mainMem.useNamedFile= "FALSE"这一条的话,使用中的内存一般都是和物理内存使用量对应的。比如启动前使用是4GB,虚拟机设定是使用2GB,那启动后应该就是6GB,较准确的。你可以观察观察。

kk1394
2021-06-23 · TA获得超过6117个赞
知道大有可为答主
回答量:9700
采纳率:62%
帮助的人:1843万
展开全部
很正常啊
首先物理机系统本身要占用部分内存;
其次VMware软件本身也要占用部分内存(不包含分配给特定虚拟机的);
再次物理机系统上其他软件(操作系统和VMware之外的)同样要占用部分内存;
最后你不能光看峰值,要看稳定运行时的平均值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2022-03-21
展开全部
同vmware workstation 16 pro 版本 WIN10 1803打开虚拟机一样提交内存是分配内存的两倍左右 系统还是虚拟机版本有BUG或者虚拟机机制就是这样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qinsb
2022-07-11
知道答主
回答量:7
采纳率:0%
帮助的人:5746
展开全部
同问,我的是14G内存,分给VM为8G,就开一个虚拟系统 ,过一会儿就把电脑14G内存全占满了,内存使用99%。我只分给虚拟8G呀,还有6G运行win7,和一些办公的,可虚拟的就把所有内存占了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kongsam
高能答主

2021-06-22 · 有什么不懂的尽管问我
知道大有可为答主
回答量:2.4万
采纳率:30%
帮助的人:1763万
展开全部
多开虚拟机运行,建议换版本如ESXI6.7。或者装SERVER2008 R2版本.winver查看版本号1709稳定差些,改1909版本稳定。另外硬盘质量检查HDD TUNES查看固态硬盘,3000次读写问题。
为什么不组阵列卡
追问
不是服务器,服务器就装esxi了。是普通PC和普通笔记本,两者都是这种情况。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式