バグ チェック 0x4D: NO_PAGES_AVAILABLE

NO_PAGES_AVAILABLE バグ チェックには、0x0000004D の値があります。 これは、操作を続行するための空きページがないことを示します。

重要

この記事は、プログラマー向けです。 コンピューターを使用中に、ブルー スクリーン エラーが表示された場合は、「ブルー スクリーン エラーのトラブルシューティング」を参照してください。

NO_PAGES_AVAILABLE パラメーター

パラメーター 説明
1 ダーティ ページの合計数
2 ページ ファイル宛てのダーティ ページの数
3 バグ チェックが発生した時点で使用可能な非ページ プールのサイズ
4 直近で変更された書き込みエラーの状態。

原因

一般的なメモリ統計を表示するには、!vm 3 拡張を使用します。

このバグ チェックは、次のいずれかの理由で発生することがあります。

  • ドライバーがブロックされており、変更またはマップされたページ ライターをデッドロックしています。 たとえば、ミューテックス デッドロックや、ファイル システム ドライバーまたはフィルター ドライバーでページングされたメモリへのアクセスがあります。 これは、ドライバーのバグを示します。

    パラメーター 1 またはパラメーター 2 が大きい場合、この可能性があります。 !vm 3 を使用します。

  • ストレージ ドライバーが要求を処理していません。 その例として、一時中断されたキューと応答しないドライブがあります。 これは、ドライバーのバグを示します。

    パラメーター 1 またはパラメーター 2 が大きい場合、この可能性があります。 !vm 8!process 0 7 の順に使用します。

  • 優先度の高いリアルタイム スレッドが、バランス セット マネージャーがワーキング セットからページをトリミングするのを妨げ、変更されたページ ライターがページを書き出すのを妨げています。これは、このスレッドを作成したコンポーネントのバグを示します。

    この状況は分析が困難です。 !ready の使用を試行します。 !process 0 7 を試行して、すべてのスレッドを一覧し、カーネル時間が過剰に蓄積されているかどうかを確認し、現在の優先順位を確認してください。 このようなプロセスにより、メモリ管理スレッドがページを使用できないようにブロックされている可能性があります。

  • 変更されたページを書き出すためにストレージ スタックで使用できるプールが不足しています。 これは、ドライバーのバグを示します。

    パラメーター 3 が小さい場合、この可能性があります。 !vm!poolused 2 を使用します。

問題が見つからない場合は、最初からカーネル デバッガーをアタッチして起動し、状況を監視してみてください。