Amazon 数量限定タイムセール開催中

SysMain (サービスホスト) 重いときの対処法!無効化のデメリットとは?

SysMain (サービスホスト) 重いときの対処法!無効化のデメリットとは?

このページでは、Windowsのサービス「SysMain(svchost.exe)」について詳しく解説しています。

SysMainのメモリ使用率やディスク使用量が増加する原因と、その対処法もご紹介していますので、お困りの方はチェックしてみてください。

ノーノちゃん

何もしていないのにSysMainのディスクが100%のままになるよ…。
SysMainはよく暴走するので対処法を知っておくと便利ですよ。

ぶたさん

1. SysMainとは?

SysMainとは?

Windowsのプログラム

名称 SysMain
ファイル名 svchost.exe
(サービスホスト)
ファイルの種類 アプリケーション
ファイルの場所 C:\Windows\system32\svchost.exe
開発元 Microsoft

 
SysMain(svchost.exe)は、Windows Vista以降のOSに標準搭載されているプログラムです。

もともとは「SuperFetch」という名称でしたが、Windows10/11では「SysMain」という名前に変更されています。

ノーノちゃん

何のためのプログラムなの?
かんたんに言うとアプリの起動を高速化するためのプログラムです。詳しくは次の項目で解説しますね。

ぶたさん

アプリの起動を高速化する役割

SysMainはアプリやソフトを起動を高速化するプログラムです。

具体的にはユーザーがよく使っているアプリやソフトを、あらかじめメモリにキャッシュ(保存)しておくことで起動を速くするという仕組みです。

たとえばユーザーがメールアプリを頻繁に開く場合、SysMainがメールアプリのデータを事前にメモリにキャッシュします。

これによりアプリを開く際、一から起動する必要がなくなるため素早く起動することができるという仕組みです。

ノーノちゃん

よく使うものを玄関先に置いておくようなもの?
そうですね。SysMainはよく使うアプリやデータをすぐに取り出せるように準備してくれるプログラムです。

ぶたさん

2. SysMain重いときの対処法

SysMain重いときの対処法

ここでは「SysMain(svchost.exe)」が重いときの対処法をご紹介しています。

パソコン初心者の方でも、かんたんにできる方法のみをご紹介しているので、よければ試してみてくださいね。

①パソコンを再起動

SysMain重いときの対処法:パソコンを再起動
SysMain重いときの対処法:パソコンを再起動する。

SysMainが重くなる原因は、一時的にシステムに不具合が発生しているか、キャッシュが溜まっているかのいずれかのケースが多いです。

こういった場合はパソコンを再起動することで解決する可能性が高いので試してみましょう。

②Windows Updateをする

SysMain重いときの対処法:Windows Updateをする
SysMain重いときの対処法:Windows Updateをする。

過去にWindowsの更新プログラムが原因で、SysMainが重くなるというケースが報告されています。

この場合はマイクロソフトに問題がありますので、ユーザー側で対処できることはありません。

一度Windows Updateを実行し、新たな修正パッチが配信されているか確認してみましょう。

1

設定を開く

下記のショートカットキーを使ってWindowsの設定を開きます。

「Windowsロゴ」+「I」キーを同時押し
2

更新プログラムをチェック

サイドメニューから「Windows Update」を選択し、「更新プログラムのチェック」をクリックします。
Windows Updateを選択し、更新プログラムのチェックをクリック
更新プログラムがある場合は自動的にダウンロードされます。

ぶたさん

③タスクマネージャーでタスク終了

SysMain重いときの対処法:タスクマネージャーからタスク終了
SysMain重いときの対処法:タスクマネージャーからタスク終了させる。

SysMainのメモリ使用率が異常に高くなっている場合、キャッシュが溜まっている可能性があります。

この場合はタスクマネージャーを起動し「svchost.exe」のタスクを終了させることで解決するかもしれません。

やり方は次のようになります。

1

タスクマネージャーを開く

下記のショートカットキーを使ってタスクマネージャーを起動します。

「Ctrl」+「Shift」を押しながら「Esc」を押す
2

タスクの終了する

サイドバーから「ユーザー」を選択し、「svchost.exe」を右クリックして「タスクの終了」を押せば完了です。
ユーザーを選択し、svchost.exeを右クリックしてタスクの終了を選択

ノーノちゃん

「svchost.exe」が複数あるけどどれを終了させればいいの?
メモリ、CPU、ディスクのいづれかの消費量が多いものを終了させましょう。

ぶたさん

④タスクマネージャーで停止

SysMain重いときの対処法:タスクマネージャーで停止
SysMain重いときの対処法:タスクマネージャーで停止する。

SysMainのCPU、メモリ、ディスク使用率が異常に高い場合、何らかの不具合が発生している可能性があります。

この場合はタスクマネージャーからSysMainのサービスを停止することで解決すことができます。

