PC

Diagnostic Policy Serviceが暴走?重いときの停止、削除の方法について解説

Windows 10のPCが重くなったときにタスクマネージャーを確認すると、「Service Host: Diagnostic Policy Service」プロセスのCPU使用率が異常に高くなっています。

Windows 10のパソコンでDiagnosticPolicyServiceが重くなって、動作が遅くなったり、アプリケーションが止まったりしたことはありませんか?この記事では、DiagnosticPolicyServiceが重くなったときに停止する方法をご紹介します。

Diagnostic Policy Service」とは何なのか、停止や無効化できるのか、気になっている方も多いのではないでしょうか。

本記事では、Windows 10の「Diagnostic Policy Service」の概要や、プロセスが重いときの対処法、無効化/有効化の方法について詳しくご紹介します。

Diagnostic Policy Serviceについて


Diagnostic Policy Serviceは、システム上のWindowsコンポーネントの問題を自動的に検出し、トラブルシューティングを行うWindowsの標準サービスです。

Windowsコンポーネントの問題が検出されると、自動的に修正措置を取るか、問題の診断情報をログに保存してユーザーに通知します。

このサービスは、Windowsが起動すると同時に、サービスホスト(svchost.exe)上のプロセスとして自動的に実行されます。

診断ポリシーサービスを無効にすると、問題が自動的に修復されず、診断情報を受け取ることもできません。基本的には、このサービスを有効にしておくことをお勧めしますが、無効にしてもWindowsの動作に支障はありません。

重いときの対策・対応


Windows の動作が遅いときにタスクマネージャを確認すると、Diagnostic Policy Service プロセスの CPU 負荷が異常に高くなっていることがあります。

通常、CPU 負荷はしばらくすると落ち着きます。しかし、プロセスの負荷が高い状態が続く場合は、以下の解決策をお試しください。

解決策 1:Diagnostic Policy Service を終了する


Diagnostic Policy Serviceプロセスに一時的な問題が発生して、CPU使用率が高くなっている可能性があります。

したがって、まずタスクマネージャで Diagnostic Policy Service プロセスを終了します。プロセスを終了させるには、以下の手順に従います。

Windowsマーク」を右クリックし、「タスクマネージャ」を選択します。
タスクマネージャーが起動したら、「プロセス」タブが開いていることを確認します。
簡易的に表示する場合は、左下の「詳細」をクリックします。
Diagnostic Policy Service」を右クリックし、「End Task」を選択します。
確認メッセージが表示されます。保存されていないデータをすべて破棄してシャットダウンする」にチェックを入れ、「シャットダウン」をクリックします。
これで Diagnostic Policy Service のプロセスが強制終了します。

Diagnostic Policy Service のプロセスが終了すると、数秒後に自動的に再起動します。タスクマネージャで CPU 使用率が低下したことを確認します。

プロセスの再起動後に再び CPU 使用率が高くなった場合は、以下の回避策をお試しください。

回避策 2: Diagnostic Policy Service サービスを停止します。


Diagnostic Policy Service プロセスを強制終了しても問題が解決しない場合は、サービスを停止してみてください。

Diagnostic Policy Service サービスを停止するには、以下の手順に従います。

Windows マーク」を右クリックし、「名前を付けて実行」を選択します。
「services.msc」と入力し、「OK」をクリックします。
サービス」ウィンドウが開いたら、サービスの一覧から「Diagnostic Policy Service」を右クリックして「停止」を選択します。
サービスを停止した後、CPU使用率が低下していることを確認してください。

PCを再起動しても再びプロセス負荷が高くなる場合は、以下の解決策をお試しください。

解決策3:SRUDB.datを削除する


プロセスのCPU使用率が高いのは、Diagnostic Policy Serviceの関連ファイルに問題があるためと考えられます。

そのため、関連ファイル「SRUDB.dat」を削除することで問題が解決する場合があります。関連ファイルを削除するには、以下の手順で行います。

