Windows Management Instrumentation简称WMI,有Windows10用户在任务管理器中发现WMI进程占用CPU过高的情况。那么Windows Management Instrumentation是什么进程呢?它有什么作用呢?能否禁用WMI进程呢?又该如何解决CPU占用率高的问题呢?
在任务管理器中右键点击Windows Management Instrumentation进程,选择“打开服务”即可打开“服务”管理器,在其中找到Windows Management Instrumentation服务,双击打开属性窗口。如图:
我们可以看到即可看到Windows Management Instrumentation的服务名称为Winmgmt,可执行文件路径为:
C:\WINDOWS\system32\svchost.exe -k netsvcs -p
对它的描述如下:
提供共同的界面和对象模式以便访问有关操作系统、设备、应用程序和服务的管理信息。如果此服务被终止,多数基于 Windows 的软件将无法正常运行。如果此服务被禁用,任何依赖它的服务将无法启动。
从以上描述中我们已经可以得到一个答案:正常情况下是不能禁用Windows Management Instrumentation服务的。
但是如果你的Win10系统中WMI进程一直占用CPU资源过高,那么也可以结束进程并禁用Winmgmt服务。但是这样一来,某些应用程序功能就会失效,例如笔记本触摸板无法通过键盘快捷键禁用,无法启动虚拟主机的USB和授权服务等。
解决方法一:重启Winmgmt服务
在“服务”管理器中右键点击Windows Management Instrumentation服务,选择“重新启动”,即可重启WMI服务。
Winmgmt服务重启之后,CPU使用率应该就有明显的下降了。
解决方法二:揪出错误调用WMI的进程
如果重启WMI服务之后,CPU占用率依然很高,那么就说明有某些应用程序进程在不正常调用WMI,因为正常情况下是不会过高占用CPU资源的。那么如何找到是哪些进程在调用WMI呢?方法如下:
按 Win + R 快捷键调出“运行”对话框,输入“Eventvwr.msc”,确定,打开“事件查看器”。
或者右键点击Win10开始按钮,在弹出的系统快捷菜单中也可看到“事件查看器”。
在“事件查看器”左侧的导航窗格中定位至“应用程序和服务日志 - Microsoft - Windows - WMI-Activity”,查看其中的事件日志。如图:
在其中找到标记为“错误”的事件,然后在下面的详细信息中查看ClientProcessId值(例如ClientProcessId = 7996),那么7996就是进程ID(PID)。
然后到“任务管理器”根据PID查找到应用程序进程,结束进程即可。
……