マシンがしばらくアイドル状態になっているときに、Windows 10 システム (ntoskrnl.exe) が CPU を使用する

マシンがしばらくアイドル状態になっているときに、Windows 10 システム (ntoskrnl.exe) が CPU を使用する

ノート PC の CPU が使用され始め (おそらく 15% の使用率?)、CPU ファンがオンになることに気づきました。これは通常、ノート PC が 5 分ほどアイドル状態になった夕方に発生します。CPU を使用しているプロセスは ですが、これだけSystemでは詳しくはわかりません。そこで、Process Explorer を実行してスレッドを監視することにしましたSystem。すると、再び CPU が使用され始め、次のようなことがわかりました。

プロセスエクスプローラーシステム

数分間のアイドル後に CPU を消費するスレッドには、開始アドレスがありましたntoskrnl.exe!RtlAvlRemoveNode+0x7ba0。したがって、これはシステムのコア部分のようです。この原因や、さらに診断する方法を知っている人はいますか? CPU ファンがこのように回転するのは好ましくないので、システムがこれを実行しないようにしたいと思います。

アイドル時にトリガーされるすべてのスケジュールされたタスクを無効にしましたが (PowerShell で見つけましたGet-ScheduledTask | Where-Object { $_.State -ne "Disabled" } | Select-Object TaskName, TaskPath, Triggers | Where-Object { $_.Triggers -match "MSFT_TaskIdleTrigger" })、それでも問題は発生します。

答え1

スレッドの開始アドレスには と記載されていますRtlAvlRemoveNode。これは関数を通じて呼び出されますntoskrnl.exe。RtlはRun-Time Libraryの略で、(おそらく、これ以上詳しく説明しなくても)ネイティブアプリケーション(たとえばautochkプログラム)を通じて呼び出されます。背景についてもっと知りたい場合は、このサイトただし、これは開始アドレスのみであり、CPU時間の使用を引き起こす関数である必要はありません。「スタック」ボタンを押して完全なコールスタックを表示するか、サードパーティのツールを使用してください。プロセススレッドビュー

基本的なオプションは 2 つあります。

  • 試行錯誤のアプローチ: たとえば、タスク スケジューラやセーフ モードなどを使用してアプリケーションを無効にし、適切なアプリケーションを無効にしようとします。(アプリケーションは、スクリーン セーバー、デフラグ、検索インデックスなどである可能性が最も高いですが、必ずしも PC がアイドル状態になることによってトリガーされるものではありません)

  • 分析的アプローチ: 問題を特定するために、たとえば問題のスレッドをさらに分析したり、「Windows パフォーマンス ツールキット」を使用して CPU 使用率の原因となっているアプリケーションをさらに特定したりして、さらに分析を実行します。

分析的なアプローチには、知識の面でかなりのオーバーヘッドがあるため、試行錯誤のアプローチをお勧めします。これは単なる推測ですが、問題を抱えているのはあなただけではない可能性が高いため、最も一般的な解決策を試してみるのは良いアプローチです。

試行錯誤で何も得られない場合は、より分析的なアプローチに切り替える必要があります。HoD がコメントで示唆したように、Windows パフォーマンス ツールキットはここでの次のステップとして適切です。さらに詳しい情報を入手したり、具体的な問題に遭遇した場合は、質問をさらに詳しく指定していただければ、私たちがサポートさせていただきます。

この動作は、マルウェア、バグ、問題のあるアップデートなどによって発生する可能性もあります。特に試行錯誤の方法を使用する場合は、その点を考慮してください。

答え2

呼び出しスタックで識別できる呼び出されているサブシステムは次のとおりです。

  • MMCSS -mmcss.sys
  • DirectX 12 -dxgmms2.sys

他の低レベルのユーティリティ関数の呼び出しも確認できますが、呼び出し元がわからないため、あまり情報が追加されません。ここで明確に示されている高レベルのサブシステムは、MMCSS と DirectX 12 です。

  • マルチメディア クラス スケジューラ サービス (MMCSS): マルチメディア アプリケーションが CPU リソースに優先的にアクセスできるようにします。
  • ダイレクトX12: ビデオおよびオーディオ ハードウェアと直接連携する Windows ソフトウェア。

したがって、CPU を消費しているのは、グラフィカル コンポーネントを持つアプリケーションであることは明らかです。この GUI コンポーネントが CPU 使用率の原因である場合もそうでない場合もありますが、ここで重要な結論は、問題のアプリケーションには GUI があるということです。

グラフィカル アプリケーションはタスク スケジューラによって起動されることはないので、この方法は適切ではありません。アイドル状態によってトリガーされるグラフィカル アプリケーションを見つける必要があります。

最も明白な候補はスクリーンセーバーです。テストとしてこれをオフにすることをお勧めします。

  • デスクトップを右クリックし、[個人設定] > [ロック画面] > [スクリーン セーバーの設定] を選択して、(None)スクリーン セーバーとして設定し、[OK] をクリックします。
  • 代わりに、コントロール パネル > 電源オプション > プラン設定の変更で、「ディスプレイの電源をオフにする」を設定して、少なくとも画面が空白になるようにすることができます。

それでも問題が解決しない場合は、アイドル時に別の動作を行う別のインストール済みグラフィカル アプリケーションを見つける必要があります。

答え3

これは、システムがしばらくアイドル状態になった後に起動される Windows 10 メンテナンス タスクです。

関連情報