Windowsが起動するまで詳しく解説

がいの部屋

Windowsが電源投入から起動するまでのプロセスは、ユーザーからは一瞬で完了するように見えますが、内部では非常に多くのステップが連携して動作しています。ここでは、その詳細を段階的に解説します。

1. 電源投入とファームウェアの起動 (BIOS/UEFI)

  • 電源投入 (Power On): コンピューターの電源ボタンを押すと、マザーボード上の電源回路がアクティブになり、各コンポーネントに電力が供給されます。
  • POST (Power-On Self Test): まず、マザーボード上のファームウェア(BIOSまたはUEFI)が起動します。これは、ハードウェアの基本的なチェックを行う「POST」と呼ばれるプロセスを開始します。
    • CPU、メモリ、キーボード、マウス、グラフィックカード、ストレージデバイスなど、主要なハードウェアが正常に動作するかを確認します。
    • 問題が検出された場合、ビープ音や画面上のエラーメッセージでユーザーに通知します。
  • ブートデバイスの特定: POSTが正常に完了すると、BIOS/UEFIは設定されたブート順序に従って、OSが格納されているストレージデバイス(HDD, SSDなど)を探します。

2. ブートローダーの読み込みと起動 (Windows Boot Manager)

  • MBR (Master Boot Record) または GPT (GUID Partition Table) の読み込み:
    • 従来のBIOSの場合: 見つかったストレージデバイスの先頭にある「MBR」(Master Boot Record)と呼ばれる領域を読み込みます。MBRには、OSのブートローダーの場所を示す情報が含まれています。
    • UEFI (Unified Extensible Firmware Interface) の場合: UEFIは、MBRに代わる新しいファームウェアです。UEFIシステムでは、「EFIシステムパーティション (ESP)」と呼ばれる領域にブートローダーが格納されています。UEFIファームウェアはESP内のブートローダーを直接読み込みます。
  • Windows Boot Manager (bootmgr.efi または BOOTMGR): Windowsの場合、このブートローダーは「Windows Boot Manager」と呼ばれます。
    • UEFIシステムでは bootmgfw.efi、従来のBIOSシステムでは BOOTMGR という名前のファイルがこれに相当します。
    • Windows Boot Managerは、次に起動するOSに関する情報が格納されている「BCD (Boot Configuration Data)」というデータストアを読み込みます。

3. BCD (Boot Configuration Data) とOSの選択

  • BCDの解析: BCDには、インストールされているWindowsのバージョン、起動オプション(セーフモードなど)、リカバリ環境へのパスなど、起動に関する重要な情報が格納されています。
  • OSの選択(マルチブート環境の場合): もし複数のOSがインストールされている場合(例: WindowsとLinux)、Windows Boot Managerは、BCDに基づいてOSの選択メニューを表示し、ユーザーにどのOSを起動するかを尋ねます。単一のOSの場合、このステップはスキップされ、自動的にWindowsが選択されます。

4. Windowsカーネルの読み込み

  • WinLoad (Winload.efi または winload.exe): Windows Boot Managerは、BCDで指定されたWindowsのカーネル(ntoskrnl.exe)をメモリにロードするために、「WinLoad」と呼ばれるプログラムを実行します。
    • UEFIシステムでは Winload.efi、従来のBIOSシステムでは winload.exe がこれに該当します。
  • ハードウェア抽象化レイヤー (HAL) のロード: WinLoadは、Windowsカーネルとともに、ハードウェアとOSの間の仲介役となる「HAL (Hardware Abstraction Layer)」をロードします。これにより、OSが様々なハードウェアと連携できるようになります。

5. レジストリとドライバーの読み込み

  • 初期化とドライバの読み込み: Windowsカーネルがロードされると、システムは初期化プロセスを開始します。
    • まず、重要なシステムレジストリハイブ(SYSTEMハイブなど)が読み込まれます。
    • その後、最低限の起動に必要なデバイスドライバー(ストレージコントローラー、グラフィックドライバーなど)が読み込まれ、それぞれのハードウェアが認識され、利用可能な状態になります。

6. システムサービスの起動とユーザーインターフェースの表示

  • サービスとプロセスの起動: 必須のドライバーが読み込まれた後、Windowsは必要なシステムサービス(ネットワークサービス、セキュリティサービスなど)と、バックグラウンドで動作するプロセスを起動します。
  • ログオン画面の表示: 最後に、ユーザーがログインするためのインターフェース(ログオン画面)が表示されます。ここまで来ると、ユーザーはIDとパスワードを入力してWindowsセッションを開始することができます。
  • デスクトップの表示: ログインが成功すると、ユーザープロファイルが読み込まれ、デスクトップ環境が表示され、アプリケーションの使用が可能になります。

まとめ

Windowsの起動は、BIOS/UEFIによるハードウェアの初期化から始まり、ブートローダー、BCD、Windowsカーネル、ドライバー、そして各種サービスの順に、段階的にシステムが立ち上がっていく複雑なプロセスです。ユーザーが「よくわからない状況でOSが起動してしまう」と感じるのは、これらのステップが非常に高速かつ自動的に進行するためです。各ステップにはそれぞれ重要な役割があり、どれか一つでも問題が発生すると、Windowsは正常に起動できなくなります。

Copied title and URL