ボリュームブートコードとは何ですか&ボリュームブートコードエラーを修正するのに役立ちます
ボリュームブートコードとディスクパラメータブロックと、 ボリュームブートレコード/セクタを構成する2つの主要部分。 ボリュームブートコードは、 マスタブートコードによって呼び出され、ブートマネージャを起動するために使用され、 オペレーティングシステムの実際のロードが開始されます 。
ボリュームブートコードは、ボリュームブートレコードが存在するすべてのパーティション(すべてのフォーマット済みパーティション)に存在します。 ただし、アクティブに設定されているプライマリパーティションのマスターブートコードによってのみ呼び出されます。 それ以外の場合、非アクティブなパーティションの場合、ボリュームブートコードは未使用のままです。
ボリュームブートコードは、その特定のパーティション上のオペレーティングシステムに固有です。 たとえば、 Windows 10のボリュームブートコードは、Linuxのフレーバーや、 Windows XPやWindows 7のような別のバージョンのWindowsの場合とは、機能が異なる場合があります。
注:ボリュームブートコードは、略語VBCによって時々参照されます。
ボリュームブートコードの機能
マスターブートレコードは、 BIOSによって設定されたブートシーケンス/オーダーで起動 可能なデバイスを検索します 。
ヒント:デバイスのブートコードがチェックされる順序を変更するのに役立つ必要がある場合は、BIOSのブート順序を変更する方法を参照してください。
ハードドライブのような関連するデバイスが見つかると、ボリュームブートコードは、オペレーティングシステムを起動する適切なファイルをロードする役割を担います。 Windows 10、 Windows 8 、Windows 7、およびWindows Vistaの場合、実際にオペレーティングシステムをロードするのはWindowsブートマネージャー(BOOTMGR)です。
Windows XPのような古いバージョンのWindowsでは、ボリュームブートコードがオペレーティングシステムの起動に使用するのはNTローダ(NTLDR)です。
どちらの場合も、ボリュームブートコードはブートプロセスを先に移動するための正しいデータを見つけます 。 OSがハードドライブからロードされる一般的なプロセスで、ボリュームブートコードが使用されるときは、ここで確認できます。
- ハードウェア機能をチェックするためにPOSTが実行されます。
- BIOSは、ハードドライブの最初のセクタにあるマスタブートレコードからコードをロードして実行します。
- マスターブートコードは、 マスターパーティションテーブルを参照して、そのハードドライブ上のブート可能なパーティションを探します。
- プライマリのアクティブパーティションをブートしようとしました。
- そのパーティションのボリュームブートセクタは、そのコードとディスクパラメータブロックを使用できるようにメモリにロードされます 。
- そのブート・セクタ内のボリューム・ブート・コードには、ブート・プロセスの残りの部分が制御され、 ファイル・システム構造が正常に動作することが保証されます 。
- ボリュームブートコードがファイルシステムを検証すると、BOOTMGRまたはNTLDRが実行されます。
- 上記のように、BOOTMGRまたはNTLDRはメモリにロードされ、適切なOSファイルが実行され、Windowsが正常に起動できるように制御がそれらに転送されます。
ボリュームブートコードエラー
上記のように、オペレーティングシステムが最終的にロードされるプロセス全体を構成する多くのコンポーネントがあります。 つまり、エラーがスローされる可能性があるインスタンスが多数存在するため、特定のエラーメッセージを引き起こす可能性があるさまざまな問題が存在します。
ボリュームのブートコードが壊れていると、通常は次のようなhal.dllエラーが発生します。
- " \ Windows \ System32 \ hal.dllが見つかりません "または
- " C:\ Windows \ system32 \ hal.dll。 以下のファイルがないか破損しているため、Windowsを起動できません でした。上記のファイルのコピーを再インストールしてください。
これらの種類のボリュームブートコードエラーは、Windowsで利用可能な多くの コマンドプロンプトコマンドの 1つであるbootsect コマンドで修正できます。 BOOTMGRを使用してボリュームブートコードをBOOTMGRに更新する方法を参照してください 。
上記の手順4で、アクティブなパーティションを検出しようとして失敗すると、「 No boot device 」のようなエラーが表示されることがあります。 この時点で、ボリュームブートコードが原因ではないというエラーが発生していることは明らかです。
そのハードドライブに適切にフォーマットされたパーティションがないか、またはBIOSが間違ったデバイスを探している可能性があります。その場合、ブート順序をハードドライブのような正しいデバイスに変更することができます(ディスクまたは外部ハードドライブなど)。