5Aug

Was ist der Service-Host-Prozess( svchost.exe) und warum laufen so viele?

Wenn Sie den Task-Manager einmal durchgeblättert haben, haben Sie sich vielleicht gefragt, warum so viele Service-Host-Prozesse laufen. Sie können sie nicht töten, und Sie haben sie sicher nicht gestartet. Also, was sind sie?

Der Service-Host-Prozess dient als Shell zum Laden von Diensten aus DLL-Dateien. Services sind in verwandten Gruppen organisiert und jede Gruppe wird in einer anderen Instanz des Service-Host-Prozesses ausgeführt. Auf diese Weise wirkt sich ein Problem in einer Instanz nicht auf andere Instanzen aus. Dieser Prozess ist ein wichtiger Teil von Windows, den Sie nicht verhindern können.

Dieser Artikel ist Teil unserer laufenden Reihe, die verschiedene Prozesse erklärt, die im Aufgaben-Manager gefunden werden, wie dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe und viele andere. Weiß nicht, was diese Dienste sind? Besser anfangen zu lesen!

Was ist der Service-Host-Prozess?

Hier ist die Antwort, laut Microsoft:

Svchost.exe ist ein generischer Host-Prozessname für Dienste, die von Dynamic-Link-Bibliotheken ausgeführt werden.

Aber das hilft uns nicht wirklich viel. Vor einiger Zeit hat Microsoft damit begonnen, einen großen Teil der Windows-Funktionalität von internen Windows-Diensten( die von EXE-Dateien stammten) auf die Verwendung von DLL-Dateien umzustellen. Aus einer Programmiersicht macht dies Code wiederverwendbar und wohl einfacher, auf dem neuesten Stand zu bleiben. Das Problem ist, dass Sie eine DLL-Datei nicht direkt von Windows auf die gleiche Weise wie eine ausführbare Datei starten können. Stattdessen wird eine Shell, die aus einer ausführbaren Datei geladen wird, zum Hosten dieser DLL-Dienste verwendet. Und so wurde der Service-Host-Prozess( svchost.exe) geboren.

Warum laufen so viele Service-Host-Prozesse?

Wenn Sie sich jemals den Abschnitt "Dienste" in der Systemsteuerung angesehen haben, haben Sie wahrscheinlich bemerkt, dass Windows viele Dienste erfordert. Wenn jeder einzelne Service unter einem Service-Host-Prozess ausgeführt wird, kann ein Fehler in einem Service möglicherweise Windows insgesamt zum Absturz bringen. Stattdessen sind sie getrennt.

-Dienste sind in logischen Gruppen organisiert, die alle etwas miteinander verwandt sind, und dann wird eine einzelne Service-Host-Instanz zum Hosten jeder Gruppe erstellt. Zum Beispiel führt ein Service-Host-Prozess die drei mit der Firewall verbundenen Dienste aus. Ein anderer Service-Host-Prozess könnte alle Dienste ausführen, die mit der Benutzeroberfläche zusammenhängen, und so weiter. Im Bild unten können Sie beispielsweise sehen, dass ein Service-Host-Prozess mehrere zugehörige Netzwerkdienste ausführt, während ein anderer Service für Remote-Prozedur-Aufrufe ausführt.

Gibt es etwas für mich mit all diesen Informationen zu tun?

Ehrlich gesagt, nicht viel. In den Tagen von Windows XP( und früheren Versionen), als PCs viel eingeschränktere Ressourcen und Betriebssysteme nicht ganz so gut abgestimmt waren, wurde oft empfohlen, Windows davon abzuhalten, unnötige Dienste auszuführen. Heutzutage empfehlen wir die Deaktivierung von Diensten nicht mehr. Moderne PCs sind meist mit Speicher und leistungsstarken Prozessoren ausgestattet. Fügen Sie das der Tatsache hinzu, dass die Art und Weise, wie Windows-Dienste in modernen Versionen gehandhabt werden( und welche Dienste ausgeführt werden) rationalisiert wurde, und die Beseitigung von Diensten, von denen Sie denken, dass Sie sie nicht wirklich brauchen, keinen großen Einfluss mehr hat.

