什么是服务主机进程(svchost.exe)和为什么这么多运行?

如果您曾经浏览过任务管理器,您可能会想知道为什么会有如此多的服务主机进程运行。 你不能杀死他们,你确定没有启动他们。 那么,他们是什么?

服务主机进程用作从DLL文件加载服务的shell。 服务被组织成相关组,每个组都运行在服务主机进程的不同实例中。 这样一来,一个问题就不会影响其他的实例。 此过程是Windows无法防止运行的重要组成部分。

本文是我们正在进行的系列的一部分,介绍任务管理器中的各种进程,如dwm.exectfmon.exemDNSResponder.execonhost.exerundll32.exeAdobe_Updater.exe 不知道这些服务是什么? 更好的开始阅读!

那么什么是服务主机进程?

这是答案,根据微软:

Svchost.exe是从动态链接库运行的服务的通用主机进程名称。

但这不是真的帮助我们。 前段时间,微软开始从依赖内部Windows服务(从EXE文件运行)到使用DLL文件来改变大部分的Windows功能。 从编程的角度来看,这使得代码更可重用,可以说更容易保持最新。 问题是您不能直接从Windows启动一个DLL文件与可执行文件相同的方式。 相反,从可执行文件加载的shell用于托管这些DLL服务。 所以服务主机进程(svchost.exe)诞生了。

为什么这么多服务主机进程运行?

如果您曾经看过“控制面板”中的“服务”部分,您可能已经注意到Windows需要大量服务。 如果每个服务都运行在一个服务主机进程之下,则一个服务中的故障可能会导致Windows的所有Windows。 相反,它们被分离出来。

服务被组织成与某些相关的逻辑组,然后创建一个服务主机实例来托管每个组。 例如,一个服务主机进程运行与防火墙相关的三个服务。 另一个服务主机进程可能会运行与用户界面相关的所有服务,依此类推。 例如,在下面的图片中,您可以看到一个服务主机进程运行多个相关的网络服务,而另一个运行与远程过程调用相关的服务。

有什么我可以做的所有这些信息?

老实说,不是很多。 在Windows XP(和以前的版本)的日子里,当电脑的资源和操作系统的资源有限的时候并不是那么微调,所以经常推荐停止Windows运行不必要的服务。 这些天, 我们不建议停用服务 现代电脑往往会装载内存和大功率的处理器。 再加上这样一个事实,Windows服务在现代版本(以及运行的服务)中如何处理,并且消除您认为不需要的服务真的没有太多的影响。

也就是说,如果您注意到服务主机或相关服务的特定实例引起麻烦,例如持续的CPU或RAM使用量过大,您可以检查涉及的特定服务。 这可能至少让您了解在哪里开始故障排除。 有几种方法可以看到服务主机的特定实例正在托管哪些服务。 您可以检查任务管理器中的内容,或使用名为Process Explorer的伟大的第三方应用程序。

检查任务管理器中的相关服务

如果您使用的是Windows 8或10,则任务管理器的“进程”选项卡上显示进程的全名。 如果进程作为多个服务的主机,您可以通过简单的扩展进程来查看这些服务。 这使得很容易识别哪些服务属于服务主机进程的每个实例。

您可以右键单击任何单独的服务来停止服务,在“服务”控制面板应用程序中查看,甚至在线搜索有关该服务的信息。

如果您使用的是Windows 7,则有所不同。 Windows 7任务管理器没有以相同的方式对进程进行分组,也没有显示常规进程名称 - 它仅显示所有运行“svchost.exe”的实例。 您必须探索一下以确定与“svchost.exe”的任何特定实例相关的服务。

在Windows 7中任务管理器的“进程”选项卡上,右键单击特定的“svchost.exe”进程,然后选择“转到服务”选项。

图片

这将使您转到“服务”选项卡,其中所有在“svchost.exe”进程下运行的服务都被选中。

图片

然后,您可以在“说明”列中查看每个服务的全名,因此如果您不希望运行该服务,或者为了解决问题,可以选择停用服务。

使用Process Explorer检查相关服务

作为Sysinternals系列产品的一部分,微软还提供了一个优秀的进程工具。 只需下载Process Explorer并运行它 - 它是一个便携式应用程序 ,因此无需安装它。 Process Explorer提供各种高级功能 - 我们强烈建议您阅读我们的指南,了解Process Explorer了解更多信息。

在这里,为了我们的目的,Process Explorer会在“svchost.exe”的每个实例下组织相关服务。它们以文件名列出,但其全名也显示在“说明”列中。 您还可以将鼠标指针悬停在任何“svchost.exe”进程上,以查看与该进程相关的所有服务的弹出窗口 - 即使是当前未运行的服务。

图片

这个过程可能是病毒吗?

该进程本身是一个官方的Windows组件。 虽然病毒可能用自己的可执行文件替换了真正的服务主机,但这不太可能。 如果您想确定,您可以查看进程的底层文件位置。 在任务管理器中,右键单击任何服务主机进程,然后选择“选项文件位置”选项。

