Hotline pc one faq windows Pariez chez Sportingbet!  
Hotline pc line
Hotline PC - contact Hotline PC - Vista Hotline PC - Windows XP Hotline PC - dossiers Hotline PC - registre Hotline PC - reseaux Hotline PC - applications Hotline PC - ms-dos Hotline PC - gravure Hotline PC - autres
Google
 
Forum
Fonds d'écran
Sonneries
Sonneries






Les Processus Windows

Gérer et résoudre un problème sur les processus.

Dernière mise à jour : 02/04/2006


Une faq concernant les processus
Les utilitaires facilitant la gestion des processus
Gestion des processus à partir de l'Invite de commandes
Résoudre un problème sur les processus

Fonctionnement des processus

- Qu'est-ce qu'un processus ?
L'utilisateur lambda a besoin d'exécuter différents programmes simultanément, mais il faut garder à l’esprit qu'un processeur ne peut exécuter qu'une instruction à la fois. Les programmes sont donc gérés de manière séquentielle et discontinue. Il est possible de définir la priorité d'un processus comme étant l'"attention" que va accorder le processeur au programme correspondant. C'est une manière de dire que le processeur ne voit de l'application que son processus correspondant. Les threads (au féminin) sont des sortes de processus légers utilisés pour effectuer des tâches en parallèle. Afin de vous en rendre compte, accédez au Gestionnaire des tâches de Windows en appuyant sur les touches Ctrl+Alt+Suppr de votre clavier, puis cliquez sur l'onglet Applications. Cliquez du bouton droit sur un des noms des applications lancées puis, dans le menu contextuel, cliquez sur la commande Aller dans le processus. Le processus correspondant sera automatiquement mis en surbrillance. D’autres noms de processus sont présents dans cette liste, mais sont, eux, chargés de certaines fonctionnalités de votre système (Explorateur de fichiers, accès réseau à distance, etc.).

- Qu'est-ce que le processus Svchost.exe ?

SystemRoot%\System32\Svchost.exe est un processus générique servant d'hôte à différents services exécutés par les fichiers .dll. Afin de vous faire une idée précise de son fonctionnement, vous pouvez visualiser les correspondances entre un processus et un ou plusieurs services en tapant en invite de commandes : tasklist /svc /fi "imagename eq svchost.exe"
Le premier processus Svchost listé est responsable du lancement de ces deux services : DcomLaunch et TermService.
Ils correspondent à ces deux noms complets de services : Lanceur de processus serveur DCOM et Services Terminal Server.
Dans le Registre, vous pouvez en avoir aussi un aperçu en parcourant HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost. Chaque chaîne multiple contient une liste des services DLL extraite à partir de la clé HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\<Nom du raccourci pour ce service>.
Vous pouvez reproduire la même démarche en saisissant ce type de commandes :
tasklist /svc /fi "imagename eq lsass.exe" : renvoit aux services IPSEC, Emplacement protégé et Gestionnaire de comptes de sécurité.
tasklist /svc /fi "imagename eq cisvc.exe" : renvoit au service d'indexation.