Windowsのマークを右クリックして「名前を付けて実行」を開きます。
“%WinDir%%System32\sru “と入力し、”OK “をクリックします。
許可ダイアログボックスが表示されます。
「SRUDB.dat」を右クリックし、「削除」を選択する。
削除が拒否された場合は、「操作2:Diagnostic Policy Serviceの停止」の手順でサービスを停止してから、ファイルを削除してください。
Diagnostic Policy Service関連のファイルが削除できたら、サービスまたはPCを再起動し、プロセス負荷が解消されたかどうかを確認してください。

無効・有効のやり方


Diagnostic Policy Serviceは、サービス自体の設定を変更することで無効/有効にすることができます。

したがって、Diagnostic Policy ServiceのCPU負荷問題が解決しない場合は、無効化することをご検討ください。なお、一度無効にしても、再度有効にすることは容易です。

Diagnostic Policy Serviceの有効化/無効化は、以下のいずれかの方法で行ってください。

方法1:サービスの設定を変更する


Diagnostic Policy Serviceは、「サービス」ウィンドウから無効/有効にすることができます。

サービス」画面でサービスの設定を変更するには、以下の手順で行います。

Windowsマーク」を右クリックし、「名前を付けて実行」を選択します。
「services.msc」と入力し、「OK」をクリックします。
サービス」ウィンドウが開いたら、サービス一覧の中の「診断ポリシーサービス」を右クリックし、「プロパティ」を選択します。
スタートアップの種類」の選択ボックスをクリックし、「無効」を選択します。
サービスを有効にするには「自動」を選択します。

OK “をクリックすると、設定が保存されます。
PCを再起動すると、設定が反映されます。
診断ポリシーサービスの無効化/有効化の設定は、上記の手順で変更できます。

方法2:システム構成から有効/無効を設定する


Diagnostic Policy Serviceの有効/無効の設定は、システム構成から切り替えることもできます。具体的な手順は以下のとおりです。

Windows + R を押して「ファイル名を指定して実行」を開きます。
msconfig」と入力してEnterキーを押し、「システム構成」を起動します。
サービス」タブをクリックする。
サービスの一覧で、「診断ポリシーサービス」のチェックを外して無効にします。
サービスを有効にしたい場合は、チェックを入れます。
OK」をクリックします。
再起動を促すメッセージが表示された場合は、PCを再起動してください。
PC を再起動すると、Diagnostic Policy Service の設定が有効になります。

方法3:レジストリエディタで設定を変更する
レジストリエディタを編集して、Diagnostic Policy Serviceの有効/無効の設定を変更することもできます。

注意:レジストリを変更すると、Windows の動作に問題が生じる可能性があります。編集する前にレジストリをバックアップすることをお勧めします。
レジストリエディターで設定を変更するには、以下の手順で行います。

Windowsマーク」を右クリックし、「名前を付けて実行」を選択する。
regedit」と入力し、「OK」をクリックします。
レジストリエディターが起動したら、左ペインのツリーを展開して、以下のレジストリキーにアクセスします。
HKEY_LOCAL_MACHINE_SYSTEM\CurrentControlSet\Services\DPS
DPS」キーを選択した状態で、右ペインの「Start」の値をダブルクリックします。
無効にする場合は、値のデータを「4」に変更して「OK」をクリックします。
サービスを有効にしたい場合は、値を「2」に変更します。
PCを再起動すると、レジストリの設定が反映されます。
PCを再起動した後、診断ポリシーサービスの設定が適用されていることを確認してください。

高速化の方法


svchost.exeサービスには、Windowsが重くなる原因となる機能がたくさんありますが、タスクマネージャに表示されるほどDiagnostic Policy Serviceが重くなっているわけではないようです。

診断ポリシーサービスは、Windowsに問題が発生したときに時々見られる診断機能で、しばらく待つと「問題を解決しています」というメッセージとともに結果が返ってきます。

Windowsを動かすのに必要な機能ではありませんし、診断機能で満足のいく回答や問題が解決したことはほとんどありませんので、診断ポリシーサービスは必要になるまで使わない方が無難だと思われます。

まとめ


今回は、謎のプログラム「Diagnostic Policy Service」について様々な情報をまとめてみました。

必ず必要になるプログラムではありませんが、診断機能自体はよく使われる機能です。

今回ご紹介した情報を参考に、ご自身の使い方に合わせて設定を変えてみてください。