当前位置:   article > 正文

PC中的BIOS和嵌入式设备中BootLoader的区别和联系_bios和bootloader区别

bios和bootloader区别

众所周知,在PC(台式机、笔记本等)中,BIOS(现在是UEFI)是启动加载程序,而嵌入式设备中,BootLoader是系统引导程序。那么这两者到底有什么异同?关于这个问题,相信即使是一些资深的嵌入式工程师、内核工程师可能也不能完全说清楚。本文就来仔细讲解一下BIOS和BootLoader的区别和联系。

1. 引导加载程序

简单地说,引导加载程序就是在操作系统内核运行之前运行的一小段程序,是系统加电后第一时间运行的软件代码。通过这段程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境配置为一定的状态,以便为最终调用操作系统内核做好准备。

2. PC和嵌入式中的引导加载程序

(1)PC中的引导加载程序

在桌面PC中的引导加载程序是由位于只读存储器(ROM)中的BIOS位于硬盘的主引导记录(Master Boot Record,MBR)中的BootLoader引导程序(如GRUB和LILO)两部分代码组成的。BIOS在完成硬件检测和资源分配后,将MBR中的引导程序读到系统的内存当中,然后由MBR负责启动操作系统。

(2)嵌入式系统中的引导加载程序

在嵌入式系统中,通常没有像BIOS那样的固件程序,因此整个系统的加载任务就完全由BootLoader来完成。例如,在一个基于ARM7TDMI内核的嵌入式系统中,系统在上电或复位时一般都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序。

3. 小结

PC中的引导加载程序 = BIOS或UEFI中的MBR + BootLoadet引导程序(如GRUB、LILO)

嵌入式系统中的引导加载程序 = 0 + BootLoadet引导程序(如uboot)= BootLoadet引导程序(如uboot)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/484898
推荐阅读
相关标签
  

闽ICP备14008679号