因为我的笔记本电脑风扇无缘无故地旋转起来,所以我查看了 CPU 使用率,发现 svchost
CPU 使用率为 12.5%,基本上是满核了。
现在,我知道正在 svchost
运行的服务,并且知道如何在任务管理器或进程资源管理器中显示它运行的服务(如这里所述)。
现在我知道了哪些服务正在运行,但我不知道哪些服务占用了 CPU 时间。我可以逐个禁用服务,但我不太喜欢这样做(这可能会破坏当前正在使用的东西,而且我可能会忘记稍后重新打开服务)。
因此我想知道是否可以指示 Windows每个只运行一个服务svchost
下次启动 PC 时。虽然我可能会遇到几个进程的轻微缺点,但我可以立即找出它是哪一个,并且更容易决定是否停止或重新启动服务。
答案1
复制自http://windowsitpro.com/windows-server/configure-service-run-its-own-svchost-process
在管理员命令提示符下运行以下命令(该命令是为 Windows 更新服务编写的)
sc 配置 wuauserv 类型= 自己的
使 Windows 更新服务在单独的svchost
进程中运行。
笔记:等号和值之间需要一个空格。
更新:sc config wuauserv type= own
在 Windows 10 上运行会导致 Windows 更新无法正常工作。
答案2
您可以使用进程探索器或者进程黑客显示进程的属性svchost
。转到“线程”选项卡,此处两个工具均显示一列,表示调用属于哪个服务。
在这张图片中,一些 CPU 使用率来自 IP Helper 服务。
在里面Windows 10 RS2 版本自 Build 14942 起如果您使用的 PC 具有超过 3.5GB RAM,Microsoft 会再次隔离每个服务,以便您可以轻松看到哪个服务属于哪个svchost
进程:
如果您的 PC 有 3.5+ GB 的内存,您可能会注意到任务管理器中的进程数量有所增加。虽然乍一看这种变化可能令人担忧,但许多人会很高兴发现这种变化背后的动机。随着预装服务数量的增加,它们开始在 Windows 2000 中分组为称为服务主机 (svchost.exe) 的进程。请注意,此版本推荐的 PC RAM 为 256 MB,而最低 RAM 为 64MB。由于多年来可用内存急剧增加,服务主机的内存节省优势已经减弱。
答案3
好的,同意@AEonAX 对这个问题的回答非常准确。
但是,如果感兴趣的话,还有一个更详细、更复杂的分析工具 WPT,用于分析流程树等,magicandre1981 针对我的情况建议使用它 ->WUDFHost.exe 持续占用 12-20% CPU
这是它的基本描述,并且可以在线程本身上检查在案例中使用它的详细信息。
“安装 WPT(Win10 SDK 的一部分:dev.windows.com/en-us/downloads/windows-10-sdk),运行 WPRUI.exe,选择“第一级”,在资源下选择 CPU 使用率并单击开始。现在捕获 1 分钟的 CPU 使用率。1 分钟后单击保存。将大型 ETL 文件(+ NGENPDB 文件夹)压缩为 1 个 zip 文件,上传 zip 文件(OneDrive、dropbox、google drive)并在此处发布共享链接。– magicandre1981 8 月 17 日 15:52”