Pourquoi tant de processus svchost.exe s'exécutent sous Windows
Lorsque vous ouvrez l'onglet Processus du Gestionnaire des tâches dans Windows 7 ou l'onglet Détails de la tâche Manager dans Windows 8, vous serez surpris de voir qu'un grand nombre de processus sont nommés svchost.exe. Aujourd'hui, nous verrons pourquoi Windows a besoin d'autant d'instances du processus SVCHOST et comment identifier quel processus svchost exécute quels groupes de services.
Le fichier svchost.exe (hôte de service) se trouve dans le dossier C:\Windows\System32 et est utilisé pour exécuter divers services système. Voici une description officielle de ce fichier fournie par Microsoft :
Le fichier Svchost.exe se trouve dans le dossier %SystemRoot%\System32. Au démarrage, Svchost.exe vérifie la partie services du registre pour construire une liste de services qu'il doit charger. Plusieurs instances de Svchost.exe peuvent s'exécuter en même temps. Chaque session Svchost.exe peut contenir un regroupement de services. Par conséquent, des services distincts peuvent s'exécuter, selon comment et où Svchost.exe est démarré. Ce regroupement de services permet un meilleur contrôle et un débogage plus facile.
Les groupes Svchost.exe sont identifiés dans la clé de registre suivante :HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\SvchostChaque valeur sous cette clé représente un groupe Svchost distinct et apparaît comme une instance distincte lorsque vous affichez des processus actifs. Chaque valeur est une valeur REG_MULTI_SZ et contient les services qui s'exécutent sous ce groupe Svchost. Chaque groupe Svchost peut contenir un ou plusieurs noms de service extraits de la clé de registre suivante, dont la clé Parameters contient une valeur ServiceDLL :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service
Ainsi, en raison du regroupement des services, nous avons de nombreuses instances de Svchost.exe, chacune exécutant un groupe de services par instance !
Voyons comment afficher les services en cours d'exécution dans une instance svchost.exe spécifique.
Option 1: Gestionnaire des tâches
L'outil intégré, Windows Task Manager, est capable d'afficher des informations supplémentaires sur les services liés au processus svchost sélectionné. Récemment, nous avons couvert comment voir les services liés à un processus dans Windows 8, c'est donc une bonne idée d'utiliser cette astuce pour inspecter svchost.
- Ouvrez le gestionnaire de tâches en appuyant sur le Ctrl + Maj + Echap raccourci sur le clavier ou en cliquant avec le bouton droit sur une zone vide de la barre des tâches.
- Sous Windows 7 ou Vista, accédez à l'onglet Processus. Sous Windows 8 et versions ultérieures, passez à l'onglet Détails.
- Cliquez avec le bouton droit sur le processus souhaité. Supposons qu'une instance particulière du processus svchost.exe consomme beaucoup de mémoire et que vous souhaitiez savoir quel service en est la cause, cliquez sur cette instance de svchost.exe et choisissez Aller à Service(s). L'onglet Services s'ouvrira automatiquement et tous les services créés par l'instance sélectionnée du processus svchost.exe seront mis en surbrillance.
Option 2: astuce de la ligne de commande
Ouvrir un invite de commande fenêtre et tapez ce qui suit :
liste des tâches /svc
Il listera toutes les instances du processus svchost avec les services associés.
Cette astuce est très utile dans Windows XP où l'application Gestionnaire des tâches n'a pas le 'Aller à Service(s)' caractéristique.
C'est ça. Vous savez maintenant pourquoi plusieurs processus svchost.exe s'exécutent sur votre système Windows et vous ne serez pas dérouté pourquoi tant d'entre eux doivent s'exécuter.