- Mais pourquoi j'ai deux processus nommés Explorer.exe ?
Commençons par ce qui n'a rien à voir. Vous pouvez déterminer si les composants de l'Explorateur s'ouvrent dans un ou plusieurs processus :
1) Ouvrez \Software\Microsoft\Windows\CurrentVersion\Explorer.
2) Modifiez une valeur DWORD nommée DesktopProcess.
Si les données de la valeur sont égales au chiffre 0 tous les composants du Shell vont se lancer dans un processus multithread appelé Explorer.exe. Chaque thread sera différencié.
À l'inverse, saisissez comme données le chiffre 1 si vous souhaitez que d'une part l'Explorateur et d'autre part la Barre des tâches et le Bureau s'ouvrent dans deux processus différents.
L'avantage de cette méthode est qu'un problème sur l'Explorateur Windows n'engendre pas également le blocage du Bureau ou de la Barre des tâches. Vous éviterez aussi certains effets de rafraîchissement des icônes du Bureau quand l'Explorateur est fortement sollicité. À mon sens, les performances globales s'en trouvent tout de même amoindries. Par ailleurs, il se peut que l'étiquette attachée à une lettre de lecteur correspond à un lecteur monté obsolète. Enfin, une fenêtre de l'Explorateur Windows peut s'ouvrir à chaque démarrage de l'ordinateur (mais je n'ai jamais constater ce problème)…
- Ouvrir les fenêtres de dossier dans un processus différent :
Cette option est accessible en cliquant sur Outils/Options des dossiers…/Affichage.
Si vous cochez la case vous vous appercevrez qu'à chaque ouverture d'une fenêtre Explorer.exe un deuxième processus du même nom apparaîtra. Cela correspond à cette entrée du Registre : HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\SeparateProcess.


Gestion des processus

- Gérer les processus :
Cet utilitaire est téléchargeable à partir de cette adresse : www.sysinternals.com/ntw2k/freeware/procexp.shtml. Une fois l'archive ZIP décompressée, double-cliquez sur cet exécutable : procexp.exe. Le volet supérieur liste les processus qui sont exécutés, tandis que celui du bas énumère les fichiers ou les entrées du Registre qui sont consultés pour chacun des processus que vous sélectionnerez. Si vous faites un clic avec le bouton droit de la souris sur un des noms de processus, plusieurs commandes sont disponibles :
* Bring to Front : l'application associée apparaîtra au premier plan.
* Set priority : permet de définir la priorité accordée à votre application.
* Kill Process ou Kill Process tree : permet de supprimer le processus ou l'arborescence des processus qui sont liés.
* Suspend (ou Resume) : le processus est momentanément désactivé. Il peut être à tout moment réactivé.
* Launch Depends : une fenêtre nommée Dependency Walker s'ouvre et liste les fichiers .dll sollicités (ainsi que ceux qui manquent à l'appel).
* Properties : permet de visualiser les chemins d'accès ainsi que l'évolution graphique du processus en question.
Il vous est possible d'allouer plus de ressources systèmes à un processus que vous considérez comme prioritaire.
Si vous cliquez sur les menus Options et Replace task Manager, cet utilitaire viendra remplacer le Gestionnaire de tâches de Windows. Les menus View et Show processes From All Users vous permettent d'afficher l'ensemble des processus système.
Si vous souhaitez connaître quel est le processus qui bloque l'accès à un fichier suivez cette procédure :
1) Cliquez sur Find/Find Handle…
2) Dans la zone de texte Handle or type:, saisissez le nom de fichier verrouillé.
3) Cliquez sur le bouton Search.
Le ou les processus qui "locke" le fichier seront immédiatement trouvés.

- Utiliser le système avec un minimum de processus :
Ce paragraphe fait suite à cet article : http://www.sysinternals.com/blog/2005/07/running-windows-with-no-services.html.
Sur une installation classique comprenant le Service Pack 1, on peut compter environ 17 processus système. Il ne vous sera pas possible de terminer l'ensemble des processus en utilisant le Gestionnaire de tâches Windows : la plupart seront indiqués comme étant des processus critiques ou redémarreront automatiquement. Nous allons nous servir comme expliqué précédemment de Process Explorer.
1) Lancez le programme...
2) Avec le bouton droit de la souris cliquez sur le processus Smss.exe puis sur la commande Kill Process
3) Refaites la même opération en suivant cet ordre :
* Winlogon.exe
* Lsass.exe
* Services.exe
* Les processus Svchost.exe
* Tous les autres processus listés à l'exception du processus Csrss.exe.
Laissez le processus System Idle Process tranquille puisqu'il n'est là que pour comptabiliser le temps pendant lequel aucun thread n'est exécuté. Par contre, rien ne vous empêche de terminer le processus Explorer.exe !
Dans ce cas, deux processus resteront en mémoire : Csrss.exe et System. Pour mieux vous en rendre compte suivez cette procédure :
1) Cliquez sur File/Run...
2) Dans la zone de texte Ouvrir: saisissez : taskmgr
3) Dans le Gestionnaire de tâches cliquez sur l'onglet Processus.
Signalons tout de même qu'il n'y aura plus grand chose qui marchera ! Malgré tout la manipulation reste intéressante si vous devez lancer une application capable de tourner de manière autonome et nécessitant des ressources système conséquentes.
Une autre manière de réduire "naturellement" le nombre de processus est de redémarrer le système en mode diagnostic : seuls 11 processus seront automatiquement initiés.

