
もっち
大手SIerに18年勤務。オンプレ・クラウド計200台規模の大規模インフラ(10システム)を統括する現役のサービスマネージャーです。
システム運用・インフラ技術、マインドセット、キャリア戦略など、現場で役立つ情報を若手エンジニアへ向けて発信中。


もっち
大手SIerに18年勤務。オンプレ・クラウド計200台規模の大規模インフラ(10システム)を統括する現役のサービスマネージャーです。
システム運用・インフラ技術、マインドセット、キャリア戦略など、現場で役立つ情報を若手エンジニアへ向けて発信中。
PCの電源ボタンを押してからOSが立ち上がるまでのわずかな時間。PC内部では、ハードウェアやファームウェアが主導する緻密なバトンリレーが行われています。
インフラエンジニアの実務において、「サーバーが起動しない」といったトラブル対応は避けて通れません。この起動の仕組み(ブートシーケンス)を体系的に理解していないと、ハードウェアの故障なのか、設定やディスクの不備なのか、原因の切り分け(アタリづけ)すら困難になります。
本記事では、新人のジュニアエンジニアを対象に、電源ONから「OS起動の直前」までのプロセスを教科書スタイルで詳細に解説します。ブラックボックスになりがちな起動の裏側を、正確な技術用語とともに紐解いていきましょう。
電源ボタンを押すと、マザーボードに電力が供給され、CPUが動き出します。しかし、この時点ではまだストレージ(HDDやSSD)の中にあるOSを読み込むことはできません。まず「ファームウェア」という、ハードウェアを制御する最ローレベルのプログラムが起動します。
ファームウェアが最初に行うのがPOST(パワーオン・セルフテスト)です。これは、CPU、メモリ、キーボード、ディスクドライブなどの主要なハードウェアが、電気的・物理的に正常に動作しているかを自己診断する処理です。
【実務エピソード:OSすら起動しない!メモリチェックの罠】
インフラエンジニアの現場では、このPOSTの段階で冷や汗をかくことがあります。過去に物理サーバーのメモリ増設作業を行った際、電源を入れても画面が真っ暗なまま、OSの起動処理にすら進まない事象に遭遇しました。原因は、POST内のメモリチェックでエラーが発生し、ファームウェアが処理を停止(ストップ)させていたためです。OSのログすら残らない世界でのトラブルシューティングは、ハードウェアの知識が不可欠であることを痛感させられます。
ハードウェアの診断がすべて正常に完了すると、ファームウェアは設定された優先順位(起動順位)に従って、OSが保存されているストレージ(HDDやSSD)を探し出し、その制御をストレージへと移します。
ファームウェアが起動対象のストレージを特定したあと、OSを呼び出すためには、ストレージのデータがどのように区切られているかを管理する仕組みを仲介する必要があります。
ストレージは、1つの物理的なディスクを複数の論理的な「部屋」に切り分けて管理します。この部屋のことをパーティションと呼びます。
そして、ディスクの先頭には「どの部屋(パーティション)がどこからどこまで存在するか」を記録した住所録のような情報が存在し、これをパーティションテーブルと呼びます。この管理方式には、大きく分けて以下の2種類があります。
ファームウェアは、この住所録(パーティションテーブル)を読み込むことで、次フェーズで登場する「OSを起動するためのプログラム(ブートローダー)」がディスクのどこに格納されているかを把握します。
※基本パーティション・拡張パーティション・論理パーティションといった複雑なパーティションの分類や、MBRとGPTの仕様上の詳細な違いについては、別記事「【パーツ別解説】MBRとGPTの違い・パーティションの仕組み(※リンク想定)」で詳しく解説します。
ストレージの構造を把握したところで、いよいよOSを起動する主役である「ブートローダー」が登場します。
ブートローダーとは、ストレージからOSの本体(カーネル)をメインメモリに読み込んで、CPUの実行権を引き継ぐための小さなプログラムです。ハードウェア(ファームウェア)とソフトウェア(OS)を繋ぐ架け橋のような存在です。
先述したストレージの管理方式(MBRかGPTか)によって、ブートローダーが呼び出されるルートが異なります。
bootmgr.efi)をダイレクトに呼び足します。呼び出されたWindowsのブートローダーは「Windows Boot Manager」として機能します。画面に「Windowsを起動しています」のインジケータが表示されたり、複数のOSがインストールされている場合に選択画面が出たりするのは、このプログラムが動いているためです。
Windows Boot Managerは、ストレージからWindowsのシステム根幹である「カーネル(ntoskrnl.exe)」および起動に必要な最低限のデバイスドライバーをメモリへとロードします。
ロードが完了すると、CPUの制御権がすべてWindowsカーネルへと引き渡されます。ここでハードウェアおよびファームウェアの仕事は完全に終了し、舞台は「OSの起動処理」へと移ります。
電源ボタンを押してからWindowsが起動する直前までのブートシーケンスの流れを、表形式で振り返りましょう。各フェーズの「主役」と「処理内容」を整理することで、構造が頭に入りやすくなり、実務でのトラブルシューティング時の切り分けにも役立ちます。
| フェーズ | 主役 | 主な処理内容 |
| 1. 電源投入 | ハードウェア(マザーボード・CPU) | 電源ボタンのONにより各パーツへ通電し、CPUが動き出してファームウェアを呼び出す。 |
| 2. 初期診断(POST) | ファームウェア(BIOS / UEFI) | CPU、メモリ、周辺機器などのハードウェアが電気的・物理的に正常に動作しているか自己診断(POST)を行う。 |
| 3. 起動デバイス特定 | ファームウェア(BIOS / UEFI) | 設定された優先順位に従い、OSがインストールされているストレージ(HDD/SSD)を特定する。 |
| 4. パーティション確認 | ストレージ(MBR / GPT) | ストレージの先頭にあるパーティションテーブルを読み込み、ディスクの区切り方やOSの格納位置(ESPなど)を確認する。 |
| 5. カーネルの呼び出し | Windows Boot Manager | Windowsのシステム根幹である「カーネル(ntoskrnl.exe)」と最小限のドライバーをストレージからメインメモリへとロードする。 |
| 6. 制御権の引き渡し | ブートローダー ➔ OSカーネル | メモリへのロード完了後、CPUの制御権をすべてWindowsカーネルへと引き渡す。 |
電源ボタンを押してからOSに制御が移るまでのわずか数秒の間には、このように厳密なステップが存在します。
インフラエンジニアとしてシステムに向き合う際、「画面が真っ暗なまま進まないときはハードウェアやファームウェア(POST)」、「OSのロゴ画面やエラーメッセージが出る段階ならパーティション、ブートローダー、カーネル」といったように、どのフェーズで問題が起きているかを論理的に切り分けることが重要です。
トラブルに強いエンジニアを目指すための第一歩として、ぜひこのブートシーケンスの全体像を頭に入れておいてください。
この記事が気に入ったら
フォローしてね!