web-dev-qa-db-ja.com

ブートローダーとbootstrapローダーの違いは?

ブートローダーとbootstrapローダーの違い。私によるとbootstrapローダーはROMに格納され、ブートローダーはMBRのハードディスク(間違っている場合は訂正してください)bootstrapローダーは起動後に実行される最初のプログラムです。現在、これらの文の意味がわかりません:-電源を入れた後、ブートローダーはボードを制御しており、Linuxカーネルにまったく依存していません。そしてbootstrapローダーはブートローダー間の接着剤として機能しますとlinuxカーネル。これらはどういう意味ですか?そしてなぜ両方が必要なのですか?

11
alice
  • Bootstrap Loader
    ブートストラップ、ブートローダー、またはブートプログラムとも呼ばれ、bootstrapローダーは、コンピューターのEPROM、ROM、またはその他の不揮発性メモリに常駐するプログラムです。コンピュータの電源を入れると、プロセッサによって自動的に実行されます。(WIKIから)
    電源を入れるとすぐにオンになると考えることができます。これはBIOSの一部です(BIOSには、診断出力の提供や、ユーザーがハードウェアを構成する方法の提供など、他の多くの機能があります)注意してください、状況によってはBootstrap Loaderは、bootloaderまたはbootstrap ..と呼ばれることもあります。
  • Bootloader
    ブートローダーは、オペレーティングシステムが実行される前に実行されるコードの一部です。ブートローダーは、他のオペレーティングシステムを起動するために使用されます。通常、各オペレーティングシステムには、それに固有のブートローダーのセットがあります。 (グーグルから来て)

ここISステップ

0 : Power On!
1 : CPU Power On! CPU try to find something in ROM(Or ERROM)
2 : Find BIOS (or other firmware). Run BIOS
3 : BIOS(bootstrap loader and other functions) run
4 : BIOS try to find something in MBR
5 : Find MBR(512 bytes) there is some useful information of the partition
6 : Copy the MBR content into physical disk 0x7c00 where is the location of the Grub.
7 : Grub(a type of bootloader) use the information of the MBR finds a linux! Prepare to run.
8 : Run your linux!
7
Cnetwork

多くのアーキテクチャでは、bootstrapローダーまたは第2ステージローダーを使用して、Linuxカーネルイメージをメモリにロードします。一部のbootstrapローダーは、カーネルイメージのチェックサム検証を実行します。ほとんどの場合、カーネルイメージの解凍と再配置を実行します。

このコンテキストでのブートローダーとbootstrapローダー)の違いは単純です。ブートローダーは電源投入時にボードを制御し、Linuxカーネルにまったく依存しません。対照的に、= bootstrapローダーの人生の主な目的は、ボードレベルのブートローダーとLinuxカーネルの間の接着剤として機能することです。適切なものを提供するのはbootstrapローダーの責任です。カーネルを実行するためのコンテキスト、およびカーネルバイナリイメージを解凍して再配置するために必要な手順を実行します。

ブートストラップ、ブートローダー、またはブートプログラムとも呼ばれる、bootstrapローダーは、コンピューターのEPROM、ROM、またはその他の不揮発性メモリに常駐するプログラムであり、次の場合にプロセッサによって自動的に実行されます。コンピューターの電源を入れます。bootstrapローダーはハードドライブのブートセクターを読み取り、コンピューターのオペレーティングシステムをロードするプロセスを続行します。ブーストラップという用語は、「ブートストラップで自分を引き上げる」という古いフレーズに由来します。 「ExtensibleFirmwareInterface(EFI)を備えたコンピューターでは、ブートローダーが置き換えられました。ブートローダーはEFIBIOSの一部になりました。

6
R.K

U-BootやRedBootなどのブートローダーは、電源を入れた直後にハードウェアを制御します。一方、Boostrapローダーはカーネルイメージにアタッチされており、カーネルを実行するための適切なコンテキストを準備します。たとえば、ARMアーキテクチャ用にカーネルをコンパイルする場合、カーネルファイルはpiggy.oファイルとしてコンパイルされ、ブーストラップローダーファイルはmisc.obig_endian.o、およびhead.oです。

1
Behnam Dezfouli