- Filemon :
Ce programme vous permet de suivre en temps réel les fichiers ou les dossiers qui sont appelés par les différents processus actifs sur votre ordinateur.
Il se télécharge à partir de cette page : http://www.sysinternals.com/Utilities/Filemon.html.
Il vous suffit ensuite de lancer cet utilitaire : filemon.exe
1) Appuyez sur le raccourci clavier Ctrl+L.
2) Dans la liste déroulante Include: saisissez le nom du processus visé.
3) Dans la liste déroulente Exclude: saisissez les processus que vous ne souhaitez pas surveiller.
Vous pouvez aussi vous servir du bouton droit de la souris sur un des processus puis de cliquer sur la commande Exclude Process.
Notez que vous pouvez aussi spécifier une arborescence de l'Explorateur dans une des deux listes dérourantes.
Si dans la liste Include vous saisissez ce chemin c:\test et que dans la zone Exclude vous spécifiez cet autre chemin "c:\test\test1" seul le dossier test sera surveillé.
Si vous ne souhaitez surveiller que le processus Explorer et le dossier c:\test vous devrez donc saisir ce type de filtre dans la zone Include: explorer.exe;c:\test
Afin de faciliter l'analyse du rapport vous pouvez reprendre le même chemin dans la liste déroulante Highlight:
Notez que chaque nom de processus ou de chemin doit être séparé par un point-virgule.
Les cases à cocher placées en-dessous ont la signification suivante :
Log Opens : Ouverture d'un objet;
Log Read : Lecture d'un objet;
Log Write : Écriture dans l'objet;
Log Successes : Accès couronnée de succès;
Log Errors : Accès aboutissant à une erreur.
Servez-vous du raccourci Ctrl+X afin de réinitialiser l'affichage.

