2024 Autor: Peter John Melton | [email protected]. Zuletzt bearbeitet: 2024-01-09 10:06
Der Service Host-Prozess dient als Shell zum Laden von Services aus DLL-Dateien. Dienste 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 Vorgang ist ein wesentlicher Bestandteil von Windows, dessen Ausführung Sie nicht verhindern können.
Dieser Artikel ist Teil unserer fortlaufenden Serie, in der verschiedene Prozesse erläutert werden, die im Task-Manager zu finden sind, wie dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe und viele andere. Weiß nicht, was diese Dienste sind Beginnen Sie besser zu lesen!
Was ist also der Service-Host-Prozess?
Hier ist die Antwort laut Microsoft:
Svchost.exe is a generic host process name for services that run from dynamic-link libraries.
Das hilft uns aber nicht viel. Vor einiger Zeit hat Microsoft angefangen, einen Großteil der Windows-Funktionalität von der Verwendung interner Windows-Dienste (die aus EXE-Dateien stammten) auf die Verwendung von DLL-Dateien zu ändern. Aus der Programmiersicht macht dies den Code wiederverwendbar und es ist wahrscheinlich einfacher, auf dem neuesten Stand zu bleiben. Das Problem ist, dass Sie eine DLL-Datei nicht auf dieselbe Weise direkt von Windows starten können wie eine ausführbare Datei. Stattdessen wird eine Shell, die aus einer ausführbaren Datei geladen wird, zum Hosten dieser DLL-Dienste verwendet. Und so entstand der Service Host-Prozess (svchost.exe).
Warum laufen so viele Service-Host-Prozesse?
Wenn Sie sich schon einmal den Abschnitt Dienste in der Systemsteuerung angesehen haben, ist Ihnen wahrscheinlich aufgefallen, dass Windows viele Dienste erfordert. Wenn jeder einzelne Dienst unter einem einzigen Service-Host-Prozess ausgeführt wurde, kann ein Fehler in einem Dienst möglicherweise Windows vollständig zum Absturz bringen. Sie werden stattdessen getrennt.
Dienste sind in logischen Gruppen organisiert, die alle etwas miteinander in Beziehung stehen. Dann wird eine einzige Service Host-Instanz erstellt, um jede Gruppe zu hosten. Beispielsweise führt ein Service-Host-Prozess die drei Services für die Firewall aus. Ein anderer Service-Host-Prozess führt möglicherweise alle mit der Benutzeroberfläche verbundenen Dienste usw. aus. In der Abbildung unten sehen Sie beispielsweise, dass ein Service Host-Prozess mehrere verwandte Netzwerkdienste ausführt, während ein anderer Dienst Dienste ausführt, die sich auf Remoteprozeduraufrufe beziehen.
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), in denen PCs über weitaus begrenzte Ressourcen verfügten und die Betriebssysteme nicht ganz so fein abgestimmt waren, wurde oft empfohlen, Windows von der Ausführung unnötiger Dienste abzuhalten. Heutzutage empfehlen wir keine Dienste mehr zu deaktivieren. Moderne PCs sind in der Regel mit Speicher und leistungsstarken Prozessoren ausgestattet. Fügen Sie dies der Tatsache hinzu, dass die Art und Weise, wie Windows-Dienste in modernen Versionen gehandhabt werden (und welche Dienste ausgeführt werden), vereinfacht wurde, und dass der Verzicht auf Dienste, von denen Sie glauben, dass Sie sie nicht benötigen, wirklich keine großen Auswirkungen mehr hat.
Wenn Sie jedoch feststellen, dass eine bestimmte Instanz von Service Host - oder ein zugehöriger Service - Probleme verursacht, z. B. eine andauernde übermäßige CPU- oder RAM-Nutzung, können Sie die betreffenden Services einchecken. Dies könnte Ihnen zumindest eine Vorstellung davon geben, wo Sie mit der Problembehandlung beginnen sollen. Es gibt mehrere Möglichkeiten, genau zu ermitteln, welche Services von einer bestimmten Instanz von Service Host gehostet werden. Sie können im Task-Manager nachforschen oder eine großartige Drittanbieter-App namens Process Explorer verwenden.
Überprüfen Sie die zugehörigen Dienste im Task-Manager
Wenn Sie Windows 8 oder 10 verwenden, werden Prozesse auf der Registerkarte "Prozesse" des Task-Managers mit ihrem vollen Namen angezeigt. Wenn ein Prozess als Host für mehrere Dienste dient, können Sie diese Dienste anzeigen, indem Sie den Prozess einfach erweitern. Dies macht es sehr einfach zu erkennen, welche Services zu jeder Instanz des Service Host-Prozesses gehören.
Klicken Sie auf der Registerkarte "Prozesse" des Task-Managers in Windows 7 mit der rechten Maustaste auf einen bestimmten Prozess "svchost.exe", und wählen Sie dann die Option "Gehe zu Dienst" aus.
Überprüfen Sie die zugehörigen Dienste mit Process Explorer
Microsoft bietet auch ein hervorragendes fortschrittliches Werkzeug für die Arbeit mit Prozessen als Teil seiner Sysinternals-Produktreihe. Laden Sie Process Explorer einfach herunter und führen Sie ihn aus. Es handelt sich um eine portable App, sodass Sie sie nicht installieren müssen.Process Explorer bietet alle Arten von erweiterten Funktionen - und wir empfehlen Ihnen dringend, unser Handbuch zum Verständnis von Process Explorer zu lesen, um mehr zu erfahren.
Für unsere Zwecke hier gruppiert Process Explorer jedoch verwandte Dienste unter jeder Instanz von "svchost.exe". Sie werden nach ihren Dateinamen aufgeführt, aber ihre vollständigen Namen werden auch in der Spalte "Beschreibung" angezeigt. Sie können den Mauszeiger auch über einen der "svchost.exe" -Prozesse bewegen, um ein Popup mit allen mit diesem Prozess verbundenen Diensten anzuzeigen - auch mit den derzeit laufenden Diensten.
Könnte dieser Prozess ein Virus sein?
Der Prozess selbst ist eine offizielle Windows-Komponente. Es ist zwar sehr unwahrscheinlich, dass ein Virus den echten Service Host durch eine eigene ausführbare Datei ersetzt hat. Wenn Sie sicher gehen möchten, können Sie den zugrunde liegenden Dateispeicherort des Prozesses auschecken. Klicken Sie im Task-Manager mit der rechten Maustaste auf einen beliebigen Service Host-Prozess und wählen Sie die Option "Dateispeicherort öffnen".
Empfohlen:
Was ist der Client Server-Laufzeitprozess (csrss.exe) und warum wird er auf meinem PC ausgeführt?
Wenn Sie einen Windows-PC haben, öffnen Sie Ihren Task-Manager. Auf Ihrem PC werden auf jeden Fall mindestens ein Client Server Runtime-Prozess (csrss.exe) ausgeführt. Dieser Vorgang ist ein wesentlicher Bestandteil von Windows.
Was ist "Antimalware Service Executable" und warum wird es auf meinem PC ausgeführt?
Windows 10 enthält Windows Defender, das integrierte Antivirus von Microsoft. Der Prozess "Antimalware Service Executable" ist der Hintergrundprozess von Windows Defender. Dieses Programm wird auch als MsMpEng.exe bezeichnet und ist Teil des Windows-Betriebssystems.
Was sind wmpnscfg.exe und wmpnetwk.exe und warum werden sie ausgeführt?
Sie haben also den Task-Manager durchgeprüft, um herauszufinden, warum so viele Dienste ausgeführt werden, wenn Sie feststellen, dass zwei Elemente für Windows Media Player in der Liste enthalten sind. Sie verwenden jedoch nicht einmal Media Player. Was ist damit?
Der Svchost-Viewer zeigt genau, was jede svchost.exe-Instanz tut
Einer der populärsten Artikel auf dieser Website im letzten Jahr war die "Must-Read" -Funktion, in der svchost.exe erläutert wird und warum es ausgeführt wird. Jetzt können Sie noch einfacher feststellen, was hinter all dem vor sich geht diese svchost-Prozesse im Task-Manager.
Warum kann der Windows-Datei-Explorer nicht als Administrator ausgeführt werden?
Wenn sich ein Benutzer anmeldet, wird Windows File Explorer nicht im erhöhten Modus als Administrator ausgeführt. Warum? Es wird bereits im Standardbenutzerkontext gestartet. Weiterlesen.