Cómo determinar qué servicios se ejecutan en un proceso SVCHOST.EXE

 

Tabla de Contenidos

reloj el compañero de vídeo de Windows XP SVCHOST aquí! Reloj de Windows Vista y Windows 7 compañera de vídeo SVCHOST aquí!

Introducción

Una pregunta muy común que vemos aquí en Bleeping ordenador involucra a las personas afectadas en que hay demasiados procesos SVCHOST.EXE ejecutan en su ordenador. La confusión proviene normalmente de una falta de conocimiento sobre SVCHOST.EXE, su propósito, y servicios de Windows en general. Este tutorial aclarar esta confusión y proporcionar información sobre lo que estos procesos son y cómo obtener más información acerca de ellos. Antes de continuar el aprendizaje sobre SVCHOST, permite obtener una pequeña introducción a los servicios de Windows.

Servicios son los programas de Windows que se inician cuando se carga Windows y que continúan funcionando en segundo plano sin interacción por parte del usuario. Para aquellos familiarizados con los sistemas operativos UNIX / Linux, servicios de Windows son similares a los demonios * nix. En la mayoría de los servicios de Windows son archivos ejecutables (.exe), pero algunos servicios son los archivos DLL también. Como Windows no tiene forma directa de la ejecución de un archivo DLL que necesita un programa que puede actuar como un lanzador para este tipo de programas. En esta situación, el lanzador de los servicios de DLL es SVCHOST.EXE, también conocido como el Proceso de host genérico para Win32 Servicios . Cada vez que vea un proceso SVCHOST, en realidad es un proceso que está administrando uno o más distintos servicios de Windows DLL.

A continuación se describen tres métodos, dependiendo de la versión de Windows, para ver cuáles son los servicios de un proceso SVCHOST.EXE es el control de su ordenador, así como algunos conocimientos técnicos avanzados sobre svchost para aquellos que estén interesados.

La determinación de los servicios que se ejecutan bajo un proceso SVCHOST.EXE utilizando Process Explorer

Process Explorer, de Sysinternals, es un programa de gestión de procesos que le permite ver los procesos que se ejecutan en el equipo y una gran cantidad de información acerca cada proceso. Una de las características interesantes de Process Explorer es que también le da la capacidad de ver qué servicios SVCHOST.EXE un proceso particular está controlando.

En primer lugar es necesario descargar Process Explorer desde el siguiente sitio:

Proceso Explorador

descargar el archivo y guardarlo en su disco duro. Cuando se haya descargado por completo, extraer el archivo en su propia carpeta y haga doble clic en el procexp.exe para iniciar el programa. Si esta es su primera vez que ejecuta el programa, se mostrará un acuerdo de licencia. De acuerdo con el contrato de licencia y el programa continuará. Cuando está terminado de cargar se le presentará una pantalla que contiene todos los procesos que se ejecutan en el ordenador, como se muestra en la figura siguiente. Recuerde que los procesos que se ven en esta imagen no será el mismo que lo que se está ejecutando en el ordenador. Proceso

Explorador de pantalla

desplazarse por la lista de procesos hasta que vea el proceso SVCHOST.EXE (EN). Para averiguar qué servicios se están ejecutando dentro de un proceso SVCHOST.EXE particular, es necesario examinar las propiedades para el proceso. Para ello la entrada SVCHOST.EXE haga doble clic en Process Explorer y verá la pantalla de propiedades para el proceso como en la imagen a continuación.

SVCHOST.EXE Propiedades

Por último, para ver los servicios que se ejecutan en este proceso, haga clic en la pestaña Servicios . Ahora verá una pantalla similar a la de abajo.

Servicios Tab

esta ventana muestra los servicios que están siendo gestionados por este proceso SVCHOST.EXE en particular. Como se puede ver la SVCHOST.EXE que actualmente estamos viendo en este tutorial está manejando el proceso de servidor DCOM Launcher y Servicios de Terminal Server.

