まず、下の図を見てみましょう:
1. 電源投入時のセルフテスト
ファームウェア: ハードウェアとソフトウェアの組み合わせ。電源投入時セルフテストは、電源ボタンを押すと、CPU、メモリ、ネットワーク カード、その他の情報などのハードウェア情報を検出します。 (ハードウェアレベルからハードウェアが利用可能かどうかを検出します)
2.ブートローダー
検出後mbr (マスター ブート レコード) にジャンプし、非常に重要なデータ ブートローダー (後続の作業はすべてブートローダーによって完了します) とパーティション テーブル、マジック ナンバー
を読み取ります。推奨オンライン ビデオ チュートリアル: linux ビデオ チュートリアル
3. ブートローダーがカーネルをロードします
##カーネルの概念: (Linux はソース コードの束です。起動すると、ハードウェアがソフトウェア レベルで利用可能かどうかを検出するカーネルの起動が表示されます)
2 つの主な機能: ハードウェアの駆動 (いわゆるドライバーとは、システムがハードウェアを識別し、オペレーティング システムにハードウェアを認識させ、ソフトウェアからハードウェアが使用可能かどうかを識別することを意味します) init プロセスの開始後、そのタスクは完成されました。
4. init プロセスを開始します (Linux によって開始される最初のプロセス#)
# init プロセスのタスク:
# 説明: init プロセスの pid は 1、その PPID は 0 です。PPID は親プロセス ID であり、その親プロセスはカーネル タスク スケジューラです。 Linux は、時間に応じて処理時間を割り当てるリアルタイム システムです。今回の処理が完了していない場合、時間を割り当て続けると次回の処理が行われます。これには、CPU タイム スケジューラが必要です。つまり、PID 0 のカーネル スケジューラです。 Linux では、プロセスから派生したプロセスが子プロセスになります。プロセスの親プロセスが停止すると、その子プロセスも存在できなくなります。 Linux では、親プロセスが終了し、子プロセスが生き残った場合、そのプロセスは孤立プロセスになります。Linux では孤立プロセスは存在できません。 Linux が孤立プロセスをスキャンすると、孤立プロセスの親プロセスが init プロセス (PID 1 のプロセス) に自動的に設定されます。 子プロセスが死んだ場合、親プロセスは子プロセスとの接続を切り替える必要があり、この子プロセスはゾンビプロセス、Jプロセスとなり、この種のプロセスは存在できなくなります。5. /etc/inittab ファイルを読みます
#概要:
(1) ファイアウェア (ファームウェア) の電源投入時セルフテストでハードウェア デバイスが正常かどうかを確認し、正常であれば、MBR (マスター ブート レコード) の最初のブートローダー # を読み取ります。
##(2) BootLoader で最も重要なことは、ブートローダー (GRUB) を格納することです。##(3) GRUB はカーネル (kernel) をロードします。ハードウェアを駆動し、init プロセスを開始します
(4) init プロセスは /etc/inittab
まずスクリプトを実行します:/etc/rc.d/rc.sysinit (このスクリプトは実行レベルに関係なく実行されます)、initdefault 実行レベルに従ってデフォルトを見つけて、
/etc/rc.d/rcN.d に移動してスクリプトを実行します。S で始まるスクリプトがスクリプトです。 K で始まるスクリプトはサービスをシャットダウンするスクリプトです。(5 ) 最後に、ターミナルが確立され、ユーザーのログインを待ちます。ユーザー、名前を表示します。
おすすめの関連記事とチュートリアル:
linux チュートリアル以上がLinuxシステムのブートプロセスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。