当前位置: 首页 > news >正文

【Windows】怎么解决Win 10家庭版WMI Provider Host占用CPU过高的问题?-篇一【2025.05.07】

本文面向两种用户,普通小白和windows开发程序员。
对于小白,目标就是阻止wmi对资源的高占用。解决方法有以下几步:
查出谁在调用这个wmiprvse.exe
win+R 组合键打开运行,输入命令services.msc,回车或确认。

在这里插入图片描述

  1. 找到如下蓝色背景的Windows Management Instrumentation。

在这里插入图片描述

  1. 双击打开属性弹窗,点击依存关系。下发的”以下系统组件依赖此服务“显示的就是哪些服务会触发wmiprvse.exe的运行。比如Dell Data Vault Collector,我们再回到服务去找这个。

在这里插入图片描述

  1. 留意服务的状态是运行中的,像我主机,这个服务就在运行。双击打开属性弹窗。留意下可执行文件路径,到该路径下看下是否是自己安装的,最好卸载的方式去除这个服务。

在这里插入图片描述
在这里插入图片描述

点击停止的话,可能重启会再次启动,所以把启动类型这里设为禁用。

在这里插入图片描述

以上对于小白的一种解决方式,当然若是系统不通过服务的方式调用wmi则上述步骤不起作用,需要高阶排查。
对于程序员等兴趣爱好者:
查看wmi的日志,定位到底是谁在密集调用这个服务。控制台执行WMIMon.exe > c:/wmilog.txt 。注意需要观察wmiprvse.exe的cpu占用高的时候开启,或者至少日志包含CPU高的部分。
在这里插入图片描述

  1. Ctrl+C关闭刚刚的命令。日志量可能很大,我这里采用的方法是频率,看哪个进程调用频次高。notepad++打开C盘下的wmilog.txt文件。按照进程_ClientProcessId进行搜索,观察次数。如下图,总共1480次客户端调用,光这个就占了640次。那我们就分析这个进程,进程id=5412。

在这里插入图片描述
在这里插入图片描述

  1. 如下图,就把某绒揪出来了,当然这个可能是误伤,先卸载后再观察。如果好了就罢了。如果不好,再分析其他进程id。(此处蛐蛐几句,搞安全的就是细致,把命令行都隐藏了,也不知道有意无意的~)

在这里插入图片描述

至此,作为开发者比较精细的处理了wmiprvse占用高。那是否会有疑问这个东西是干啥的,为啥这么多程序服务依赖这个。
wmiprvse.exe 分析深入篇
此节适合对windows系统有深入兴趣的读者。
首先了解下:WMI(Windows Management Instrumentation)是Windows系统管理的核心技术,用于管理和监控系统资源、硬件、软件和服务。说白了,我们要查询下cpu的负载、内存的余量、磁盘信息等均可以通过此组件。wmi支持的全部如下。
在这里插入图片描述

那么导致这个进程CPU占用高的原因是啥?是查询性能频繁还是微软的这个组件本身有问题。实际上2者都存在。以下是微软自win7关于这个组件的问题。
在 Windows 7 或 Windows Server 2008 R2 中的 Wmiprvse.exe 过程中出现内存泄漏 - Microsoft 支持
下图是msdn上对wmi的架构介绍,我们分层看,第三层,是客户端层或者叫请求层,非官方写的程序都属于这一层。通过COM接口的方式调用WMI的服务。第2层,wmi管理了一个仓库,就是一个数据库,存储这些采集数据。第1层,是和系统相关调用,win7、10、11、server可能有差异,就在最低的第1层做了兼容。可理解为微软自己的全家桶很大,做了一层适配。开发一次wmi的代码,在微软的各个产品均可正常执行。

在这里插入图片描述

从wmi使用的方式也可看出,和sql语句很像。微软称为WQL 即 WMI Query Language。

对于个人电脑来说wmi使用最多的也就是性能采集,支持脚本的方式对于云服务厂商处理批量主机会方便很多。下文结合我最近遇到的现场wmiprvse.exe占用高的问题,做个深入分析。

http://www.xdnf.cn/news/319519.html

相关文章:

  • 数字孪生大屏UI设计
  • centos8.5.2111 更换阿里云源
  • 软件架构评估方法全面解析
  • React Fiber
  • Excel处理控件Aspose.Cells教程:压缩Excel文件完整指南
  • java CyclicBarrier
  • PDF解析新范式:Free2AI工具实测
  • Pdf转Word案例(java)
  • 【笔记】当个自由的书籍收集者从canvas得到png转pdf
  • Docker编排工具---Compose的概述及使用
  • SSA-CNN+NSGAII+熵权TOPSIS,附相关气泡图!
  • 面试高频算法:最长回文子串
  • Webug4.0靶场通关笔记19- 第24关邮箱轰炸
  • 《Python星球日记》 第42天:综合练习与数学建模
  • MVCC机制
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】7.3 动态报表生成(Jupyter Notebook/ReportLab)
  • 面试题 03.06 动物收容所
  • 如何高效实现「LeetCode25. K 个一组翻转链表」?Java 详细解决方案
  • SENSE2020BSI sCMOS科学级相机主要参数及应用场景
  • Azure OpenAI 聊天功能全解析:Java 开发者指南
  • 本地部署 MySQL + Qwen3-1.5B + Flask + Dify 工作流
  • 滑动窗口——长度最小子数组
  • var、let、const的区别
  • 高并发内存池(一):项目简介+定长内存池的实现
  • ACE-Step - 20秒生成4分钟完整歌曲,音乐界的Stable Diffusion,支持50系显卡 本地一键整合包下载
  • MySQL 8.0 OCP(1Z0-908)英文题库(1-10)
  • PyTorch常用命令(可快速上手PyTorch的核心功能,涵盖从数据预处理到模型训练的全流程)
  • 【RabbitMQ可靠性原理】
  • 亚远景-ASPICE vs ISO 21434:汽车软件开发标准的深度对比
  • YOLOv8的Python基础--函数篇2