【教科書】Windowsのブートシーケンスとは?電源ONからOS起動までの仕組みを徹底解説

PCの電源ボタンを押してからOSが立ち上がり、普段見慣れたデスクトップ画面が表示されるまでのわずかな時間。PCやサーバーの内部では、ハードウェア、ファームウェア、そしてOSが主導する緻密なバトンリレーが行われています。
インフラエンジニアの実務において、「サーバーが起動しない」「OSの起動途中でフリーズする」といったトラブル対応は避けて通れません。この起動の仕組み(ブートシーケンス)を体系的に理解していないと、ハードウェアの故障なのか、設定やディスクの不備なのか、あるいはOS内部のシステムファイルの破損なのか、原因の切り分け(アタリづけ)すら困難になります。
本記事では、新人のジュニアエンジニアを対象に、電源ONからハードウェア・ファームウェアの動き、そしてWindows特有の内部プロセスが立ち上がってログイン画面(デスクトップ)に至るまでの全プロセスを教科書スタイルで詳細に解説します。ブラックボックスになりがちな起動の裏側を、正確な技術用語とともに紐解いていきましょう。
この記事の想定読者
- PCやサーバーの起動の仕組みを基礎から学びたい若手エンジニア
- OS起動フェーズでのフリーズやトラブル対応に悩む運用保守担当者
この記事を読むことでのメリット
- 電源ONから画面表示までの裏側のバトンリレーを体系的に理解できる。
- ハード起因かOS起因か、異常発生レイヤーの論理的な切り分けができる。
- MBR・GPT、BIOS・UEFIといった起動に関わる規格の違いがわかる。
Windowsブートシーケンスの概要とは?仕組みの全体像
電源ONからWindowsのデスクトップが表示されるまでの全体的な流れを、まずは視覚的に把握しましょう。
細かなプロセスや専門用語を学ぶ前に、この全体図(ロードマップ)を頭に入れておくことで、各レイヤーの役割が格段に理解しやすくなります。実務でのトラブル対応時にも、この4つのステージのどこで問題が起きているかを意識することが基本となります。

このバトンリレーは、大きく「ハードウェア初期化」「ブート準備」「OS起動」「ユーザーログイン」の4つのステージに分かれています。それでは、それぞれのステージの裏側で何が行われているか、詳しく見ていきましょう。
ハードウェア・ファームウェア階層:電源ONからPOST(初期診断)まで
電源ボタンを押すと、マザーボードに電力が供給され、CPUが動き出します。しかし、この時点ではまだストレージ(HDDやSSD)の中にあるOSを読み込むことはできません。まず「ファームウェア」という、ハードウェアを制御する最ローレベルのプログラムが起動します。
POST(Power On Self Test)によるハードウェアの自己診断
ファームウェアが最初に行うのがPOST(Power On Self Test:パワーオン・セルフテスト)です。これは、CPU、メモリ、キーボード、ディスクドライブなどの主要なハードウェアが、電気的・物理的に正常に動作しているかを自己診断する処理です。
【実務エピソード:OSすら起動しない!メモリチェックの罠】
インフラエンジニアの現場では、このPOSTの段階で冷や汗をかくことがあります。過去に物理サーバーのメモリ増設作業を行った際、電源を入れても画面が真っ暗なまま、OSの起動処理にすら進まない事象に遭遇しました。原因は、POST内のメモリチェックでエラーが発生し、ファームウェアが処理を停止(ストップ)させていたためです。OSのログすら残らない世界でのトラブルシューティングは、ハードウェアの知識が不可欠であることを痛感させられます。
起動デバイス(ストレージ)の特定
ハードウェアの診断がすべて正常に完了すると、ファームウェアは設定された優先順位(起動順位:Boot Order)に従って、OSが保存されているストレージ(HDDやSSD、あるいはネットワーク上のPXEサーバーなど)を探し出し、その制御をストレージへと移します。
ストレージの仕組み:パーティションと管理方式の概要
ファームウェアが起動対象のストレージを特定したあと、OSを呼び出すためには、ストレージのデータがどのように区切られているかを管理する仕組みを仲介する必要があります。
ディスクの管理方式(MBR / GPT)とは
ストレージは、1つの物理的なディスクを複数の論理的な「部屋」に切り分けて管理します。この部屋のことをパーティションと呼びます。
そして、ディスクの先頭には「どの部屋(パーティション)がどこからどこまで存在するか」を記録した住所録のような情報が存在し、これをパーティションテーブルと呼びます。この管理方式には、大きく分けて以下の2種類があります。
- MBR (Master Boot Record):古くから使われているレガシーな規格。BIOS環境と組み合わされることが多い。
- GPT (GUID Partition Table):現代の標準であるモダンな規格。UEFI環境と組み合わされる。
ファームウェアは、この住所録(パーティションテーブル)を読み込むことで、次フェーズで登場する「OSを起動するためのプログラム(ブートローダー)」がディスクのどこに格納されているかを把握します。
基本パーティション・拡張パーティション・論理パーティションといった複雑なパーティションの分類や、MBRとGPTの仕様上の詳細な違いについては、以下の記事で詳しく解説しています。

