bootloader和bootstrap loader之间的区别?

ali*_*ice 10 bootstrapping bootloader

引导加载程序与引导加载程序的不同之处.根据我的说法,引导程序存储在ROM中,引导加载程序在MBR的硬盘中(如果我错了,请纠正我).bootstrap loader是第一个在启动后执行的程序.现在我没有得到这些句子的含义: - 上电 后,引导程序控制板,并且不依赖于linux内核.引导加载程序的行为作为引导程序和Linux内核之间的粘合. 这些意味着什么?为什么我们需要他们两个?

R.K*_*R.K 6

许多体系结构使用引导加载程序或第二阶段加载程序将Linux内核映像加载到内存中.一些引导加载程序执行内核映像的校验和验证,并且大多数执行内核映像的解压缩和重定位.

在此上下文中,引导加载程序和引导加载程序之间的区别很简单:引导加载程序在加电时控制板,并且不以任何方式依赖Linux内核.相比之下,引导加载程序的主要目的是充当板级引导加载程序和Linux内核之间的粘合剂.引导加载程序负责为内核提供适当的上下文,以及执行解压缩和重定位内核二进制映像的必要步骤.

或者称为引导,引导加载程序或引导程序,引导加载程序是驻留在计算机EPROM,ROM或其他非易失性存储器中的程序,其在打开计算机时由处理器自动执行.引导加载程序读取硬盘驱动器引导扇区以继续加载计算机操作系统的过程.术语boostrap来自旧句子"通过你的引导拉自己".已在具有可扩展固件接口(EFI)的计算机中替换引导加载程序.引导加载程序现在是EFI BIOS的一部分.


Cne*_*ork 6

  • Bootstrap Loader
    引导加载程序也称为引导程序,引导加载程序或引导程序,它是驻留在计算机的EPROM,ROM或其他非易失性存储器中的程序。打开计算机时,它会由处理器自动执行。(来自WIKI)
    您可以认为它会在开机后立即打开,并且它是BIOS的一部分(BIOS还有许多其他功能,例如提供一些诊断输出以及为用户提供配置硬件的方法)请注意,在某些情况下,Bootstrap Loader也可以称为Bootloader或bootstrap ...
  • Bootloader
    Bootloader是在任何操作系统运行之前运行的一段代码。引导加载程序用于引导其他操作系统,通常每个操作系统都有一组特定于其的引导加载程序。(来自Google)

这是步骤

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!
Run Code Online (Sandbox Code Playgroud)