start.S分析
start.s 引入
拿到一个项目,我们要 从哪里开始分析这份代码呢?
1、u-boot.lds中找到start.S入口
(1)在C语言中整个项目的入口就是main函数(这是C语言规定的),所以譬如说一个有10000个.c文件的项目,第一个要分析的文件就是包含了main函数的那个文件。
(2)在uboot中因为有汇编阶段参与,因此不能直接找main.c。 整个程序的入口取决于链接脚本中ENTRY
声明的地方。ENTRY(_start)
因此_start符号所在的文件就是整个程序的起始文件,_start所在处的代码就是整个程序的起始代码。
一、start.S分析
1、不简单的头文件包含
#include <config.h>