当前位置:   article > 正文

Bootloader 是什么,做什么。

bootloader

Bootloader 是在操作系统内核运行之前运行的一段小程序。它在系统上电时开始执行
初始化硬件设备、准备好软件环境、最后调用操作系统内核。它是应用程序运行前执行的一段固化在微控制器中的代码程序

功能:

  • 初始化CPU,设置时钟频率
  • 屏蔽所有中断
  • 设置栈指针
  • 启用电源管理
  • 将内核和根文件系统的镜像加载到系统内存,然后启动内核
  • 将数据写入闪存、下载内核、升级bootloader自身

启动顺序:两个阶段

(内存映射是一种将文件其他内核对象映射到进程的虚拟地址空间的方法。
这样,应用程序可以像访问内存一样访问文件或其他对象,而无需使用常规的文件I/O方法。
它能够使一个磁盘文件与存储空间中的一个缓冲区建立映射关系,然后当从缓冲区中取数据,
就相当于读文件中的相应字节;而将数据存入缓冲区,就相当于写文件中的相应字节)

(根文件系统是内核启动时所挂载(mount)的第一个文件系统,
内核代码的映像文件保存在根文件系统中。
系统引导启动程序会在根文件系统挂载之后从中把一些初始化脚本(如rcS,inittab)
和服务加载到内存中去运行)

  • 设置启动参数
  • 启动内核
  • 将内核和根文件系统映像复制到内存
  • 第一阶段:和cpu相关,主要使用汇编语言编写
    1. 初始化硬件组件
    2. 为加载第二阶段程序准备空间
    3. 设置sp栈指针
    4. 跳转到第二阶段程序的入口
  • 第二阶段:和Soc相关,使用C语言编程
    1. 初始化此阶段所使用的硬件组件
    2. 检查内存映射
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/613901
推荐阅读
相关标签
  

闽ICP备14008679号