在 Windows 7 中,有没有办法(通过使用通用接口或自定义实用程序)来知道特定的 Windows 服务正在使用多少内存?
似乎大多数服务都由svchost.exe
进程托管(某些 svchosts.exe 进程似乎托管了大量服务)。虽然可以知道哪些服务由特定进程托管,但我发现没有办法获取有关服务占用多少内存的信息。
答案1
看一眼进程探索器来自 SysInternals 工具套件。process
按名称对列进行排序,然后查找svchost
。然后,您可以在描述字段中(有时)看到正在运行的实际服务。该Private Bytes
列将显示该特定服务占用的内存量。
答案2
通过使用任务管理器(Ctrl++ ) Shift,Escape您可以右键单击该svchost
进程并选择Go to service(s)
,它将突出显示该进程中托管的服务。
或者,通过选择进程选项卡中的 PID 列,您可以匹配服务选项卡中的 PID。
答案3
您还可以使用 Windows 任务管理器中的构建版本,然后转到查看 > 选择列 > 并检查显示“内存”的列,这应该是大约七个,它们都为您提供有关程序当时实际正在做什么的不同想法。
答案4
还有资源监视器。它是 Windows 7 和 2k8r2 的新功能。它就像是强化版的任务管理器。不知道为什么没人用它。根据我的经验,使用它实际上比使用进程资源管理器更容易发现问题。打开任务管理器后,只需单击性能选项卡上的“资源监视器”按钮即可。