1
2

More than 3 years have passed since last update.

【Linux編】 電源投入からPC起動までの流れ

Last updated at Posted at 2020-06-13

大まかな流れ

  1. BIOSがマスターブートレコードを読みに行く
  2. その中にあるブートローダを起動する。(ブートローダ:OSを起動するためのプログラム)
  3. ブートローダがどのブートセクタを読み込むか(どのOSを起動するか)パーティションテーブルを参照する
  4. 起動するOSがパーティションを見て分かったのでブートセレクタを読み込む
  5. ブートセクタが読み込まれるとOS起動のためのプログラムが起動する
  6. OS起動プログラムがOSを起動する

Linuxシステムは以下の順序で実行される

  1. BIOSの起動 メモリのチェック、ハードウェア設定の読み込み、起動デバイスのチェック、起動デバイスのMBRに格納されたブートローダを実行します。
  2. ブートローダ カーネルをメモリにロードし、OSに制御を引き渡します。 Linuxで使用されるブートローダはGRUB2やGRUBがよく使われていますが、古いディレクトリビューションではLILOが利用されています。 またDVDやUSBから起動するライブメディアなどは、SYSLINUXが利用されています。
  3. カーネルとinitramfsのメモリロード まずカーネルの読み込みを行います。 その後、カーネルはinitramfsのマウントを行い、initramfsに保存されたカーネルモジュールの読み込みを行います。 カーネルモジュールの読み込みを行うことで、必要なドライバを全て読み込み、ルートファイルシステムのマウントが出来るようになります。
  4. ルートファイルシステムのマウント ルートファイルシステムの検索、エラーチェック、マウントを行います。
  5. initプロセスの起動 プロセスID1のプロセスinitが起動され、システムの初期化を行います。 その後、ランレベルに応じたサービスを起動します。
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2