IRQL_NOT_LESS_OR_EQUAL(0x0A)の原因と直し方|GPUドライバー・XMP/EXPO・RAMを切り分ける【2026年版】
本記事にはアフィリエイト広告(Amazon・楽天市場等)のリンクが含まれています。
ゲーム中に突然ブルースクリーンで再起動する場合の診断ガイド
ゲーム中に突然画面が真っ青になり、「IRQL_NOT_LESS_OR_EQUAL」というエラーメッセージとともにPCが再起動する。一度きりならまだしも、特定のゲームをプレイするたびに繰り返し発生すると、原因が分からないままGPUドライバーの入れ直しやメモリの交換を何度も試してしまいがちです。
Microsoft公式ドキュメントによると、この停止コード(バグチェックコード0x0000000A)は、Microsoft Windows自体、またはカーネルモードドライバーが、通常より高い割り込み要求レベル(IRQL)にある状態で、無効なアドレスにあるページング可能メモリへアクセスしたことを示します。原因は通常、不良なメモリポインター、またはドライバーコードのページング可能性の問題とされ、不良なデバイスドライバー・システムサービス・BIOSのインストール後に発生しやすいとも説明されています。
この記事では仕組みの解説だけで終わらせず、名前がよく似た「DRIVER_IRQL_NOT_LESS_OR_EQUAL」(停止コード0xD1)との公式文書上の違いを整理し、この停止コードがなぜ発生するのかをIRQLの階層から掘り下げたうえで、イベントビューアーとミニダンプファイルから実際に自分の環境の原因ドライバーを特定する手順、メモリ不良やXMP・EXPOのオーバークロックを疑うべきタイミングの見分け方までを順番に案内します。
目次
定義IRQL_NOT_LESS_OR_EQUAL(0x0A)とは|DRIVER_IRQL_NOT_LESS_OR_EQUAL(0xD1)との違い
Microsoft公式ドキュメント「Bug Check 0xA IRQL_NOT_LESS_OR_EQUAL」によると、この停止コードは値0x0000000Aを持ち、「Microsoft Windows自体、またはカーネルモードドライバーが、通常より高い割り込み要求レベル(IRQL)にある状態で、無効なアドレスにあるページング可能メモリへアクセスしたこと」を示します。原因は通常、不良なポインター、またはページング可能性(本来ページアウトされうるメモリを不適切なタイミングで扱ってしまう問題)のいずれかとされています。
公式ドキュメントが示すパラメーターの意味は次の通りです。パラメーター1がアクセスできなかった仮想メモリアドレス、パラメーター2が障害発生時のIRQL、パラメーター3が障害を引き起こした操作の種類(読み取り・書き込み・実行のいずれか)を示すビットフィールド、パラメーター4が障害発生時の命令ポインタです。
画面に表示された停止コードが本当に0x0000000A(IRQL_NOT_LESS_OR_EQUAL)かどうか、まず確認してください。Microsoft公式ドキュメント「Bug Check 0xD1 DRIVER_IRQL_NOT_LESS_OR_EQUAL」は、この停止コードを「カーネルモードドライバーが、プロセスのIRQLが高すぎる状態でページング可能メモリへアクセスしようとしたこと」を示すものと説明しています。0xAの定義が「Microsoft Windows自体、またはカーネルモードドライバー」を主語にしているのに対し、0xD1は「カーネルモードドライバー」に絞り込んでいる点が、公式文書の記述上の違いです。この記事が扱うのは0x0000000A(IRQL_NOT_LESS_OR_EQUAL)です。0x000000D1(DRIVER_IRQL_NOT_LESS_OR_EQUAL)が表示されている場合、この記事で案内する診断の考え方自体は参考になりますが、公式ドキュメント上は別の停止コードとして扱われている点にご留意ください。
なぜ発生するのか|IRQLの階層と「ページング可能メモリ」の関係
Microsoft公式ドキュメント「Managing Hardware Priorities」によると、Windowsのカーネルモードコードは、優先度の低い順にPASSIVE_LEVEL、APC_LEVEL、DISPATCH_LEVEL、DIRQLという4段階のIRQL(割り込み要求レベル)のいずれかで動作します。
公式ドキュメントは、この4段階のうちAPC_LEVELより高いIRQLで動作しているルーチンは、ページング可能メモリ(ページプール)からメモリを確保したり、そこにあるデータへ安全にアクセスしたりすることができないと明記しており、続けて「IRQLがAPC_LEVELより高い状態でページフォールト(アクセスしようとしたデータがページアウトされていて、読み込み直しが必要になること)が発生すると、致命的なエラーになる」と説明しています。IRQL_NOT_LESS_OR_EQUAL(0x0A)は、まさにこの「あってはならないページフォールト」が実際に起きてしまった状態を検知して発動する停止コードです。
Microsoft公式ドキュメントに掲載されているこの停止コードのデバッグ例では、原因ドライバーとしてelnkii、つまり3ComのISAバス接続ネットワークカード「EtherLink II」用ドライバーが登場します。ISAバスは現行のPCではとうに姿を消した規格で、あくまで解説用の古い一例にすぎません。同じサイトで扱っているKMODE_EXCEPTION_NOT_HANDLED(0x1E)の原因と直し方で紹介した公式解析例が1990年代のテープドライブ用ドライバーだったのと同様、Windowsのカーネルデバッグ関連文書がこの手の古典的な解析例を使い続けていること自体、IRQL_NOT_LESS_OR_EQUALがWindowsのバグチェック文書の中でも特に古くから存在する停止コードであることを物語っています。
IRQL_NOT_LESS_OR_EQUALは、名前や症状が似ている他の停止コードと混同されがちです。発動の仕組みが異なるため、該当する場合はそれぞれの専用記事を参照してください。
特権を持たないコードから特権コードへ遷移するルーチン、つまりシステムサービスの呼び出しを実行している最中に例外が発生した場合に発動します。IRQLの高さそのものではなく、システムサービス呼び出しという条件に絞られた停止コードです。仕組みの詳細はSYSTEM_SERVICE_EXCEPTION(0x3B)の原因と直し方で解説しています。
ドライバーが担当するDPC処理が異常に長時間かかったことを検知して発動します。IRQL_NOT_LESS_OR_EQUALが不正なメモリアクセスという操作の誤りを検知するのに対し、こちらは処理時間そのものの超過を検知する仕組みです。仕組みの詳細はDPC_WATCHDOG_VIOLATION(0x133)の原因と直し方で解説しています。
カーネルモードのプログラムがエラーハンドラーで捕捉されない例外を起こした場合に広く発動するキャッチオール型の停止コードです。IRQL_NOT_LESS_OR_EQUALが「高いIRQLでのページフォールト」という特定のパターンに絞られるのに対し、こちらは例外の発生経路を問いません。仕組みの詳細はKMODE_EXCEPTION_NOT_HANDLED(0x1E)の原因と直し方で解説しています。
メモリのXMP・EXPOオーバークロックを有効にした際に報告されることが多い停止コード群です。IRQL_NOT_LESS_OR_EQUALもメモリの不安定化が関連するケースがあるとされていますが(詳しくは後述)、こちらはオーバークロックの不安定化という原因軸に特化して扱います。判別方法や電圧の目安はXMP・EXPOを有効にしたら不安定・ブルースクリーンになる原因と対処法で解説しています。
原因原因|Microsoft公式情報からわかること
Microsoft公式ドキュメントは、この停止コードの原因について次のように説明しています。「不適切なアドレスを使用するカーネルモードデバイスドライバーが原因で発生する」とし、続けて「原因は不良なメモリポインター、またはデバイスドライバーコードのページング可能性の問題のいずれかである」としています。さらにRemarks(注記)では、このバグチェックを引き起こすエラーは、通常、不良なデバイスドライバー・システムサービス・BIOSをインストールした後に発生すると述べられています。新しいバージョンのWindowsへアップグレードする際にこの停止コードに遭遇した場合は、新しいバージョンと互換性のないデバイスドライバー・システムサービス・ウイルススキャナー・バックアップツールが原因になっている可能性があるとも案内されています。
Microsoft公式ドキュメントのRemarksセクションは、原因の切り分け方として3つのパターンを案内しています。不良ハードウェアが疑わしい場合は、最近ハードウェアを追加したなら一度取り外して症状が再現するか確認し、既存のハードウェアが故障している場合は交換すること。不良なシステムサービスが疑わしい場合は、該当のサービスを無効化して症状が解消するか確認し、解消するならそのシステムサービスの提供元に更新プログラムがないか問い合わせること。アンチウイルスソフトが疑わしい場合は、一度プログラムを無効化して症状が解消するか確認し、解消するなら提供元に更新プログラムがないか問い合わせること。この3パターンは後述の対処法でもそのまま踏襲します。
とはいえ、ゲーミングPCのトラブル診断で実際によく報告されるカテゴリはあります。あくまで報告例が多い分野であり、必ずこの中に原因があるとは限らない前提で、順に見ていきます。
nvlddmkm.sys・amdkmdag.sys・igdkmd64.sysなど)、ネットワークアダプター、セキュリティソフトの常駐ドライバーなど、不適切なメモリアドレスを扱うカーネルモードドライバー全般が対象です。公式ドキュメントが原因として最初に挙げているカテゴリで、後述の診断手順で実際のドライバー名を特定するのが確実です。これらはあくまで報告例が多いカテゴリ、または経験則として語られやすいカテゴリであり、Microsoft公式が「これが原因」と断定しているわけではありません。次の診断手順で、実際に自分の環境で何が起きているかを直接確認してください。
診断診断|イベントビューアーとミニダンプで原因ドライバーを特定する
Microsoft公式ドキュメントが想定する本来の特定方法は、WinDbgというデバッガーでダンプファイルを解析する、ドライバー開発者向けの手順です。ただし一般のPCユーザーでも、次の手順で自分の環境の原因ドライバー名まで十分に特定できます。
eventvwr.mscと入力してEnterを押します。左ペインの「Windowsログ」→「システム」を開き、ソース「Microsoft-Windows-WER-SystemErrorReporting」・イベントID「1001」の記録を探してください。発生時刻がブルースクリーンの時刻と一致するイベントの詳細に、バグチェックコード(0xA)とミニダンプファイルの保存場所が記載されています。%SystemRoot%\Minidump、つまり通常はC:\Windows\Minidumpフォルダーに一覧として保存します。ブルースクリーンの日時と一致するファイルがあれば解析に使えます。C:\Windows\Minidumpフォルダーを自動でスキャンし、クラッシュ時に読み込まれていたドライバーの一覧とともに、原因と推定されるドライバーをピンク色でハイライト表示してくれます。公式サイトから入手すれば、読み取り専用でシステム設定を変更しない安全なツールです。nvlddmkm.sys・amdkmdag.sys・igdkmd64.sysなど)、セキュリティソフト(製品名やベンダー名を含むファイル名であることが多い)、ネットワークアダプターのどれに該当するかを判断し、該当するカテゴリの対処から試してください。見慣れないドライバー名が表示された場合は、そのファイル名で検索すると提供元のメーカー・ベンダーが特定できます。GPUドライバー起因のブルースクリーン全般をより幅広く診断したい場合は、症状別に整理したGPUドライバー・TDR・DXGIクラッシュを症状から探す診断チャートも参考になります。
対処法対処法|実行しやすい順に試す
原因ドライバーが特定できた場合はそのカテゴリの対処から、特定できなかった場合は上から順に試してください。
mdsched.exeと入力してEnterを押すと「Windows メモリ診断」が起動します。「今すぐ再開して問題を確認する(推奨)」を選ぶとPCが再起動し、メモリをテストします。結果はイベントビューアーの「Windowsログ」→「システム」で、ソース「MemoryDiagnostics-Results」のイベントとして記録されます。より厳密に検査したい場合は、USBブートで動作するMemTest86を使うと、完走までに数時間かかる分、より網羅的なテストパターンで確認できます。sfc /scannowを実行し、システムファイルの破損を検出・修復します。それでも解決しない場合はDISM /Online /Cleanup-Image /RestoreHealthを実行してWindowsの構成イメージ自体を修復してから、改めてsfc /scannowを実行してください。疑問点よくある質問
mdsched.exe)やMemTest86で確認してください。sfc /scannowを実行してください。システムファイルの破損を検出・修復するコマンドです。破損を修復できなかった場合や、SFC自体が正常に動作しない場合にDISM /Online /Cleanup-Image /RestoreHealthを実行してWindowsの構成イメージを修復し、改めてSFCを実行します。まとめまず停止コードを確認し、ドライバー名を特定する
IRQL_NOT_LESS_OR_EQUAL(0x0A)は、Microsoft Windows自体、またはカーネルモードドライバーが、高いIRQL(割り込み要求レベル)にある状態で、無効なアドレスにあるページング可能メモリへアクセスしたことをWindowsが検知して発動するブルースクリーンです。まず画面の停止コードが本当に0x0000000A(IRQL_NOT_LESS_OR_EQUAL)であることを確認したうえで、イベントビューアーで発生時刻を確認し、C:\Windows\MinidumpのミニダンプファイルをBlueScreenViewのような無料ツールで解析して、実際に原因となっているドライバー名を特定するところから始めてください。
原因ドライバーが特定できた場合はそのカテゴリの対処から。特定できない場合は、直近に追加したハードウェアの見直し、BIOSの更新、Windowsメモリ診断・MemTest86の実行、オーバークロック設定の見直しという順で切り分けていくのが効率的です。似た名前・似た症状の停止コードであるSYSTEM_SERVICE_EXCEPTION(0x3B)・DPC_WATCHDOG_VIOLATION(0x133)・KMODE_EXCEPTION_NOT_HANDLED(0x1E)、そしてメモリのXMP・EXPO関連の停止コードは、それぞれ専用記事で解説しています。




