詳細CentOSのブートプロセス

A、Linuxのブートプロセス:

ここに画像を挿入説明
BIOS:
マザーボード上のROMチップ内のコンピュータ上の一連の手順に硬化可能である基本入出力システム、コンピュータプログラムは、最も重要な基本入出力システムとPOSTプログラムからを保持している(出力システムの基本入力)プログラムを起動し、具体的な情報は、システム設定をCMOSから読み取ることができます。

MBR:マスターブートレコード、マスターブートレコードエリア。
ブートローダー:ブートローダー。

第二に、詳細な流れ

最初のステップ:ロードBIOSは、
コンピュータのハードウェアが自動的にBIOSがロードされ、コンピュータの電源を入れ、BIOSは、次に、BIOSに係るプログラムガイド装置の構成を見つけ、関連するハードウェア情報及びセルフテストハードウェアシステムを読み出します。

ステップ2:MBR読んで
最初のトラック0のハードディスクの最初のセクタはMBRと呼ばれ、マスターブートレコードのサイズは、プリブート情報、パーティションテーブル情報を格納する512バイトです。システムはハードディスクMBR BIOSは、指定され、それが物理メモリにコピーされます見つけた後は、物理メモリが内容にコピーするブートローダー(LILOまたはGRUB)です。

第三段階:Loaderが起動を開始し
、ブートローダーはオペレーティングシステムのカーネルの前に実行されますが、実行することに小さなプログラムです。システムのハードウェアおよびソフトウェア環境は、オペレーティングシステムカーネルへの最後の呼び出しのためにすべての準備ができようにするために、適切な状態を持参するように、この小さなプログラムを通じて、我々は、ハードウェアデバイス、メモリ空間マップの確立を初期化することができます。
ブートローダーは、LILOが共通ローダーで、グラブを含め、いくつかの種があります。
;展開し、特定の空間内のRAMにロードされ、ユーザが選択したカーネル、解凍、ユーザがシステムを選択するか、別のカーネル・バージョンを起動することを可能にするメニューを提供する:GRUB、GRUBの機能を説明するために例を挙げ。

グラブシステム(通常のmenu.lst又はのgrub.conf)メモリの設定情報を読み出し、設定情報に応じて、炉心ローディングを指定します。
ここに画像を挿入説明
ステップ4:カーネルロード
のすべてのハードウェアデバイスとそのドライバのためのルートディレクトリをマウントしようとする試みが認識プロービング始めたシステム・カーネルへのコントロールの上にグラブ渡すを。この時点では、ディスク、およびディスクドライバを読み込んで起動しないのlinuxにつながるディスクに格納するために最初の負荷にディスクドライバが必要です。この時点で、擬似ファイルシステムによってこの問題を解決する必要があります。

仮想ファイルシステム(初期RAMディスク)、すなわち/boot/initramfs-release.img、そのファイルが解凍され、ブートローダによってメモリにロードすることができ、それらのメモリ内にルートディレクトリとしてモデル化され、この文書の機能ファイルシステムの間でメモリ内のこのシミュレーションは、起動時にカーネルモジュールをロードするためのプログラムを介して実行できるプログラムを提供することができ、最も必要とされ、通常はこれらのモジュールは、RAID、LVM、SCSIおよびその他のファイルシステムUディスクでありますそして、ドライバディスク。ロードされると、コアは、フォローアップ、通常の起動プロセスのを開始するために再コール/ sbinに/ initのに役立ちます。

注:RAMDISKは、文書をサポートするカーネルが直接デバイスのルートファイルシステムが配置されて駆動させることができるかどうかに応じて、必要ありません。
ここに画像を挿入説明
ステップ5:実行/ sbinに/ initをプログラム、Linuxを実行レベルの設定
カーネルがロードされた後、ユーザ空間の最初のアプリケーションは、/ sbinに/ initを実行し、その後に/ etc / INTTABファイルを読み、コンフィギュレーション設定ファイルに応じていますシステムの実行レベルの特定の
ここに画像を挿入説明
ステップ6:初期化プロセスの実行には、rc.sysinitが存在
/etc/rc.d/rc.sysinitシステム初期化スクリプトを実行するために、実行レベルを設定した後、Linuxシステムを。初期化であって:/マウント、活性化UDEX seliuxルートファイルシステムを検出するに定義されているなどのすべてのファイルシステム/ fstabのファイルをホスト名、バナーを提供し、そして、システムクロックを設定し、カーネルのファイル/etc/sysctl.confに応じて設定されますパラメータ、LVMとソフトウェアRAIDデバイスの活性化、スワップデバイスをアクティブ化、追加のデバイスドライバをロードするには、クリーンアップ操作を実行します。

ステップ7:スタートカーネルモジュールは
、具体的負荷へのファイルのディレクトリモジュール/カーネルモジュール内の/ etc /のsysconfigファイルに従って。

ステップ8:各サービスの実行レベルを実行しますが(スクリプトモード)が開始され
、動作レベルに応じて、システムが対応する初期化を完了するために適切なスクリプトをrc6.dするrc0.dを実行し、適切なサービスを開始します。
ここに画像を挿入説明
ステップ9:実行/etc/rc.d/rc.localの
rc.localをされており、すべての初期化後に、Linuxユーザはローカルの個人に任さ。あなたは、設定することができますし、ここに置か何かを始めたいです。
ここに画像を挿入説明
ステップ10:実行/ binに/ログインプログラムは、ログインステータス入力
ユーザーがログインするためにLinuxはXウィンドウ端末または待機を開始します。
ここに画像を挿入説明

公開された180元の記事 ウォン称賛13 ビュー7162

おすすめ

転載: blog.csdn.net/weixin_45794138/article/details/104897246
おすすめ