文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>u-boot-1.3.4源码分析(1)

u-boot-1.3.4源码分析(1)

时间:2010-09-14  来源:zhanghonghu84

GNU提供了免费的编译工具,可从网上下载。针对ARM平台的交叉编译工具有汇编器arm-linux-as, C编译器arm-linux-gcc,连接器arm-linux-ld,以及二进制转换工具arm-linux-objcopy。 GNU的编译器功能非常强大,共有上百个操作选项,满足开发者的各种需要。它的特点是开发成本低,无需昂贵的仿真器,不但可以开发操作系统下运行的程序,也可以开发裸机应用程序[3]。GNU工具都运行在Linux下,开发者需要1台运行Linux的PC作为宿主机,开发后下载到板子上。U-boot,vivi等都利用了这些工具。为开发者的开发提供了很好的范例。

一般地,基于GNU工具的程序开发流程如下:

(1)编写C、C++或者汇编源程序;

(2)用相关编译器生成目标文件;

(3)编写连接脚本;

(4)用连接器生成最终文件(elf格式);

(5)用二进制转换工具生成可下载的二进制代码。

编写适用于本系统的Bootloader以完成最基本的引导操作系统的功能为目的。作为引导程序的基本功能应该包括:

(1)对硬件的初始化,如设置异常向量,设置CPU的速度、时钟频率和中断控制寄存器,初始化内存控制器,初始化堆栈等;

(2)支持文件的下载,串口的Kermit协议下载或者支持tftp协议的网口下载,后者实现相对复杂,但是速度快,可以根据情况选择;

(3)对Flash的操作;

(4)最好支持下载和自举两种工作模式;

(5)解压内核,配置参数等。

其中功能(1)直接涉及硬件,实现时应该使用GNU汇编。

 

本文主要从源码来简单分析u-boot1.3.4,硬件平台基于at91sam9263。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载