[初级教程]arm-linux裸机开发之-bootstrap.bin的实现

来源:互联网 发布:覆盖文件恢复软件 编辑:程序博客网 时间:2024/06/04 19:59

1.前言

我们知道,在Linux平台下编写的程序要想在arm平台上运行,我们就得使用交叉的编译器,我们用arm-linux-none-gnueabi-gcc 或者arm-linux-gcc也罢,这些编译器编译产生的程序能够直接运行在arm的平台上,那我们的bootstrap.bin自己来实现,都需要具备哪些文件呢?众所周知,在引导程序中当今做大的最大的莫过于U-Boot这个组织,今天,我们就模仿U-Boot来实现一个简易的引导程序,我们称之为Bootstrap.bin。实现该bin文件我们模仿U-Boot的工程模版,写出几个实现文件:

这里写图片描述

start.S

我们知道汇编指令的代码在机器上执行的速度比较快,那些短小精悍的程序往往运行在设备初始化的初级阶段,我们在这里引用start.S的目的也是在此初始化我们arm设备的一些必须要初始化的系统外设,比如:

  • 设置SVC32模式
  • 关闭看门狗
  • 屏蔽所有中断
  • 关闭MMU以及Cache
  • 初始化时钟
  • 初始化SDRAM
  • 初始化Nand

——-未完待续

0 0
原创粉丝点击