Wenn Sie feststellen, dass eine bestimmte Instanz des Service-Hosts oder ein zugehöriger Service Probleme verursacht, wie z. B. andauernde übermäßige CPU- oder RAM-Auslastung, können Sie sich in die betreffenden Dienste einklinken. Das gibt Ihnen zumindest eine Vorstellung davon, wo Sie mit der Fehlersuche beginnen können. Es gibt einige Möglichkeiten, genau zu sehen, welche Dienste von einer bestimmten Instanz von Service Host gehostet werden. Sie können Dinge im Task-Manager überprüfen oder eine große App von Drittanbietern namens Process Explorer verwenden.

Verwandte Dienste im Task-Manager

überprüfen Wenn Sie Windows 8 oder 10 verwenden, werden Prozesse auf der Registerkarte "Prozesse" des Task-Managers mit ihren vollständigen Namen angezeigt. Wenn ein Prozess als Host für mehrere Services dient, können Sie diese Services anzeigen, indem Sie den Prozess einfach erweitern. Dies macht es sehr einfach zu identifizieren, welche Dienste zu jeder Instanz des Service-Host-Prozesses gehören.

Sie können mit der rechten Maustaste auf einen einzelnen Dienst klicken, um den Dienst zu stoppen, ihn in der Systemsteuerung "Dienste" anzuzeigen oder sogar online nach Informationen zum Dienst zu suchen.

Wenn Sie Windows 7 verwenden, sind die Dinge ein bisschen anders. Der Task-Manager von Windows 7 gruppierte Prozesse nicht auf die gleiche Weise und zeigte auch keine regulären Prozessnamen. Er zeigte nur alle Instanzen von "svchost.exe", die ausgeführt wurden. Sie mussten ein wenig erkunden, um die Dienste zu ermitteln, die mit einer bestimmten Instanz von "svchost.exe" zusammenhängen.

Klicken Sie auf der Registerkarte "Prozesse" des Task-Managers in Windows 7 mit der rechten Maustaste auf einen bestimmten Prozess "svchost.exe"Wählen Sie dann die Option "Zum Dienst gehen".

Dies bringt Sie zur Registerkarte "Dienste", wo alle Dienste ausgewählt sind, die unter diesem "svchost.exe" -Prozess ausgeführt werden.

Sie können dann den vollständigen Namen der einzelnen Dienste in der Spalte "Beschreibung" sehen, so dass Sie den Dienst deaktivieren können, wenn er nicht ausgeführt werden soll, oder beheben Sie die Ursache für die Probleme.

Verwandte Dienste mit Process Explorer

anzeigen Microsoft bietet auch ein ausgezeichnetes erweitertes Tool für die Arbeit mit Prozessen als Teil seiner Sysinternals-Aufstellung. Laden Sie einfach den Process Explorer herunter und führen Sie ihn aus - es handelt sich um eine portable Anwendung, Sie müssen sie also nicht installieren. Process Explorer bietet alle Arten von erweiterten Funktionen - und wir empfehlen Ihnen, unseren Leitfaden zum Verständnis von Process Explorer zu lesen, um mehr zu erfahren.

VERWANDTE ARTIKEL
Was ist eine "tragbare" App, und warum spielt es eine Rolle?

Prozess Explorer

Für unsere Zwecke hier jedoch gruppiert Process Explorer zugehörige Dienste unter jeder Instanz von "svchost.exe". Sie sind nach ihren Dateinamen aufgelistet, ihre vollständigen Namen werden jedoch auch in der Spalte "Beschreibung" angezeigt. Sie können auch den Mauszeiger über einen beliebigen "svchost.exe" -Prozess bewegen, um ein Popup mit allen Diensten zu sehen, die mit diesem Prozess in Verbindung stehen - auch solche, die gerade nicht ausgeführt werden.

Könnte dieser Prozess ein Virus sein?

Der Prozess selbst ist eine offizielle Windows-Komponente. Es ist zwar möglich, dass ein Virus den echten Service-Host durch eine eigene ausführbare Datei ersetzt hat, aber es ist sehr unwahrscheinlich. Wenn Sie sicher sein möchten, können Sie den zugrunde liegenden Speicherort der Datei überprüfen. Klicken Sie im Task-Manager mit der rechten Maustaste auf einen beliebigen Service-Host-Prozess und wählen Sie die Option "Speicherort für Datei öffnen".

Wenn die Datei in Ihrem Windows \ System32-Ordner gespeichert ist, können Sie ziemlich sicher sein, dass Sie nicht mit einem Virus zu tun haben.

Wenn Sie dennoch ein wenig mehr Sicherheit wünschen, können Sie immer mit Ihrem bevorzugten Virenscanner nach Viren suchen. Sicher ist sicher!