¿Qué es svchost.exe y por qué funciona?

Sin duda está leyendo este artículo porque se pregunta por qué en la tierra hay casi una docena de procesos que se ejecutan con el nombre svchost.exe. No puedes matarlos, y no recuerdas haberlos iniciado… ¿entonces qué son?

Entonces, ¿qué es SVCHost.exe

?

Según Microsoft: «svchost.exe es un nombre genérico de proceso de host para servicios que se ejecutan desde bibliotecas de enlace dinámico».  Hace algún tiempo, Microsoft comenzó a mover toda la funcionalidad de los servicios internos de Windows a archivos.dll en lugar de archivos.exe. Desde una perspectiva de programación, esto tiene más sentido para la reutilización… pero el problema es que no se puede lanzar un archivo.dll directamente desde Windows, tiene que ser cargado desde un ejecutable en ejecución (.exe). Así nació el proceso svchost.exe.

¿Por qué hay tantos svchost.exe en ejecución?

Si alguna vez ha echado un vistazo a la sección de Servicios en el panel de control, es posible que se dé cuenta de que Windows requiere muchos servicios. Si cada servicio se ejecutara bajo una única instancia de svchost.exe, un fallo en uno de ellos podría hacer caer todas las ventanas…. por lo que se separan.

Estos servicios se organizan en grupos lógicos, y luego se crea una única instancia svchost.exe para cada grupo. Por ejemplo, una instancia de svchost.exe ejecuta los 3 servicios relacionados con el firewall. Otra instancia svchost.exe podría ejecutar todos los servicios relacionados con la interfaz de usuario, y así sucesivamente.

Entonces, ¿qué puedo hacer con SVChost?

Puede reducir los servicios innecesarios desactivando o deteniendo los servicios que no necesitan estar en funcionamiento. Además, si nota un uso muy alto de la CPU en una única instancia svchost.exe, puede reiniciar los servicios que se ejecutan bajo esa instancia.

El mayor problema es identificar qué servicios se están ejecutando en una instancia svchost.exe en particular…. lo veremos a continuación.

Si siente curiosidad por saber de qué estamos hablando, abra el Administrador de tareas y marque la casilla «Mostrar procesos de todos los usuarios»:

Comprobación desde la línea de comandos (Vista o XP Pro)

Si desea ver qué servicios están alojados en una instancia svchost.exe en particular, puede utilizar el comando de la lista de tareas desde la línea de comandos para ver la lista de servicios.

El problema con el uso del método de la línea de comandos es que no necesariamente se sabe a qué se refieren estos nombres crípticos.

Comprobación del Administrador de tareas en Vista

Puede hacer clic con el botón derecho en un proceso svchost.exe en particular y, a continuación, elegir la opción «Ir al servicio».

Esto pasará a la pestaña Servicios, donde se seleccionarán los servicios que se ejecutan bajo ese proceso svchost.exe:

Lo bueno de hacerlo de esta manera es que puedes ver el nombre real bajo la columna Descripción, así que puedes elegir desactivar el servicio si no quieres que se ejecute.

Uso del Explorador de procesos en Vista o XP

Puede utilizar la excelente utilidad Process Explorer de Microsoft/Sysinternals para ver qué servicios se están ejecutando como parte de un proceso svchost.exe.

Si pasa el ratón por encima de uno de los procesos, se le mostrará una lista emergente de todos los servicios:

O puede hacer doble clic en una instancia de svchost.exe y seleccionar la pestaña Servicios, donde puede elegir detener uno de los servicios si lo desea.

Desactivación de los servicios SVCHost.exe

Abra Servicios desde la sección de herramientas administrativas del Panel de control o escriba services.msc en el cuadro de búsqueda o ejecución del menú de inicio.

Busque el servicio en la lista que desea desactivar y haga doble clic en él o haga clic con el botón secundario y seleccione Propiedades.

Cambie el tipo de inicio a Desactivado y, a continuación, haga clic en el botón Detener para detenerlo inmediatamente.

También puede utilizar la línea de comandos para desactivar el servicio si lo desea. En este comando «trkwks» es el nombre del servicio del diálogo anterior, pero si regresa al comando de la lista de tareas al principio de este artículo, notará que también lo puede encontrar allí.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *