web-dev-qa-db-ja.com

iSCSIネットワークドライブからWindows 10を起動するときのPAGE_FAULT_IN_NONPAGED_AREA

ここ または ここ のように、Windows 10をiSCSI経由のディスクレスブート用にセットアップしようとしています。

Windows 10インストーラーを実行してWindowsをターゲットiSCSIドライブにインストールできます。ただし、ドライブからの最初の起動時に、エラーコードPAGE_FAULT_IN_NONPAGED_AREAが表示され、ブルースクリーンが表示されます。残念ながら、クラッシュダンプは生成されません(おそらく、ブートローダーがドライブに書き込むことができるポイントに到達できなかったためでしょうか?)。

これを診断して修正するにはどうすればよいですか?

4
Kenton Varda

これは、システムページファイルがiSCSIデバイスにある場合に発生するようです。 iSCSIでのページファイルの検索はWindows 7では正常に機能していましたが、Windows 10では壊れているように見えます。残念ながら、Windowsではデフォルトでページファイルをプライマリディスクに設定するため、プライマリディスクがiSCSIの場合、ページファイルは壊れます。ボックスの。

(停止コードPAGE_FAULT_IN_NONPAGED_AREAは、Wordの「ページ」を含んでいるにもかかわらず、一般にシステムページファイルとは必ずしも関連していませんことに注意してください。これは停止コードは、NTカーネルのバージョンの「セグメンテーションフォールト」に似ています。これは、一般的な無効なメモリアクセスですが、私の特定のケースでは、偶然にページファイルに関連していることが判明しました。)

ページファイルを完全に無効にすることで問題を解決できました。 (ローカルディスクにページファイルが存在する場合は、それを見つけることもできますが、OSを起動してページファイルなしで実行すると、構成が簡単になります。)

ページファイルをオフラインで無効にする

マシンは起動できないため、UIからページファイルを無効にすることはできません。幸い、レジストリを介してページファイルを無効にするのは簡単です。そのためには、次のレジストリキーを見つけて、その値を空に設定します。

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Memory Management\PagingFiles

レジストリにControlSet002に加えてControlSet001CurrentControlSetが含まれている場合は、それらにも同じ変更を加えてください。

レジストリをオフラインで編集

しかし、起動せずにレジストリを編集するにはどうすればよいでしょうか。複数のアプローチがあります。既存の稼働中のWindowsマシンから、またはUSBまたはPXEから起動したWindowsプレインストール環境(WinPE)から、iSCSIボリュームを一時的にマウントできます。これらのオプションを説明する多くのガイドが存在します。

レジストリをオフラインで編集するには(つまり、regeditを実行しているシステム以外のレジストリを編集するには):

  1. regedit(「レジストリエディタ」)を通常どおり実行します。
  2. HKEY_LOCAL_MACHINEをクリックします。
  3. 「ファイル>ハイブのロード...」に移動します。
  4. オフラインのWindowsインストールを参照し、ファイルWindows\System32\config\SYSTEMを選択します。
  5. プロンプトが表示されたら、「OFFLINE_SYSTEM」などの任意の名前を入力します。

オフラインレジストリファイルは、選択した名前でHKEY_LOCAL_MACHINEの下のツリーに表示されます。その中のキーに加えた編集は通常自動的に保存されますが、確認のためにregeditを閉じる前にオフラインHiveを明示的にアンロードすることをお勧めします(以下のHarry Johnstonのコメントを参照)。これは非常に奇妙なUIですが、それは明らかにそれがどのように行われるかです。

5
Kenton Varda