Svchost.exeの高いCPU使用率を修正する方法

SVCHOST.EXEは、 (SVCHOST.EXE)Windowsで常に実行され、完全に不可欠な不思議なプロセスの1つですが、それが何をしているのかを正確に知ることはできません。では、SVCHOST.EXEとは何ですか?各SVCHOST.EXEプロセス(SVCHOST.EXE process)内で実行されている実際のサービスとプログラムを特定することは、特にプロセスがCPUの99%または100%を消費する場合は、知っておく価値のあるタスクです。

したがって、ソリューションに飛び込む前に、このプロセスが実際に何を行うのか、および発生する可能性のある問題のいくつかを修正する方法について理解を深めましょう。まず、svchostは「ServiceHost」の略で、名前が示すとおり、(name suggest)サービス(Service Host)を「ホスト」するのに役立ちます。Windowsのサービスは、特定のジョブを実行し、ログインしていない場合でも、コンピューターの電源が入っているときは常にバックグラウンドで実行されるオペレーティングシステム(operating system)のプログラムです。

使い慣れているほとんどのプログラムは、.EXEなどのスタンドアロンの実行可能ファイルとして実行されます。ただし、ほとんどのサービスはDLL(DLLs)の形式で実装されており、それ自体では実行できません。したがって(Hence)、svchostはそれらのDLL(DLLs)をロードし、それ自体を実行します。そのため、Windowsタスクマネージャー(Windows Task Manager)を開くと、多数のsvchost.exeプロセスが実行されているのがわかります。タスクマネージャーの詳細については、(Task Manger)タスクマネージャー(Task Manager)の理解に関する私の記事をご覧ください。

svchost

現在、私のコンピューターでは8つのsvchostプロセスが実行されており、すべてがさまざまな量のメモリを消費し、さまざまなユーザー名で実行されていることに気付くでしょう。では、そのうちの1つが100%という非常に高いCPU使用率(CPU usage)で実行されているとしましょう。実際に実行されているアプリケーションを特定するには、どうすればよいでしょうか。

これを実行するには、実際には2つの方法があります。コマンドプロンプトとサービスツール(command prompt and Services tool)を使用してすべて手動で実行するか、サードパーティアプリケーション(party application)を使用して実行します。どちらかがうまくいかない場合(case one)に備えて、ここで両方について説明します。

最初にウイルスをチェックする

以下の詳細に入る前に、svchost.exeが実際にウイルスである場合があることに注意してください。これはシステムプロセス(system process)であるため、悪意のあるコーダーはsvchostという名前(name svchost)を使用して非表示のままにすることを好みます。ファイルがWindows/system32にある場合、ウイルスではない可能性が高いですが、念のためスキャンを実行することを常にお勧めします。

ウイルス対策プログラムをまだお持ちでない場合は、KasperskyまたはBitdefenderのいずれかを使用することをお勧めします。これらは、 (Bitdefender)AV-TestおよびAV-Comparativesの(AV-Comparatives)ランキングで常にトップにあるからです。これらは無料ではありませんが、ほとんどの無料のウイルス対策プログラムは、余分なジャンクソフトウェア(junk software)をバンドルしたり、ブラウザを「安全な」検索(” search)ソリューションにリダイレクトしたりします。これはまったく安全ではなく、追跡してより多くの広告を表示するだけです。

(Identify svchost.exe) コマンドプロンプト(Command Prompt)を介してsvchost.exeプロセス(Processes)を特定する(難しい方法)

1.まず、[スタート]、[ファイル名を指定して(Start)実行(Run)]の順にクリックし、 CMDと入力して、[OK ]をクリックします(OK.)Windows 8.1では、先に進み、[スタート]ボタンを右クリックして、[ファイル名を指定して(Start button)実行(Run)]を選択します。

cmdを実行します

2.コマンドウィンドウ(command window and press) に次のように入力してEnterキーを押します(Enter)

tasklist /svc /fi “imagename eq svchost.exe

名前、PID、およびサービスの説明を含む次のような出力が得られるはずです。(service description)

svchostプロセス

これで、各svchostプロセス(svchost process)が、一意のID番号(ID number)と実行を担当するサービスとともに表示されます。ただし、これらの名前は依然として非常にわかりにくい名前であり、すべて省略形の名前です。プロセスに関するより有用な情報を取得するために、Windowsのサービス(Services)ブラウザを使用できます。

3. [マイコンピュータ(My Computer)]を右クリックして、 [管理(Manage)]を選択します。表示された画面で、[コンピューターの管理]を選択し、[(Computer Management)サービスとアプリケーション( Services and Applications)]を選択します。最後に、[サービス(Services)]を選択します。

Windowsサービス