サービスを停止する手順は次のようになります。

1

タスクマネージャーを開く

下記のショートカットキーを使ってタスクマネージャーを起動します。

「Ctrl」+「Shift」を押しながら「Esc」を押す
2

SysMainを停止する

サイドメニューから「サービス」を選択し、「SysMain」を右クリックして停止を押せば完了です。
サービスを選択し、「SysMain」を右クリックして停止を選択

⑤サービスで無効化

SysMain重いときの対処法:サービスから無効化
SysMain重いときの対処法:サービスから無効化する

タスクマネージャーからSysMainを停止しても解決しない場合、サービスの設定から無効化するしかありません。

サービスから無効化する方法は次のようになります。

1

ファイル名を指定して実行を開く

下記のショートカットキーを使って「ファイル名を指定して実行」を起動します。

「Windowsロゴ」+「R」キーを同時押し
2

サービスを開く

名前欄に「services.msc」をコピペしてOKをクリック。
「services.msc」を貼り付けてOKをクリック
3

プロパティを開く

サービスの名前欄から「SysMain」を探して右クリックし、プロパティを選択します。
「SysMain」を右クリックし、プロパティを選択
4

SysMainを無効化する

「スタートアップの種類」右側にある下矢印をクリックし、無効を選択してOKを押せばSysMainの無効化完了です。
下矢印をクリックし、無効を選択してOKを押します
SysMainを有効化したい場合は「スタートアップの種類」を自動に設定すればOKです。

ぶたさん

⑥レジストリで無効化

SysMain重いときの対処法:レジストリで無効化
SysMain重いときの対処法:レジストリで無効化する

サービスからSysMainを無効化できない場合は、レジストリから無効化するしかありません。

パソコン初心者の方には少し難しく感じるかもしれませんが、手順どおり進めるだけでOKですのでかんたんにできます。

注意
レジストリの変更を行う前は必ずバックアップを取ってください。
1

ファイル名を指定して実行を開く

下記のショートカットキーを使って「ファイル名を指定して実行」を起動します。

「Windowsロゴ」+「R」キーを同時押し
2

レジストリエディターを開く

名前欄に「regedit」と入力し、OKをクリックすればレジストリエディターが起動します。
「regedit」と入力し、OKをクリック
3

エクスポートを開く

上部メニューにある「ファイル」をクリックし、エクスポートを選択します。
ファイルをクリックし、エクスポートを選択
4

バックアップを保存

保存場所を選択し、ファイル名を入力して保存すればバックアップ完了です。
保存場所を選択し、ファイル名を入力して保存
1

ファイル名を指定して実行を開く

下記のショートカットキーを使って「ファイル名を指定して実行」を起動します。

「Windowsロゴ」+「R」キーを同時押し
2

レジストリエディターを開く

名前欄に「regedit」と入力し、OKをクリックすればレジストリエディターが起動します。
「regedit」と入力し、OKをクリック
3

フォルダを開く1

「HKEY_LOCAL_MACHINE」→「SYSTEM」→「CurrentControlSet」→「Control」の順に開く

■フォルダを開く順番

  1. 「HKEY_LOCAL_MACHINE」
  2. 「SYSTEM」
  3. 「CurrentControlSet」
  4. 「Control」
4

フォルダを開く2

「Session Manager]」→「Memory Management」→「PrefetchParameters」の順に開く

■フォルダを開く順番

  1. 「Session Manager]」
  2. 「Memory Management」
  3. 「PrefetchParameters」
5

SysMainを無効化する

「EnablePrefetcher」をダブルクリックし、値のデータを「0」にしてOKをクリックすれば完了です。
「EnablePrefetcher」をダブルクリックし、値のデータを「0」と入力してOKをクリック

⑦PowerShellで無効化

SysMain重いときの対処法:PowerShellで無効化
SysMain重いときの対処法:PowerShellで無効化する

上記でご紹介した方法で無効化ができない場合は、PowerShell(またはコマンドプロンプト)から無効化しましょう。

手順は次のようになります。

1

ターミナルを起動する

Windowsアイコンを右クリックし、「ターミナル(管理者)」を選択します。
Windowsアイコンを右クリックし、ターミナル(管理者)をクリック
2

コマンドを貼り付ける

下記のコマンドを貼り付けて「Enter」キーを押します。
コマンド
コピー 拡大
sc stop "SysMain" & sc config "SysMain" start=disabled
「sc stop "SysMain" & sc config "SysMain" start=disabled」コマンドを貼り付ける
コマンド貼り付け例
C: \User\ユーサー名> sc stop “SysMain” & sc config “SysMain” start=disabled
3

無効化を確認

「SUCCESS」と表示されていれば無効化完了です。
「SUCCESS」と表示されていれば無効化完了
SysMainを有効化したい場合は下記のコマンドを実行してください。

ぶたさん

