infoMore than 3 years have passed since last update.
【Linux編】 電源投入からPC起動までの流れ
Last updated at Posted at 2020-06-13
大まかな流れ
- BIOSがマスターブートレコードを読みに行く
- その中にあるブートローダを起動する。(ブートローダ:OSを起動するためのプログラム)
- ブートローダがどのブートセクタを読み込むか(どのOSを起動するか)パーティションテーブルを参照する
- 起動するOSがパーティションを見て分かったのでブートセレクタを読み込む
- ブートセクタが読み込まれるとOS起動のためのプログラムが起動する
- OS起動プログラムがOSを起動する
Linuxシステムは以下の順序で実行される
- BIOSの起動 メモリのチェック、ハードウェア設定の読み込み、起動デバイスのチェック、起動デバイスのMBRに格納されたブートローダを実行します。
- ブートローダ カーネルをメモリにロードし、OSに制御を引き渡します。 Linuxで使用されるブートローダはGRUB2やGRUBがよく使われていますが、古いディレクトリビューションではLILOが利用されています。 またDVDやUSBから起動するライブメディアなどは、SYSLINUXが利用されています。
- カーネルとinitramfsのメモリロード まずカーネルの読み込みを行います。 その後、カーネルはinitramfsのマウントを行い、initramfsに保存されたカーネルモジュールの読み込みを行います。 カーネルモジュールの読み込みを行うことで、必要なドライバを全て読み込み、ルートファイルシステムのマウントが出来るようになります。
- ルートファイルシステムのマウント ルートファイルシステムの検索、エラーチェック、マウントを行います。
- initプロセスの起動 プロセスID1のプロセスinitが起動され、システムの初期化を行います。 その後、ランレベルに応じたサービスを起動します。
1Go to list of users who liked
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme
What you can do with signing up