Usando este método se puede determinar que un proceso SVCHOST.EXE está controlando en su ordenador.

La determinación de los servicios que se ejecutan bajo un proceso SVCHOST.EXE utilizando Lista de Tareas

Para los que le gusta imaginar todo en una ventana / consola de comandos de Windows, y tener Windows XP Pro o Windows 2003, no es un Windows programa llamado Tasklist.exe que se puede utilizar para enumerar los procesos en ejecución, y servicios, en el equipo. Para utilizar la lista de tareas para ver los servicios que un proceso SVCHOST.EXE particular es de carga, sólo tienes que seguir estos pasos:

1. Haga clic en el botón de inicio y luego haga clic en el comando de menú Ejecutar .

2. En el Abierto de: tipo de campo cmd y pulse entran .

3. Ahora se presentará con una ventana de la consola. En el símbolo del sistema de tipo de lista de tareas / SVC / fi «imagename eq svchost.exe» y pulse la tecla entrar en . Verá una lista de los procesos en su ordenador, así como los servicios que un proceso SVCHOST.EXE está administrando. Esto se puede ver en la siguiente imagen.

Lista de Tareas / salida SVC

Cuando haya terminado el examen de la salida, se puede escribir salida y pulse la tecla enter para cerrar la ventana de la consola.

La determinación de los servicios que se ejecutan bajo un proceso Svchost.exe en Windows Vista y Windows 7

Windows Vista y Windows 7 han mejorado su Administrador de tareas de Windows y una de sus características nos permite ver fácilmente qué servicios están siendo controlados por un proceso SVCHOST.EXE particular. Para empezar, sólo tiene que iniciar el administrador de tareas haciendo clic derecho sobre la barra de tareas y seleccionando el Administrador de tareas. Cuando se abre el Administrador de tareas, haga clic en la pestaña Procesos . Ahora se le presentará una lista de los procesos que su cuenta de usuario ha iniciado como se muestra en la imagen de abajo.

. Usuario actual de Windows 7 Procesos

Nosotros, sin embargo, necesidad de ver todo de los procesos que se ejecutan en el equipo. Para ello haga clic en el botón etiquetado Mostrar Todos los procesos . Al hacer esto, es posible que Windows le pedirá que autorización toda flujo para ver todos los procesos como se muestra a continuación.

Mostrar todos los procesos de confirmación

Pulse el botón Continuar y el Administrador de tareas volverá a cargar, pero esta vez mostrando todos los procesos que se ejecutan en el sistema operativo. Desplazarse hacia abajo por la lista de procesos hasta que vea los procesos svchost como se muestra en la imagen de abajo.

Todos los Windows 7 Procesos

haga clic derecho en un proceso SVCHOST y seleccione el Ir al Servicio (s) opción de menú . Ahora verá una lista de servicios en su ordenador con los servicios que se ejecutan bajo este proceso SVCHOST particular, destacaron. Ahora se puede determinar fácilmente qué servicios SVCHOST un proceso particular, se está ejecutando en Windows Vista o Windows 7.

La determinación de los servicios que se ejecutan bajo un proceso SVCHOST.EXE en el Administrador de Windows 8

El Windows 8 Tarea hace que sea mucho más fácil encontrar qué servicios se están ejecutando bajo una instancia de SVCHOST.exe particular. Para acceder al Administrador de tareas , escriba Administrador de tareas de la pantalla de inicio de Windows 8 y haga clic en la opción Administrador de tareas cuando aparece en los resultados de búsqueda. Esto abrirá la básica Administrador de tareas como se muestra en la siguiente imagen.

Para ver la lista de procesos, haga clic en la opción Más detalles de .

de desplazamiento hacia abajo hasta que vea la categoría de Windows Procesos y busque el anfitrión Servicio entradas como se muestra en la imagen de abajo.

Al lado de cada fila proceso de host de servicio será una pequeña flecha. Haga clic en esta flecha para expandir esa entrada de host del servicio particular, para ver qué servicios están funcionando debajo de ella.