■SysMainを有効化する方法

下記のコマンドを貼り付けて「Enter」キーを押せば、SysMainが有効化されます。

コマンド
コピー 拡大
Set-Service -Name "SysMain" -StartupType Automatic -Status Running
SysMainを有効化

3. SysMain無効化の影響について

SysMain無効化の影響やデメリットについて

「SysMainはシステムファイルなので、無効化すると不具合が起こるのでは?」と不安に感じる方もいらっしゃるかもしれません。

ここでは、SysMainを無効化した際に起こりうる影響についてくわしく解説しています。

無効化してもデメリットはない

結論から言うと、SysMainを無効化した際の影響やデメリットはほとんどありません。

なぜなら、現在販売されているパソコンの多くが起動ディスク(Cドライブ)にSSDを搭載しているからです。

SSDはHDDと比べてデータの読み書きが非常に速く、アプリやファイルの起動や動作が高速に行われます。

そのため、SSDを搭載しているパソコンではSysMainがキャッシュを作成する必要がないので、無効化してもまったく問題ありません。

むしろ無効化することでシステムの負担を軽減することができるメリットがあります。

「HDD」とは、ハード・ディスク・ドライブの略称で、磁気でデータを保存することができる大容量記憶装置のことです。

「SSD」とは、ソリッド・ステート・ドライブの略称で、メモリーチップにデータを保存することができる大容量記憶装置のことです。

主な違いは次のようになります。

HDD SSD
①正式名称 ハードディスク
ドライブ
ソリッドステート
ドライブ
②価格 安い 高い
③読み書き速度 遅い 高速
④動作音 うるさい 静か
⑤容量 多い 少ない
⑥故障リスク 低い 高い

HDDでも無効化してOK?

起動ディスク(Cドライブ)にHDDを使っている場合でも、SysMainを無効化しても問題ありません。

確かにHDDはSSDほどデータの読み書きが速くないため、無効化するとアプリの起動が若干遅くなる可能性はあります。

とはいえ、体感的にはそこまでの違いはありませんので無効化しても大丈夫かと思います。

4. よくある質問

SysMain(svchost.exe)に関するよくある質問

ここでは、SysMain(svchost.exe)に関するよくある質問をご紹介いしています。

SysMainは必要?いらない?

結論から言うとSysMainは不要です。

現在のパソコンはSSDが搭載されているので、アプリの起動やデータの読み書きが非常に速いです。

そのためSysMainのような起動を高速化するプログラムを使うメリットがまったくありません。

ディスクが100%の対処法は?

SysMainのディスク使用率が100%になる場合、システムに不具合が起きている可能性があります。

この場合はSysMainのサービスを停止する、または無効化することで改善されます。下記のいずれかの対処法をお試しください。

パラメータが間違っていますとは?

「◯◯にアクセスできません パラメータが間違っています」

上記のようなエラーメッセージは、システムがSSDやHDDにアクセスできない状態を示しています。

解決策としては、チェックディスク (chkdsk) コマンドを実行することで、ディスクのエラーを検出し修正できる可能性があります。

1

ターミナルを起動する

Windowsアイコンを右クリックし、ターミナル(管理者)を選択します。
Windowsアイコンを右クリックし、ターミナル(管理者)をクリック
2

コマンド入力

下記のコマンドを入力、またはコピペして「Enter」キーを押します。
コマンドプロンプト
コピー 拡大
chkdsk /f
「chkdsk /f」と入力し、「Enter」キーを押す
コマンド入力例
C: \User\ユーサー名> chkdsk /f
3

コマンドを予約

「y」を入力して「Enter」キーを押せば、次回の再起動時にチェックディスク (chkdsk) コマンドが実行されます。
「y」を入力して「Enter」キーを押す
外付けHDDにエラーが出ている場合、電源を入れ直したり、USBケーブルを挿し直すと解決することがあります。

ぶたさん

サービスは次のエラーで終了しましたとは?

「SysMainサービスは、次のエラーで終了しました」

このエラーに関しては原因がよく分からないです。

本家マイクロソフトのサポートフォーラムなどをすべて確認しましたが、詳しい情報は一件もありませんでした。

ただし、SysMainに関するエラーは無効化することで解決する可能性が高いです。一度無効化してみることをおすすめします。

5. まとめ

SysMain (サービスホスト) 重いときの対処法まとめ

以上がSysMain (サービスホスト)の解説になります。

SysMainはアプリの起動を高速化するためのプログラムですが、SSDが搭載されているパソコンには不要です。

また、SysMainがバックグラウンドで動作すると、ディスクやCPUの使用率が上がることがあるため、無効化しておくことをおすすめします。

まとめ
  • SysMainはWindowsのプログラム
  • アプリの起動を高速化する機能
  • SysMain重いときは無効化がおすすめ
  • SysMainを無効化してもデメリットはない