ブートローダー階層:ハードウェアからOSへのバトンタッチ
ストレージの構造を把握したところで、いよいよOSを起動する主役である「ブートローダー」が登場します。
管理方式(MBR / GPT)による起動ルートの違い
ブートローダーとは、ストレージからOSの本体(カーネル)をメインメモリに読み込んで、CPUの実行権を引き継ぐための小さなプログラムです。ハードウェア(ファームウェア)とソフトウェア(OS)を繋ぐ架け橋のような存在です。
先述したストレージの管理方式(MBRかGPTか)によって、ブートローダーが呼び出されるルートが異なります。
- MBR形式の場合:ファームウェア(BIOS)はストレージ先頭のMBR領域にあるブートコードを実行し、起動可能(アクティブ)に設定されているパーティションからWindowsのブートローダーを起動します。
- GPT形式の場合:ファームウェア(UEFI)はストレージ内にある「ESP(EFIシステムパーティション)」という専用の格納領域から、Windows用のブートローダーファイルをダイレクトに呼び出します。
Windows Boot ManagerとwinloadによるOSのロード
呼び出されたWindows用のブートローダーは、まず「Windows Boot Manager(bootmgr.efi または bootmgr.exe)」として機能します。
Windows Boot Managerは、Windows固有の起動設定データベースである「BCD(Boot Configuration Data)」を読み込みます。複数のOSがインストールされている場合に画面に表示される選択画面や、セーフモードなどの起動オプションを管理しているのがこのBCDです。
起動するOSが確定すると、Windows Boot Managerは実際のOSローダープログラムである「winload.efi(または winload.exe)」を呼び出します。
この winload.efi が、ストレージからWindowsのシステム根幹である「カーネル(ntoskrnl.exe)」、ハードウェアを抽象化する「HAL(hal.dll)」、そして起動に最低限必要なシステムレジストリ(SYSTEMハイブ)やデバイスドライバー(Boot-startドライバー)をメインメモリへとロードします。
ロードが完了すると、CPUの制御権がすべてWindowsカーネルへと引き渡されます。ここでハードウェアおよびファームウェアの仕事は完全に終了し、舞台はいよいよ「Windows OS自体の内部初期化処理」へと移ります。
OS・カーネル階層:Windows内部のバトンリレー(カーネル起動からログイン画面まで)
winload.efi から実行権を引き継いだWindowsカーネル(ntoskrnl.exe)は、画面にWindowsのロゴや「くるくる(表示インジケータ)」を表示させながら、OS内部の重要なシステムプロセスを順番に起動(初期化)していきます。
ここからは、Linuxなど他のOSにはない、Windows特有の最重要プロセスがどのようにバトンを繋いでいくかを見ていきましょう。