Bajo el anfitrión de servicio ampliado, ahora verá la lista de servicios que se ejecutan en él. Esto le permite determinar fácilmente qué servicios SVCHOST un proceso particular, está gestionando en Windows 8.

información avanzada sobre SVCHOST.EXE

Ahora que sabemos que un solo proceso SVCHOST.EXE puede cargar y administrar múltiples servicios, lo que determina qué servicios se agrupan bajo una instancia de SVCHOST? Estos grupos están determinadas por la configuración en la siguiente clave del registro de Windows:

HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows NT CurrentVersion SVCHOST

En esta clave son un conjunto de valores que varios servicios de agrupar bajo un mismo nombre. Cada grupo es un valor REG_MULTI_SZ del Registro que contiene una lista de nombres de servicio que pertenecen a ese grupo. A continuación verá grupos estándar que se encuentran en XP Pro.

Cada uno de los nombres de servicio en estos grupos corresponde a una entrada de servicio en la clave del registro de Windows:

HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services

En cada una de estas entradas de servicio hay una subclave Parámetros que contiene una valor ServiceDLL que corresponde a la DLL que se utiliza para ejecutar el servicio.

Cuando Windows carga comienza a iniciar los servicios que están configurados para habilitado y tener un inicio automático. Algunos servicios se inician con el comando SVCHOST.exe. Cuando los intentos de Windows para iniciar uno de estos tipos de servicios y en la actualidad no es una instancia de svchost acumulado de dicho grupo de servicios, se creará una nueva instancia SVCHOST y luego cargar el archivo DLL asociada con el servicio. Si, por otro lado, ya hay un proceso SVCHOST corriendo para ese grupo se acaba de cargar el nuevo servicio en dicho proceso existente. Un servicio que se utiliza para inicializar SVCHOST sí mismo, proporciona el nombre del grupo como un parámetro de comando svchost.exe. Un ejemplo sería:

C: WINDOWS system32 svchost.exe -k DCOMLAUNCH

En la línea de comandos anterior, el proceso svchost buscará el ServiceDLL asociado con el nombre de servicio del grupo DCOMLAUNCH y cargarlo .

Esto puede ser confuso, así que vamos a utilizar un ejemplo. Hay un servicio de Windows llamado seguimiento de vínculos distribuidos cliente que tiene un nombre de servicio TrkWks. Si examinamos la tabla anterior, podemos ver que el servicio TrkWks es parte del grupo la netsvcs. Si nos fijamos en la clave de registro para este servicio, vemos que es de ServiceDLL % SystemRoot% system32 trkwks.dll . Por lo tanto, utilizar esta información y lo que hemos aprendido anteriormente, sabemos que el comando ejecutable para el servicio TrkWks debe ser:

C: WINDOWS system32 svchost.exe -k netsvcs

Cuando el servicio TrkWks que se inicia Windows comprobará para ver si hay un proceso SVCHOST para el grupo netsvcs ya creado. Si no se va a crear una instancia de uno para manejar los servicios en el grupo netsvcs. El proceso de SVCHOST netsvcs continuación, se iniciará el servicio ejecutando el % SystemRoot% system32 trkwks.dll . Una vez que el archivo DLL se ha cargado por SVCHOST el servicio estará entonces en un estado iniciado.

Conclusión

Ahora que usted entiende lo que SVCHOST.EXE es y cómo se gestiona algunos servicios de Windows, al ver varias instancias en su lista de procesos ya no debe ser un misterio o una preocupación. No es raro ver a numerosas entradas SVCHOST, a veces hacia arriba para 8 o 9 entradas, que se ejecuta en el ordenador. Si usted está preocupado con lo que se ejecuta en estos procesos, basta con utilizar los pasos descritos anteriormente para examinar sus servicios. Si no está seguro de lo que hace un servicio en particular y necesita ayuda, no dude en hacer cualquier pregunta que pueda tener en nuestros foros de Windows .