如果文件存储在Windows \ System32文件夹中,那么您可以确定您没有处理病毒。

也就是说,如果您仍然想要更安心,您可以随时使用首选的病毒扫描程序扫描病毒 更安全比对不起!

什么是svchost.exe和为什么它运行?

你无疑阅读这篇文章,因为你想知道为什么地球上有一个名为Svchost.exe的运行近十过程。 你不能杀死他们,你不记得启动他们...所以他们是什么?

这篇文章是一部分, 我们正在进行一系列的解释在任务管理器中发现,像各种工艺dwm.exeCtfmon.exe会mDNSResponder.execonhost.exeRUNDLL32.EXEAdobe_Updater.exe ,和其他许多人 不知道那些服务是什么? 更好地开始阅读!

那么是什么呢?

根据Microsoft:“svchost.exe是从动态链接库运行的服务的通用主机进程名称”。 我们可以用英语吗?

前段时间,Microsoft开始将所有功能从内部Windows服务转移到.dll文件,而不是.exe文件。 从编程角度来看,这对于可重用性更有意义...但问题是您不能直接从Windows启动.dll文件,它必须从正在运行的可执行文件(.exe)加载。 因此svchost.exe进程诞生了。

为什么有那么多的svchost.exes运行?

如果你曾经看过控制面板中的服务部分,你可能会注意到Windows需要很多服务。 如果每个服务都运行在单个svchost.exe实例下,一个失败可能会关闭所有的Windows ...所以他们被分离出来。

这些服务被组织成逻辑组,然后为每个组创建单个svchost.exe实例。 例如,一个svchost.exe实例运行与防火墙相关的3个服务。 另一个svchost.exe实例可能运行与用户界面相关的所有服务,以此类推。

那么我该怎么办呢?

您可以通过禁用或停止不一定需要运行的服务来减少不需要的服务。 此外,如果您在单个svchost.exe实例上注意到非常大的CPU使用率,您可以重新启动在该实例下运行的服务。

最大的问题是识别什么服务正在特定的svchost.exe实例上运行...我们将在下面介绍。

如果你很好奇我们在说什么,只需打开任务管理器,并选中“显示所有用户的进程”框:

图片

如果您使用的是Windows 8或10,则需要转到详细信息标签。

Windows_10

从命令行检查

如果要查看特定svchost.exe实例托管什么服务,可以使用命令提示符下的tasklist命令查看服务列表。

任务列表/ SVC

图片

使用命令行方法的问题是,你不一定知道这些隐含名称是指什么。

在任何版本的Windows中检查任务管理器

从进程的详细信息视图,这将根据您使用的Windows版本而有所不同,您可以右键单击特定的svchost.exe进程,然后选择“转至服务”选项。

图片

这将翻转到服务选项卡,其中将选择在该svchost.exe进程下运行的服务。 再次,这将看起来略有不同在Windows 8或10,但它是相同的视图。

图片

这样做的好处是,您可以在“说明”列下看到真实名称,因此,如果您不想运行该服务,您可以选择禁用该服务。

使用Process Explorer任何版本的Windows

您可以使用优秀的Process Explorer的从微软/ Sysinternals的工具,看看有什么服务正在运行作为一个svchost.exe进程的一部分。

将鼠标悬停在其中一个进程上将显示所有服务的弹出列表:

图片

或者,您可以双击svchost.exe实例并选择服务选项卡,您可以在其中选择停止其中一个服务。

图片

禁用服务

从控制面板的管理工具部分,或键入services.msc进入开始菜单的搜索或运行框中打开服务。

在列表中找到您要禁用的服务,然后双击它,或右键单击并选择属性。

图片

将启动类型更改为已禁用,然后单击停止按钮立即停止它。

图片

如果选择,还可以使用命令提示符禁用服务。 在这个命令“trkwks”是从上面的对话框中的服务名称,但如果你回到本文开头的任务列表命令,你会注意到,你也可以找到它在那里。

sc config trkwks start = disabled

希望这有助于某人!

这个进程可以成为病毒吗?

只要确保文件的位置在Windows \ System32目录中,通常不会处理病毒。 所以只是为了安全,它总是值得用您首选的防病毒扫描程序扫描病毒。

我们建议您使用卡巴斯基BitDefender的 ,因为他们在这两个AV-测试和AV-Comparatives的排名前一直排名,我们已经使用这两种产品具有良好的效果。 他们不是免费的,但大多数免费的防病毒有捆绑额外的废话或试图将您的搜索引擎重定向到他们的“安全”解决方案,这不是真的安全,只是显示更多的广告或间谍的购物习惯。

你最好安全而不是遗憾,所以扫描您的计算机是一个好主意,无论什么防病毒产品,你使用。

赞 (1)
分享到:更多 ()