バグ チェック 0x1A: MEMORY_MANAGEMENT
MEMORY_MANAGEMENT バグ チェックの値は、0x0000001A です。 バグ チェックは、重大なメモリ管理エラーが発生したことを示します。
重要
この記事は、プログラマー向けです。 Microsoft のユーザーがお使いのコンピューターでブルー スクリーン エラー コードが表示された場合は、「ブルー スクリーン エラーのトラブルシューティング」を参照してください。
MEMORY_MANAGEMENT パラメーター
パラメーター 1 は、正確な違反を識別します。
パラメーター 1 | エラーの原因 |
---|---|
0x31 | イメージの再配置修正テーブルまたはコード ストリームが破損しました。 このエラーは、ハードウェアのエラーである可能性があります。 |
0x3f | ページ内操作が巡回冗長検査 (CRC) エラーで失敗しました。 パラメーター 2 には、ページ ファイルのオフセットが含まれます。 パラメーター 3 には、ページの CRC 値が含まれます。 パラメーター 4 には、予想される CRC 値が含まれます。 |
0x403 | ページ テーブルとページ フレーム番号 (PFN) が同期されていません。このエラーは、特に、パラメーター 3 と 4 が 1 ビットのみ異なる場合の、ハードウェア エラーである可能性があります。 |
0x404 | システム ページを削除するプロセスで、PFN と現在のページ テーブル エントリ (PTE) ポインターの間に不整合が見つかりました。 パラメーター 2 は予想される PTE です。 パラメーター 3 は PTE の内容です。 パラメーター 4 は PFN の PTE です。 |
0x411 | PTE が破損しています。 パラメーター 2 は、PTE のアドレスです。 |
0x1010 | 呼び出し元は、現在ロックされていないページング可能なセクションのロックを解除しています。 (このセクションはロックされていないか、2 回ロック解除されています)。 |
0x1233 | ドライバーは、ロックされていない物理メモリ ページをマップしようとしました。 ページのコンテンツや属性はいつでも変更される可能性があるため、このアクションは不正です。 コードのバグにより、マッピング呼び出しが発生しました。 パラメーター2は、ドライバーがマップしようとした物理ページの PFN です。 |
0x1234 | 呼び出し元は、存在しないページング可能セクションをロックしようとしています。 |
0x1235 | 呼び出し元が、無効なマッピングで MDL を保護しようとしています。 |
0x1236 | 呼び出し元が、ロックされていない (または無効な) 物理ページを含む MDL を指定しました。 パラメーター 2 には、MDL へのポインターが含まれます。 パラメーター 3 には、無効な PFN へのポインターが含まれます。 パラメーター 4 には、無効な PFN 値が含まれます。 |
0x1240 | 呼び出し元が常駐していない仮想アドレス範囲の MDL を作成することは違法です。 パラメーター 2 は MDL です。 パラメーター 3 は PTE ポインターです。 |
0x3300 | 書き込み操作中に、参照される仮想アドレスが誤って「書き込み時コピー」としてマークされます。 パラメーター 2 は、FaultingAddress の値です。 パラメーター 3 は PTE の内容です。 パラメーター 4 は、仮想アドレス空間の種類を示します。 |
0x3451 | スワップ アウトされたカーネル スレッド スタックの PTE が破損しています。 |
0x3453 | 未処理の参照のために、終了したプロセスのすべてのページ テーブル ページを削除できるわけではありません。 このエラーは、通常、プロセス ページ テーブル構造が破損していることを示します。 |
0x3470 | 空きリストにある間にキャッシュされたカーネル スタックが破損しました。 このメモリ破損は重大な問題を示しており、呼び出し元スタックは被害者または犯人である可能性があります。 パラメーター 2 は仮想アドレスです。 パラメーター 3 は仮想アドレス cookie です。 |
0x4477 | ドライバーが、システム プロセスのユーザー空間にある未割り当てのアドレスに書き込もうとしました。 パラメーター 2 には、試行された書き込みのアドレスが含まれます。 |
0x5100 | 割り当てビットマップが破損しています。 メモリ マネージャーが、既に使用されている仮想アドレスに上書きしようとしています。 |
0x5305 | 呼び出し元が、無効なプール アドレス (パラメーター 2) を指定して解放しようとしています。 パラメーター2は、評価対象の仮想アドレスです。 パラメーター 3 はリージョン サイズです。 |
0x6001 | メモリ ストア コンポーネントのプライベート メモリ範囲が破損しているため、アクセスできなくなりました。 パラメーター 2 は、返された状態です。 パラメーター 3 は、ストアのプライベート メモリの範囲内にある仮想アドレスです。 パラメーター 4 は MDL です。 |
0x8886 0x8887 |
(Windows 7 以降)。 同じページ優先順位値を持つはずのスタンバイ・リスト上の2つのページが、同じページ優先順位値を持っていません。 異なる値は、パラメーター 4 にキャプチャされます。 |
0x8888 0x8889 |
内部のメモリ管理構造が破損しています。 |
0x888A | 内部のメモリ管理構造 (おそらく PTE または PFN) が破損しています。 |
0x9696 | PFN (パラメーター2) で、最上位プロセスに接続されなくなった破損したリンケージが検出されました。 このエラーは、PFN 構造が破損していることを示します。 |
0x15000 | 呼び出し元が間違ったアドレスを指定しているか、間違ったプロセス コンテキストでこのルーチンを呼び出しています。 このエラーのために見つからない範囲をセキュリティで保護解除できないため、どちらのアクションも違法です。 パラメーター2は、評価対象の仮想アドレスです。 |
0x15001 | 以前に保護されていたメモリをセキュリティで保護解除するプロセスでエラーが発生しました。 このエラーは、呼び出し元が 誤って間違ったプロセス コンテキストで MmUnsecureVirtualMemory を呼び出した場合に発生する場合があります。 |
0x41202 | 0 以外の PTE ページ保護を決定するプロセスで、PTE が破損していることが判明しました。 パラメーター 2 は PTE ポインターです。 パラメーター 3 は PTE の内容です。 パラメーター 4 は仮想アドレス記述子です。 |
0x41286 | 呼び出し元が無効なプール アドレスを解放しようとしています。 |
0x41785 | ワーキング セット リストが破損しています。 |
0x41287 | ワーキング セットの同期を保持しているときに、無効なページ フォールトが発生しました。 パラメーター 2 には、参照される仮想アドレスが含まれます。 |
0x41790 | ページ テーブル ページが破損しています。 64 ビット バージョンの Windows では、パラメーター 2 には、破損したページ テーブル ページの PFN のアドレスが含まれます。 32 ビット バージョンの Windows では、パラメーター 2 には、使用済み PTE の数へのポインターが含まれ、パラメーター 3 には、使用済み PTE の数が含まれます。 |
0x41792 | 破損した PTE が検出されました。 パラメーター 2 には、PTE のアドレスが含まれます。 パラメーター 3 と 4 には、PTE の低域部と高域部が含まれています。 |
0x61941 | ページング階層が破損しています。 パラメーター 2 は、障害の原因となった仮想アドレスへのポインターです。 |
0x61948 | I/O スペース領域の参照カウントをデクリメントするプロセスで、領域のアカウンティング・ノードが見つかりませんでした。 通常、このエラーは、引数の範囲がロックされていないか、既にロックが解除されていることを意味します。 パラメーター 2 は、ベース I/O フレームです。 パラメーター 3 は、リージョン内のページ数です。 パラメーター 4 は、ノードが見つからなかった特定の I/O フレームです。 |
0x61949 | IoPageFrameNode 値は、Null です。 パラメーター 2 は、PageFrameIndex です。 |
0x6194A | マップ解除中の I/O スペース物理ページの参照カウントをデクリメント中にエラーが発生しました。 現在参照されていないエントリが逆参照されています。 パラメーター 2 と 3 は、マップ解除されている呼び出し元の I/O 領域範囲を表します。 パラメーター 4 は、参照されることが想定されているが、参照されていない I/O 領域の物理ページです。 |
0x03030308 | 削除する (または切り捨てる) 範囲がローダーによって使用されています。 安全に削除できないため、システムは停止コードを発行する必要があります。 パラメーター 2 は、HighestPhysicalPage です。 |
これらのパラメーター 1 の値は、以前のバージョンの Windows で使用されていました。
パラメーター 1 | エラーの原因 |
---|---|
0x777 | 呼び出し元は、現在ロックされていないシステム キャッシュ アドレスのロックを解除しています。 (アドレスがマップされていないか、ロックが 2 回解除されています)。 |
0x778 | システムは、最後のシステム・キャッシュ・ビュー・アドレスを保持する代わりに、それを使用しています。 |
0x780 0x781 |
引数システム キャッシュ ビューをマップする PTE が破損しています。 |
0x1000 | MmGetSystemAddressForMdl* の呼び出し元が、完全にキャッシュされた物理ページを非キャッシュとしてマッピングしようとしました。 この操作により、ハードウェア変換バッファー エントリが競合するため、オペレーティング システムによって拒否されました。 呼び出し元が要求元の Memory Descriptor List (MDL) で [エラー時にバグ チェック] を指定したため、システムはバグ チェックを発行しました。 |
0x1241 | MDL の仮想アドレスは、MDL を構築するための呼び出し中に予期せず非同期にマップ解除されました。 パラメーター 2 は MDL です。 パラメーター 3 は PTE ポインターです。 |
0x5003 | ワーキング セットの空きリストが破損しています。 おそらくハードウェア エラーです。 |
0x5200 | 空きプール SLIST のページが破損しました。 このエラーは、ドライバーのメモリ解放後書き込みのバグ、または前のページからのオーバーランの結果である可能性があります。 パラメーター 2 には、空きプール ブロックのアドレスが含まれます。 パラメーター 4 には、そのアドレスにあることが予期されていた値が含まれます。 パラメーター 3 には、検出された実際の値が含まれます。 |
0x8884 0x8885 |
(Windows 7 以降)。 同じページ優先順位値を持つはずのスタンバイ・リスト上の2つのページが、同じページ優先順位値を持っていません。 異なる値は、パラメーター 4 にキャプチャされます。 |
0x41201 | 仮想アドレスを照会するプロセスで、PFN と現在の PTE ポインターの間に不整合が見つかりました。 パラメーター 2 は、対応する PTE です。 パラメーター 3 は PTE の内容です。 パラメーター 4 は仮想アドレス記述子です。 |
0x41283 | PTE でエンコードされたワーキング セット インデックスが破損しています。 |
0x41284 | PTE またはワーキング セット リストが破損しています。 |
0x41793 | ページ テーブル ページが破損しています。 パラメーター 2 には、最後に処理された PTE へのポインターが含まれます。 パラメーター 3 には、見つかった 0 以外の PTE の数が含まれます。 パラメーター 4 には、ページ テーブル内の 0 以外の PTE の予期される数が含まれています。 このメモリ パラメーターは非推奨となり、Windows 10 バージョン 1803 以降は使用できません。 |
0x61940 | PDE が予期せず無効になりました。 |
0x61946 | 作成中の MDL に欠陥があります。 このエラーは、ほとんどの場合、呼び出し元ドライバー MmProbeAndLockPages に問題があることを意味します。 通常、ドライバーは、ページング読み取りの処理を求められたときに書き込み MDL を作成しようとしています。 |
0x03030303 | ブートローダーが破損しています (この値は、Intel Itanium マシンにのみ適用されます)。 |
解決方法
!analyze デバッグ拡張機能には、バグ チェックに関する情報が表示されます。 デバッグ拡張機能の情報は、根本原因の特定に役立つ場合があります。
また、Windows メモリ診断ツールを実行して、物理メモリ モジュールに影響する問題をチェックすると便利な場合もあります。