Όταν ανοίγετε την καρτέλα Διεργασίες στη Διαχείριση Εργασιών των Windows 7 ή τη καρτέλα λεπτομέρειες στη Διαχείριση Εργασιών των Windows 8, θα εκπλαγείτε όταν θα δείτε πόσες διεργασίες svchost.exe τρέχουν. Σήμερα, θα δούμε γιατί τα Windows χρειάζονται τόσες πολλές διεργασίες SVCHOST και πώς να μπορείτε να προσδιορίσετε ποια διαδικασία svchost τρέχει ποιες ομάδες υπηρεσιών.
Το αρχείο svchost.exe (host service) βρίσκεται στο φάκελο C:\Windows\System32 και χρησιμοποιείται για να τρέξει διάφορες υπηρεσίες του συστήματος. Εδώ είναι μια επίσημη περιγραφή του αρχείου από τη Microsoft:
Το αρχείο Svchost.exe βρίσκεται στο φάκελο %SystemRoot%\System32. Κατά την εκκίνηση, το αρχείο Svchοst.exe ελέγχει το τμήμα υπηρεσιών του μητρώου για να δημιουργήσει μια λίστα με υπηρεσίες που πρέπει να φορτώσει. Πολλαπλές εμφανίσεις του Svchοst.exe μπορούν να εκτελεστούν ταυτόχρονα. Κάθε περίοδος λειτουργίας του Svchοst.exe μπορεί να περιέχει μια ομάδα υπηρεσιών. Ως εκ τούτου, μπορούν να τρέξουν ξεχωριστές υπηρεσίες, ανάλογα με το πώς και πού ξεκινά το Svchost.exe. Αυτή η ομαδοποίηση των υπηρεσιών επιτρέπει τον καλύτερο έλεγχο και τον ευκολότερο εντοπισμό σφαλμάτων.
Οι ομάδες του Svchost.exe αναγνωρίζονται από το ακόλουθο κλειδί μητρώου:
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost
Κάθε τιμή κάτω από αυτό το κλειδί αντιπροσωπεύει μια ξεχωριστή ομάδα Svchοst και εμφανίζεται ως ξεχωριστή διεργασία όταν προβάλλετε τις ενεργές διαδικασίες. Κάθε τιμή είναι μια τιμή REG_MULTI_SZ και περιέχει τις υπηρεσίες που εκτελούνται σε αυτήν την ομάδα Svchost. Κάθε ομάδα Svchost μπορεί να περιέχει ένα ή περισσότερα ονόματα υπηρεσιών που εξάγονται από το ακόλουθο κλειδί μητρώου, του οποίου οι παράμετροι περιέχει μια τιμή του ServiceDLL:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service
Έτσι, ως αποτέλεσμα της ομαδοποίησης των υπηρεσιών, έχουμε πολλές περιπτώσεις εκτέλεσης του Svchοst.exe.
Ας δούμε όμως πώς μπορείτε να δείτε ποιες υπηρεσίες τρέχουν σε μια συγκεκριμένη εκτέλεση του svchοst.exe.
Επιλογή πρώτη: Από τη Διαχείριση Εργασιών
Το ενσωματωμένο εργαλείο των Windows, Task Manager, είναι σε θέση να σας δείξει πρόσθετες πληροφορίες σχετικά με τις υπηρεσίες που σχετίζονται με την επιλεγμένη διαδικασία svchοst.
Ανοίξτε τον Task Manager πατώντας το Shift+Ctrl+Esc στο πληκτρολόγιο σας ή κάνοντας δεξί κλικ σε μια κενή περιοχή της γραμμής εργασιών.
Στα Windows 7 ή στα Vista, μεταβείτε στην καρτέλα Διεργασίες. Στα Windows 8, 8.1, θα πρέπει να πάτε στην καρτέλα Λεπτομέρειες.
Κάντε δεξί κλικ στην επιθυμητή διαδικασία. Ας υποθέσουμε ότι κάποιο συγκεκριμένο svchοst.exe καταναλώνει πολλή μνήμη και θέλετε να μάθετε ποια υπηρεσία το χρησιμοποιεί. Κάντε κλικ σε αυτό το svchοst.exe και επιλέξτε Μετάβαση στην υπηρεσία (ες). Η καρτέλα Υπηρεσίες θα ανοίξει αυτόματα και όλες οι υπηρεσίες που χρησιμοποιούν το συγκεκριμένο svchοst.exe θα είναι επισημασμένες.
Επιλογή δύο: Από τη Γραμμή εντολών.
Ανοίξτε ένα παράθυρο γραμμής εντολών και πληκτρολογήστε τα εξής:
tasklist /svc
Θα σας εμφανίσει μια λίστα όλες τις διαδικασίες του svchost μαζί με τις συναφείς υπηρεσίες.
Αυτή η μέθοδος είναι πολύ χρήσιμη στα Windows XP, όπου η εφαρμογή Διαχείριση εργασιών δεν έχει το χαρακτηριστικό “Πηγαίνετε στην υπηρεσία (ες).”
Τώρα ξέρετε γιατί τρέχουν τόσες πολλές διεργασίες svchost.exe στο σύστημα των Windows σας.