- Visualiser l'occupation du microprocesseur par les processus :
Un petit utilitaire est disponible sur le site de Microsoft. En l'absence de lien direct, vous le trouverez très facilement en saisissant dans un moteur de recherche comme Google cette expression : qslice.exe. Une fois l'archive autoextractible téléchargée (qslice_setup.exe), double-cliquez dessus afin de procéder à l'installation du freeware. Il sera placé dans \Program Files\Resource Kit.
La fenêtre QuickSlice propose une interface graphique extrêmement simple :
* La colonne PID liste les numéros d'identification des processus.
* La colonne Image Name liste les noms des processus.
* La colonne % Process CPU Usage présente à l'aide d'un graphique horizontal la charge représentée par chaque processus.
Cet utilitaire un peu sommaire peut vous être d'un grand secours pour la détection d'un processus (et pas la déduction de l'application ou du service) entraînant un ralentissement important des performances de votre ordinateur. Il se désinstalle en double-cliquant sur l'archive autoextractible puis en sélectionnant le bouton Remove.

Gestion des processus en Invite de commandes

- PsList :
Un outil vous permet d'afficher toutes les informations concernant les processus qui tournent sur votre système ainsi que ceux d'une machine "distante" : "PsList". Cet utilitaire est compatible avec toutes les versions NT de Windows. Téléchargez un bouquet d'utilitaires nommé "PsTools" à partir de cette adresse : www.sysinternals.com. Une fois l'archive ZIP décompressée lancez ce simple fichier exécutable : Pslist.exe.
La syntaxe est la suivante :
Pslist [-?] [-d] [-m] [-x][-t][-s [n] [-r n] [\\Ordinateur [-u Nom_Utilisateur] [-p Mot_De_Passe]] [Nom | pid]
-u : spécifie un nom d'utilisateur afin de pouvoir se connecter sur une machine distante.
-p : spécifie un mot de passe pour le nom d'utilisateur indiqué.
-d : affiche les statistiques pour tous les "threads" actifs du système en les groupant avec les processus qu'ils permettent.
-m : affiche les statistiques de l'occupation en mémoire de chaque processus.
-x : affiche les statistiques concernant l'utilisation du processeur, de la mémoire et les informations sur les "threads" de chacun des processus spécifiés.
-t : affiche l'arborescence des processus.
Une manière de visualiser les dépendances entre les processus.
-s [n] : ouvre le programme en mode "Gestionnaire de tâches" pendant le nombre de secondes spécifié par n.
-r n : ouvre le programme en mode "Gestionnaire de tâches" en le rafraîchissant toutes les n secondes. La valeur par défaut est 1.
Définition : Un thread peut être défini comme une sorte de sous-programme d'une application plus importante qui nécessite pour fonctionner différents traitements en parallèle.

- Terminer un processus à partir de l'Invite de commandes :
Un outil vous permet de terminer les processus qui tournent sur votre système ainsi que ceux d'une machine "distante" : "PsKill". Cet utilitaire est compatible avec toutes les versions NT de Windows. Téléchargez un bouquet utilitaires nommé "PsTools" à partir de cette adresse : http://www.sysinternals.com. Une fois l'archive ZIP décompressée lancez ce simple fichier exécutable : Pskill.exe. La syntaxe est la suivante :
Pskill [\\Ordinateur [-u Nom_Utilisateur] [-p Mot_De_Passe]] <Nom_Processus | ID_Processus>
-u : spécifie un nom d'utilisateur afin de pouvoir se connecter sur une machine distante.
-p : spécifie un mot de passe pour le nom d'utilisateur indiqué.
1) Accédez au Gestionnaire de tâches en appuyant simultanément sur les touches Ctrl + Alt + Suppr.
2) Cliquez sur l'onglet Processus.
3) Cliquez sur Affichage/Sélectionner les colonnes...
4) Cochez la case PID (identificateur de processus).
5) Sous Windows XP, vous devriez avoir un processus nommé Msmsgs.exe.
Son PID est le 3664. Ce processus permet à MSN Messenger d'afficher un certain nombre de fonctionnalités. Nous pouvons donc terminer ce processus de deux façons :
pskill.exe msmsgs.exe
pskill.exe 3664

