ホームページ  >  記事  >  運用・保守  >  Linuxのブートシーケンス

Linuxのブートシーケンス

藏色散人
藏色散人転載
2019-08-07 14:57:103764ブラウズ

以下では、Linux の起動シーケンスを紹介します。Linux の使用方法のチュートリアルの詳細については、Linux ビデオ チュートリアル にアクセスして学習してください。

Linuxのブートシーケンス

Linux 起動シーケンス フローチャート:

Linuxのブートシーケンス

起動の最初のステップ - BIOS のロード

コンピューターの電源を入れると、コンピューターは最初に BIOS をロードします。 BIOS 情報、BIOS この情報は非常に重要であるため、コンピューターは最初にそれを見つける必要があります。これは、BIOS には CPU 関連情報、デバイスのブート シーケンス情報、ハードディスク情報、メモリ情報、クロック情報、PnP 機能などが含まれているためです。この後、コンピュータはメンタルマップを持ち、どのハードウェアデバイスを読み取るべきかを認識します。

2 番目のステップを開始します - MBR を読み取ります

ご存知のとおり、ハードディスクのトラック 0 の最初のセクターは MBR と呼ばれます。つまり、マスター ブート レコード、メイン

ブート レコード、そのサイズは 512 バイトで、スペースは小さいですが、プリブート情報とパーティション テーブル情報 が保存されます。

システムが BIOS によって指定されたハードディスクの MBR を検出すると、それは 0x7c00 アドレスの物理メモリにコピーされます。

実際、物理メモリにコピーされたコンテンツはブート ローダーであり、特にお使いのコンピュータでは lilo または grub

です。

開始の 3 番目のステップ -- ブート ローダー

ブート ローダーは、オペレーティング システム カーネルが実行される前に実行される小さなプログラムです。この小さなプログラムを通じて、

#ハードウェア デバイスを初期化し、メモリ空間のマップを確立することで、システムのソフトウェアおよびハードウェア環境を最終呼び出しに適した状態にすることができます。オペレーティング システム カーネルは、準備ができています。すべて。

ブート ローダーにはいくつかの種類があり、Grub、Lilo、spfdisk が一般的なローダーです。

Grub を例に挙げると、結局のところ、lilo と spfdisk を使用する人はそれほど多くありません。

システムはメモリ内の grub 構成情報 (通常は menu.lst または grub.lst) を読み取り、

この構成情報に基づいてさまざまなオペレーティング システムを起動します。

4 番目のステップを開始します - カーネルをロードします

grub によって設定されたカーネル イメージのパスに従って、システムはメモリイメージを取得して解凍します。このとき、通常、画面

# には「Linux の圧縮を解除しています」というプロンプトが表示されます。カーネルの解凍が完了すると、画面に「OK,

booting the kernel」と表示されます。

システムは解凍されたカーネルをメモリに配置し、start_kernel() 関数を呼び出して一連の初期化関数

を開始し、さまざまなデバイスを初期化して Linux コア環境の確立を完了します。この時点で、Linux カーネルは確立されており、Linux ベースのプログラムは正常に実行できるはずです。

5 番目のステップを開始します -- ユーザー層の初期化 inittab ファイルに従って実行レベルを設定します

カーネルがロードされた後、最初のステップは、 run プログラムは /sbin/init で、/etc/inittab ファイルを読み取り、このファイルに基づいて初期化を実行します。

実際、/etc/inittab ファイルの主な機能は Linux の実行レベルを設定することです。設定形式は ":

id:5:initdefault:" です。 Linux に必要なレベル 5 で実行します。 Linux の実行レベル設定は次のとおりです。

0: シャットダウン

1: シングルユーザー モード

2: ネットワーク サポートなしのマルチユーザー モード

3 : ネットワーク サポートを備えたマルチユーザー モード

4: 予約済み、未使用

5: ネットワーク サポートと X-Window サポートを備えたマルチユーザー モード

6 : システムを再起動します。つまり、再起動します。

6 番目のステップを開始します - init プロセスが rc.sysinit を実行します。

実行レベルを設定した後、 Linux システム 最初に実行されるユーザーレベルのファイルは /etc/rc.d/rc.sysinit スクリプト プログラムで、PATH の設定やネットワーク構成 (/etc/sysconfig /network) の設定、スワップの有効化など、多くの作業が行われます。パーティション、/proc の設定など。興味がある場合は、/etc/rc.d の rc.sysinit ファイルを確認してください。

7 番目のステップの開始 -- カーネル モジュールの開始

/etc/modules.conf ファイルまたは /etc/modules に従ってください。 d ディレクトリにカーネルモジュールをロードします。

8 番目のステップを開始します -- さまざまな実行レベルでスクリプト プログラムを実行します

さまざまな実行レベルに従って、システムは rc0.d から rc6.d の対応するスクリプト プログラムを実行して、対応する処理を完了します。初期化作業と対応するサービスの開始。

9 番目のステップを開始します - /etc/rc.d/rc.local を実行します

このファイルを開くと、その中に文が含まれています。このコマンドの機能は一目瞭然です。

rc.local は、Linux がすべての初期化作業の後にユーザーに個人設定を残す場所です。設定したい内容を入力してください。

ここから開始してください。

10 番目のステップを開始します - /bin/login プログラムを実行し、ログイン状態に入ります

以上がLinuxのブートシーケンスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。