2015-08-02 06:16:36 +0000 2015-08-02 06:16:36 +0000
84
84
Advertisement

Windows 10内存使用率高(原因不明)

Advertisement

几天前,我的电脑更新到了Windows 10。然而,在使用了一段时间后,我的电脑开始变慢,直到无法使用–这是由于内存使用量过大造成的。重新启动后,一切都恢复正常(总的使用量约为8GB内存的25%)。然而,在几个小时的使用过程中,内存又增加到了70%,如果不重启的话,内存会进一步增加到100%,后来甚至会冻结。任务管理器并没有什么帮助,因为它没有显示所有的进程(下面添加了截图)。也试过RAMMap,但它给出一个错误。"错误刷新数据库"。

我不太了解电脑,但也许你们中的一些人知道这个问题,或者能帮我找出是什么在使用我的RAM。

Advertisement

答案 (3)

124
124
124
2015-08-02 06:28:55 +0000

你有一个驱动引起的内存泄漏。看一下非paged内核内存的高值。你的情况是超过了3.7GB。你可以使用 poolmon 来查看是哪个驱动导致了内存占用率高。

安装 Windows WDK ,运行 poolmon,通过池类型后的 P 排序,使非 paged 在上面,通过 B 排序,查看占用内存最多的标签。运行 poolmon,进入安装 WDK 的文件夹,进入工具(或 C:\Program Files (x86)\Windows Kits0\Tools\x64),点击 poolmon.exe,运行 poolmon。为此,打开cmd提示符并键入cd C:\Windows\System32\drivers。然后键入findstr /s __ *.*,这里的标签(poolmon中最左边的名字)。这样做,看看哪个驱动程序使用了这个标签:

现在,进入驱动程序文件夹(C:\Windows\System32\drivers),右键单击相关的驱动程序(上图中的tmsd.sys)。单击 “属性",进入 "详细信息 "选项卡,找到 "产品名称"。查找该产品的更新。

如果 pooltag 只显示 Windows 驱动程序或在 pooltag.txt ("C:\Program Files (x86)\Windows Kits0\Debuggers\x64\triage\pooltag.txt")

你使用 XPerf 追查是什么原因导致的使用 . 从Windows SDK中安装WPT,打开cmd. exe as admin ,然后运行这个:

xperf -on PROC\THREAD+LOADER+POOL -stackwalk PoolAlloc+PoolFree+PoolAllocSession+PoolFreeSession -BufferSize 2048 -MaxFile 1024 -FileMode Circular &&timeout -1 &&xperf -d C:/pool.etl

捕获30 -60s的增长。用WPA.exe打开ETL,将Pool图添加到分析窗格中。

将pooltag列放在首位,并添加堆栈列。现在在WPA.exe里面加载符号,展开你在poolmon中看到的标签的堆栈。

现在找到其他的第三方驱动,你可以在堆栈中看到。这里的Thre标签(Thread)是由G-Data的AVKCl.exe使用的。用户Hristo Hristov提供了一个在解压文件时使用量很大的FMfn的痕迹:

这个标签是由驱动WiseFs64.sys使用的,它是 "Wise Folder Hider "程序的一部分。移除它就可以修复漏洞。


用户Samuil Dichev提供了一个高FMicIrp使用量

的跟踪,该标签被程序Razor Cortex使用。在用户chr0n0ss的样本中,FMicIrp的使用情况是由F-Secure Antivirus Suite造成的:

移除后,使用Windows Defender修复了问题。

26
26
26
2015-08-15 11:50:08 +0000

这家伙可能有一个Killer Networking(以前是Bigfoot networking)品牌的网卡。

正在疯狂地试图弄清楚为什么我有一个巨大的内存泄漏,甚至做了一个完全干净的安装,并立即安装后,我有一个内存泄漏。当然,我安装了网络驱动和显卡驱动,但就是这样。发现这个线程说是他的网络驱动,然后上网搜索了一下 “杀手级内存泄露",看到点击率很高,发现是杀手级应用本身的问题,而不只是在windows 10中。所以,如果有人有这个问题,而且他们有很多游戏板或笔记本有杀手级网卡,你可以直接禁用杀手级应用启动。但我所做的是完全卸载了ASROCK提供的驱动,然后从官方的杀手网络网站上安装了最新的驱动包。就是那个比较小的~30MB的下载。如果你的下载量接近或超过100MB,那么你就买错了。

你会失去一切让killer脱颖而出的东西(它是QoS软件),但这正是一个好的路由器的初衷。特别是杀手软件只处理你的PC上运行的应用程序的QoS,而对你的网络整体来说没有任何作用。

2
Advertisement
2
2
2016-05-10 15:38:46 +0000

由magicandre1981提供的公认答案是正确的,如果RAM使用率持续攀升到100%,那么很可能是内存泄露。

不过,如果你是因为Windows 10的内存使用率很高但保持稳定(比如在60%-90%的范围内)才来到这个页面,那么你可能没有问题。Windows 10比过去的版本更有效地使用内存。这是因为未使用的RAM是浪费的RAM .

现代操作系统早已将不经常使用的内存数据交换到硬盘上的页文件中,以释放出RAM用于更经常需要的内存数据。我的Win 10系统有8GB的内存和12GB的pagefile),但是,从硬盘中找回这些数据是很慢的,Windows 10会将不经常访问的内存压缩后存储在系统进程中(在RAM中)。解压这些数据比从硬盘(甚至是SSD)中找回这些数据要快。如果你的RAM已经满了,并不意味着你不能运行更多的东西,如果需要更多的RAM,那么Win 10会将这些压缩后的内存转移到pagefile中,以腾出一些内存给新的应用程序。一个像OneTab这样的扩展可以帮助你。

Advertisement