- Utiliser le compte "SYSTEM" pour lancer un processus :
Psexec.exe se télécharge à partir de cette adresse web : http://www.sysinternals.com/Utilities/PsExec.html. L'intérêt de cet outil est de pouvoir exécuter n'importe qu'elle commande sans qu'il soit besoin d'installer quoique ce soit sur l'ordinateur client. L'ensemble des paramètres est accessible en saisissant cette commande : psexec /help. Voici quelques exemples d'utilisation à partir du menu Exécuter ou de l'Invite de commandes :
- Lancez un programme ou un module en utilisant le compte Administrateur :
1) Cliquez sur Démarrer/Exécuter puis saisissez : psexec -d -i -e -u Administrateur cmd /c start sysdm.cpl
2) Saisissez le mot de passe administrateur.
Non, rien ne s'affichera à l'écran ! Les propriétés systèmes s'ouvriront en utilisant l'identité de l'administrateur de votre ordinateur.
- Lancer l'Explorateur Windows :
1) Lancez une fenêtre d'Invite de commandes en exécutant la commande cmd.
2) Appuyez simultanément sur les touches Ctrl + Alt + Suppr.
3) Cliquez sur l'onglet Processus
4) Terminez le processus Explorer.exe
5) En Invite de commandes saisissez ceci : psexec -i -s -d c:\windows\explorer.exe
L'Explorateur Windows se lancera avec les paramètres par défaut. L'intérêt par contre de cette méthode est que l'ensemble des dossiers seront accessibles sans avoir à modifier les autorisations NTFS puisqu'a priori le compte SYSTEM possède un accès complet sur tous les objets de l'Explorateur Windows.
6) Une fois mes modifications effectuées retournez dans le Gestionnaire de tâches afin de terminer le processus Explorer.exe puis de le relancer en utilisant les informations d'identification par défaut.
7) Cliquez simplement sur Fichier/Nouvelle tâche (Exécuter...) puis saisissez dans la zone de texte Ouvrir : explorer
Signalons que vous ne pourrez vous débarrassez de quelques bugs d'affichage qu'en relançant votre session interactive. C'est une manière pratique d'accéder ou de supprimer rapidement un fichier ou un dossier sur lequel vous n'avez pas de droits d'accès :
1) Cliquez sur Démarrer/Exécuter.
2) Saisissez cette commande : psexec -s -d -i cmd
3) Servez-vous de la commande Del afin de supprimer le fichier récalcitrant.
Le même principe s'applique en exécutant regedit afin d'ouvrir le Registre Windows et d'explorer les fichiers de ruche SAM et Security ou, par exemple, votre antivirus. Concernant l'éditeur du Registre Windows, l'Invite de commandes ou les Gestionnaire de tâches il vous sera possible à tout moment de les lancer même si une stratégie ou une modification faite directement dans le Registre vous en empêche. C'est aussi une excellente façon de vérifier si un problème qui se pose sur une application n'est pas dû à un problème sur les autorisations NTFS.
- Copiez le fichier exécutable nommé test.exe sur l'ordinateur distant puis l'exécutez :
psexec \\Ordinateur_Client -c test.exe
- Lancez un processus distant en utilisant le compte "SYSTEM" :
psexec \\Ordinateur_Client -s test.exe
- Forcez la copie d'un fichier alors qu'une version existe sur l'ordinateur distant :
psexec \\Ordinateur_Client -f test.exe
- Exécutez la commande Ipconfig sur un ordinateur distant puis affichez le résultat en local :
psexec \\Ordinateur_Client ipconfig /all
Le commutateur \\* fera que la commande spécifiée s'exécutera sur toutes les machines faisant partie d'un domaine. Les applications dont l'emplacement ou le nom contient des espaces doivent être encadrées par des guillemets. Le commutateur -d force le service à quitter une fois que le fichier exécutable a été lancé. Il est possible d'utiliser le commutateur -p afin de renseigner le mot de passe.

- Forcez la terminaison d'un processus en utilisant le compte "SYSTEM" :
Vous pouvez être dans l'impossibilité de terminer un processus pour un problème d'accès refusé. Une astuce consiste à lancer le Gestionnaire de tâches en utilisant le compte "SYSTEM". Imaginons qu'il est 19:38 suivez alors cette procédure :
1) Cliquez sur Démarrer/Exécuter puis saisissez : cmd
2) En Invite de commandes saisissez : at 19:39 /interactive taskmgr.exe
Le Gestionnaire de tâches va se lancer (au pire dans la minute qui suit)
3) Cliquez sur l'onglet Processus.
4) Terminez le processus récalcitrant.

- Suspendre l'exécution d'un processus :
Un outil vous permet de suspendre l'exécution d'un processus sur la machine locale ou distante : "PsSuspend". Cet utilitaire est compatible avec toutes les versions NT de Windows. Téléchargez un bouquet d'utilitaires nommé "PsTools" à partir de cette adresse : http://www.sysinternals.com. Une fois l'archive ZIP décompressée lancez ce simple fichier exécutable : Pssuspend.exe. La syntaxe est la suivante :
Pssuspend [-r] [\\ordinateur [-u Nom_Utilisateur] [-p Mot_De_Passe]] <Nom_Processus | ID_processus>
-u : spécifie un nom d'utilisateur afin de pouvoir se connecter sur une machine distante.
-p : spécifie un mot de passe pour le nom d'utilisateur indiqué.
-r : "réactive" le processus.
Si nous souhaitons suspendre puis autoriser à nouveau un processus dont le PID est le 3256, nous saisirons :
pssuspend 3256
pssuspend -r 3256