1. すべての始まり:smss.exe(セッションマネージャー)
カーネルがシステム初期化の過程で、最初にユーザーモード(アプリケーションが動く空間)として起動するプロセスが smss.exe(Session Manager Subsystem) です。
smss.exe は、Windows内部の「環境変数」を定義したり、後述する「セッション(システム専用のセッション0と、ユーザーが操作するセッション1以降)」という実行空間を論理的に分離して作成する、非常に重要な役割を持っています。これが正常に動かないと、Windowsは環境を立ち上げることができません。
2. システムサービスの土台:wininit.exe(Windows初期化プロセス)
smss.exe は、バックグラウンドで動くシステム専用の空間(セッション0)を作成し、そこで wininit.exe を起動します。wininit.exe はさらに、インフラの実務やトラブル対応で頻繁に名前を見かける、以下の最重要プロセスを立ち上げます。
services.exe(サービスコントロールマネージャー):Windowsの「サービス」を管理するボスです。スタートアップが「自動」に設定されている各種システムサービスやサードパーティ製サービス(監視エージェント、バックアップソフト、ミドルウェアなど)を順番に起動します。lsass.exe(ローカルセキュリティ認証サブシステム):ユーザーのログイン認証やローカルセキュリティポリシーを司るプロセスです。Active Directory(AD)ドメイン参加環境における認証連携などでも、このプロセスが中核を担います。
【実務エピソード:OS起動時の”無限くるくる”とドライバーの罠】
Windowsのロゴマークの後、画面が「くるくる」と回ったまま一向にサインイン画面に進まない、というトラブルに遭遇したことはないでしょうか。これは、カーネルや
services.exeがデバイスドライバーや自動起動サービスを読み込む際、不整合や破損によって応答なし(ハングアップ)になっているケースが多いです。特に、ストレージコントローラーやネットワークカードのドライバー更新、あるいはウイルス対策ソフトのアップデート直後に発生しやすく、仕組みを知っていれば「OS自体の不具合ではなく、後から読み込まれたドライバーやサービスの異常だな」とアタリをつけることができます。
3. ユーザーを迎える準備:winlogon.exe(Windowsログオンプロセス)
システム側の準備(セッション0)と同時に、smss.exe はユーザーが実際に画面を見て操作するための空間(セッション1)を作成し、そこで winlogon.exe を起動します。
winlogon.exe は、画面表示を担当する logonui.exe を呼び出して、あの見慣れた「Windowsのサインイン(ログイン)画面」をディスプレイに表示させます。
ユーザーがパスワードや資格情報を入力すると、先ほどの lsass.exe と連携して認証を行い、正しいことが確認されれば、Windowsのデスクトップ環境のシェルである explorer.exe(エクスプローラー) を起動します。
これによって、私たちが普段目にするタスクバーやデスクトップのアイコンが画面に描画され、ブートシーケンスはすべて完了となります。
まとめ(ブートシーケンスの全体図とトラブル切り分け)
電源ボタンを押してからWindowsのデスクトップが表示されるまでの流れを、表形式で振り返りましょう。各フェーズの「主役」と「処理内容」を整理し、実務でトラブルが起きた際の切り分けのヒントをまとめました。
| フェーズ | 主役 | 主な処理内容 | 実務でのトラブル切り分けのヒント |
| 1. 電源投入 | ハードウェア | 各パーツへ通電し、CPUがファームウェアを呼び出す。 | 通電しない、ファンが回らない場合は電源ユニットやマザーボードの物理故障。 |
| 2. 初期診断 | ファームウェア (BIOS/UEFI) | ハードウェア(CPU、メモリ等)が正常に動作しているか自己診断(POST)を行う。 | 画面が真っ暗なまま進まない、ビープ音が鳴る場合はメモリやパーツの接触不良・初期不良。 |
| 3. デバイス特定 | ファームウェア (BIOS/UEFI) | 起動順位に従い、OSがインストールされているストレージ(HDD/SSD)を特定する。 | 「No bootable device」等のエラーが出る場合は、ブート順位の設定ミスやストレージの認識不良。 |
| 4. 構造確認 | ストレージ (MBR/GPT) | パーティションテーブルを読み込み、OSの格納位置(ESPなど)を確認する。 | パーティションテーブルが破損していると、ストレージは物理的に認識できても起動処理に進めない。 |
| 5. ブート準備 | Windows Boot Manager ( bootmgr.efi) | BCD(起動構成データ) を読み込み、起動対象のOSローダーを選択・起動する。 | 「BCD missing」等のエラー画面(青画面)が出る。インストールメディア等からBCDの再構成が必要。 |
| 6. カーネルロード | Windows OS Loader ( winload.efi) | Windowsカーネル(ntoskrnl.exe) や最小限のドライバーをメモリに読み込む。 | 「くるくる」が回る直前や直後にブルースクリーン(BSOD:INACCESSIBLE_BOOT_DEVICEなど)が出る場合は、高確率でストレージ用ドライバーの不整合。 |
| 7. サービス起動 | ntoskrnl.exesmss.exewininit.exe | カーネルが初期化され、smss.exe を経由して services.exe(サービス起動) や lsass.exe(認証) が動き出す。 | 「くるくる」の途中でフリーズする、または真っ黒な画面にマウスカーソルだけが表示されて進まない場合、必須システムサービスやセキュリティドライバーの初期化失敗を疑う。 |
| 8. ログオン表示 | winlogon.exeexplorer.exe | ログイン画面を表示。認証成功後、explorer.exe を起動してデスクトップを表示。 | ログイン画面が出ない、またはログイン後に「ユーザープロファイルを読み込んでいます」から進まない、無限にサインアウトされる等の場合は、プロファイル破損やユーザー環境の問題。 |
論理的な切り分けがトラブルに強いエンジニアを作る
インフラエンジニアとしてシステムに向き合う際、「画面が真っ暗なまま進まないときはハードウェアやファームウェア(POST)」、「OSのロゴ画面やエラーメッセージが出る段階ならパーティションやBCD」、「くるくるの途中でフリーズするならドライバーやサービス」といったように、どのフェーズで問題が起きているかを論理的にアタリをつけることが重要です。
トラブルに強いエンジニアを目指すための第一歩として、ぜひこのWindowsブートシーケンスの全体像を頭に入れておいてください。
Windowsのブートシーケンスが理解できたら、次はサーバー環境で圧倒的なシェアを誇るLinux(RHEL系)の仕組みにも触れてみませんか?
Windowsの『Windows Boot Manager』や『ntoskrnl.exe』が、Linuxではどのコンポーネントに対応しているのか。仕組みを比較しながら整理することで、インフラエンジニアとしてのトラブルシューティング能力(障害切り分け力)がさらに一段階アップします!







