En Windows 7, ¿hay alguna manera de saber cuánta memoria está usando un servicio?

9

En Windows 7, ¿hay alguna manera (mediante el uso de una interfaz común o una utilidad personalizada) para saber cuánta memoria está usando un servicio de Windows específico?

Parece que la mayoría de los servicios están alojados por svchost.exeprocesos (algunos procesos svchosts.exe parecen albergar toneladas de servicios). Si bien es posible saber qué servicios están alojados por un proceso específico, no encontré ninguna manera de obtener información sobre la cantidad de memoria que requiere un servicio.

tigrou
fuente
2
Eche un vistazo al explorador de procesos, identifica procesos anidados y ofrece una buena imagen general de lo que está sucediendo en un sistema. technet.microsoft.com/en-us/sysinternals/bb896653.aspx
jmreicha
Puede ver un script para verificar la memoria de los servicios individuales en esta respuesta SO .
Rosberg Linhares

Respuestas:

13

Eche un vistazo a Process Explorer desde el conjunto de herramientas SysInternals. Ordene la processcolumna por nombre y busque svchost. Luego, puede ver en el campo de descripción (a veces) el servicio real que se está ejecutando. La Private Bytescolumna le mostrará cuánto está usando ese servicio en particular en la memoria. ingrese la descripción de la imagen aquí

PenguinCoder
fuente
¿Hay alguna razón por la que debería buscar en "bytes privados" en lugar de "conjunto de trabajo" (o "Tamaño virtual")?
tigrou
1
El conjunto de trabajo @tigrou es memoria recientemente referenciada, verá que generalmente es menor que Bytes privados. Bytes privados es la memoria asignada actual por el proceso que no se comparte con ningún otro proceso. Vea esta pregunta de StackOverflow .
PenguinCoder
2
El punto central de la pregunta era determinar las estadísticas de memoria para servicios individuales que comparten un único proceso de host svchost. Esta respuesta no aborda eso en absoluto.
kreemoweet
@kreemoweet No miraste la captura de pantalla, ¿verdad? scvhost.exe se divide en el servicio que lo usa en muchas ubicaciones.
PenguinCoder
1
Como observa @kreemoweet, esto no responde a la pregunta planteada, que se trata de cuando varios servicios utilizan el mismo proceso. La respuesta a la pregunta está disponible en Server Fault: puede configurar cada servicio para usar su propio proceso .
Christian Conkle
6

Al usar el administrador de tareas ( Ctrl+ Shift+ Escape), puede hacer clic con el botón derecho en el svchostproceso y seleccionarlo, Go to service(s)y resaltará los servicios alojados en ese proceso.

Alternativamente, al seleccionar la columna PID en la pestaña de proceso, puede hacer coincidir el PID en la pestaña de servicios.

jdog
fuente
1

También puede usar la compilación en el Administrador de tareas de Windows y vaya a Ver> Seleccionar columnas> y marque las que dicen "Memoria", esto debería ser aproximadamente siete, todas le dan diferentes ideas sobre lo que el programa está haciendo en ese momento.

gabeio
fuente
-1

También hay un monitor de recursos. Es nuevo en Windows 7 y 2k8r2. Es como un administrador de tareas con esteroides. No estoy seguro de por qué nadie usa esto. En realidad, es más fácil resolver sus problemas que con el explorador de procesos en mi experiencia. Con el administrador de tareas abierto, simplemente haga clic en el botón "monitor de recursos" en la pestaña de rendimiento.

Rich.Weber
fuente
1
¿Qué información da? ¿Qué tal una captura de pantalla? ¿También puede escribir 2008 R2, en lugar de las iniciales, especialmente si son solo 2 caracteres adicionales? Esta respuesta es muy baja en calidad. Por favor, editar mejorarlo.
Canadiense Luke