- Libérer un processus de la mémoire :
"Empty" fait partie du "Windows Server 2003 Resource Kit Tools". Saisissez :
empty /?
Vous devez préciser soit le PID du processus soit le nom de la tâche. Imaginons que le processus "IExplorer" qui lance Internet Explorer possède le PID 3172, vous pourrez saisir une de ces commandes :
empty 3172
empty iexplorer


Problèmes sur les processus

- J'ai un processus inactif du système qui occupe 100% des ressources du microprocesseur ou le processus Explorer utilise 100% des ressources ou le système se fige dès que je veux ouvrir un dossier :
C'est un problème classique dès que le système essaye de récupérer certaines informations contenues dans les fichiers multimédia de type DivX ou AVI. Il suffit donc de désactiver cette fonctionnalité :
1) Cliquez sur Démarrer/Exécuter puis saisissez : regedit
2) Supprimez cette clé : HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{87D62D94-71B3-4b9a-9489-5FE6850D C73E}\InProcServer32
Éventuellement ,procédez aussi à cette manipulation :
Cliquez sur Démarrer/Exécuter puis saisissez cette commande : regsvr32 -u shmedia.dll
Voici une autre solution de contournement :
Puisque c'est la présence d'un fichier vidéo endommagé qui provoque ce genre de symptômes, il vous suffit de le supprimer en redémarrant en mode sans échec.

- Mon ordinateur est devenu très lent ou, à certains moments, se fige :
Accédez au Gestionnaire de tâches afin de terminer un à un l'ensemble des processus "non critiques". "Realsched.exe" est, par exemple, le processus correspondant à un composant de RealPlayer. Le plus simple est de désinstaller cette application. Astuce communiquée par H. Cornil.

- L'Explorateur Windows monopolise 100 % des ressources disponibles :

1) Dans l'Explorateur Windows, cliquez sur Outils/Options des dossiers/Affichage.
2) Cochez la case Ouvrir les fenêtres des dossiers dans un processus différent, puis décochez Rechercher automatiquement les dossiers et imprimantes partagées.

- Le processus Csrss.exe occupe 100 % des cycles processeur :
Il suffit de procéder à une mise à jour de Messenger 5.0 directement sur le site de Microsoft.

- Le processus Spoolsv.exe monopolise les ressources processeur :
Vous pouvez également avoir ce message : "Spoolsv.exe a généré des erreurs et sera fermé par Windows. Vous devez redémarrer le programme. Un journal des erreurs est en cours. La procédure normale consiste à désinstaller puis réinstaller votre imprimante. Si cela n'est pas possible ("Sous-système d'impression indisponible") suivez cette astuce :
1) Cliquez sur Démarrer/Exécuter pusi saisissez : %windir%\system32\spool
2) Ouvrez un répertoire nommé Printers.
3) Supprimez tous les fichiers présents.
4) Redémarrez votre ordinateur puis procédez à une réinstallation complète de votre imprimante.

 

blog, bookmark, newsletter


abc-blagues - infopage - les societes - entrepreneurs de france - annufrance - flashmeat topsitefr - radioduweb
c-rigolo - woopami - rire-et-sourire - pubstv - widouf - planete-nokia - streaming-fr

© 2001-2008 Hotline-PC.org. Tous droits réservés. Ce site fait régulièrement l'objet d'un marquage IDDN.IDDN Certification
Un site du réseau : 

Contact - Plan du site - Notice légale
Blog Bookmark Newsletter