4.次に、不可解なWindowsサービス名を[(Windows service)サービス(Services)]タブで読みやすい名前と一致させてみます。ID 1436で名前がWudfSvcのプロセスを実行する場合は、リストで検索する必要があるため、これは少し時間がかかる可能性があります。サービス名の1つをダブルクリックすると、それらの不可解な名前も表示されるので、それらを一致させることができます。私の場合、Wはプロセスが「Windows」で始まり、一致するものが見つかるまでそれらを開いたことを意味すると推測しました。

Windows Driver Foundation

ご覧のとおり、Windows Driver Foundationサービス(Windows Driver Foundation service)は、実際には略してwudfsvcと呼ばれています。

(Identify svchost.exe) プロセスエクスプローラー(Process Explorer)を介してsvchost.exeプロセス(Processes)を識別します (簡単な方法)

難しすぎることがわかった場合は、はるかに簡単な方法があります。Microsoftの(Microsoft)ProcessExplorerツール(元々はSysInternals )をチェックしてください。このツールは完全に無料で、現在実行中の各プロセスの詳細情報を提供します。

ダウンロードしたら、インストールする必要がないので、 exeファイルを実行するだけです。(exe file)マウスをsvchostプロセス(svchost process)に合わせると、そのプロセスで実行されているサービスを示すポップアップが表示されます。Process Explorerの良いところは、短い名前ではなく、各プロセスのわかりやすい名前が付けられることです。

プロセスエクスプローラー

Windows8タスクマネージャー

最後に言及したいのは、Windows8 タスクマネージャー(task manager)が基本的にコマンドラインまたはProcessExplorer(command line or Process Explorer)の使用を完全に廃止しているという事実です。CTRL + SHIFT + ESCを押してタスクマネージャー(Task Manager)を開き、 [プロセス(Processes)]タブを下にスクロールして、 [ Windowsプロセス(Windows Processes)]と表示されている場所までスクロールします。

Windows8プロセス

ここでは、すべてのsvchost.exeプロセスが(svchost.exe process)サービスホスト(Service Host:)として一覧表示され、その後に実行中のアカウントの種類(ローカルシステム(System)ネットワークサービス(Network Service)など)が表示されます。また、横に番号が表示され、矢印をクリックしてアイテムを展開すると、その特定のプロセスで実行されているすべてのサービスも表示されます。

サービスのリスト

SVCHOSTの高いCPU使用率の修正

どのプロセスがすべてのCPUを消費しているのかを正確に把握したので、それを修正する方法について説明します。プロセスがWindowsUpdateやWindowsファイアウォール(Windows Update or Windows Firewall)などのWindowsプロセス(Windows process)ではないことがわかった場合は、プロセスを強制終了してプログラムをアンインストールします。

ただし、この問題が発生するほとんどの場合、Windowsプロセス(Windows process)と関係があります。この場合の最善の解決策は、MicrosoftのWebサイトからすべての最新の更新プログラムをインストールすることです。Windowsで正常に実行できない場合は、コンピュータをセーフモードで再起動して、再試行してください。

また、上記のように[サービス(Services)]タブが表示される場合は、先に進んでサービスを右クリックし、[無効(Disable)にする]を選択します。Windows Updateまたはファイアウォール(Firewall)の場合でも、心配しないでください。後で再度有効にすることができます。次に、コンピューターを再起動し、MicrosoftのWebサイトにアクセスして、手動で更新を取得します。サービスを再度有効にして、コンピューターを再起動すると、うまくいけばうまくいきます。

Windowsでサービスを無効にするには、[サービス]タブからサービス(Services)を右クリックし、 [プロパティ(Properties)]を選択します。

サービスプロパティ

次に、ダイアログボックス(dialog box)の中央にある[スタートアップの種類](Startup type)コンボボックス(combo box)から[無効(Disabled)]を選択します。

サービスを無効にする

私はこのプロセスを数回経験しましたが、それは私のために働きました。繰り返しになりますが、最初にサービスを無効にしてからコンピューターを再起動し、更新を手動でインストールしてからサービスを再度有効にしてから、コンピューターを再起動します。これが機能しない場合は、Windowsの修復インストールを実行する必要があり(Windows)ます(repair install)。Googleで修復インストールを(repair install)検索(Google search)し、手順に従います。Windows 8を実行している場合は、コンピューターを更新(refresh your computer)できます。ご不明な点がございましたら、コメントを投稿してください。楽しみ!



About the author

私は 10 年以上の経験と Android デバイスでの作業経験を持つコンピューター技術者です。また、過去 5 年間オフィスで働いており、Office 365 と MacOS の使い方を学びました。余暇には、屋外で音楽を演奏したり、映画を見たりするのを楽しんでいます。



Related posts