- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Bootloader(Vivi)源代码分析
基于S3C2410处理器
作者:forkchen
Email:chenjun@
QQ欢迎广大嵌入式之友多多交流
目 录
TOC \o 1-3 \h \z \u HYPERLINK \l _Toc135793944 1.1 Vivi简介 PAGEREF _Toc135793944 \h 2
HYPERLINK \l _Toc135793945 1.2 vivi的配置与编译 PAGEREF _Toc135793945 \h 3
HYPERLINK \l _Toc135793946 1.2.1 建立交叉开发环境 PAGEREF _Toc135793946 \h 3
HYPERLINK \l _Toc135793947 1.2.2 配置和编译vivi PAGEREF _Toc135793947 \h 4
HYPERLINK \l _Toc135793948 1.3 vivi代码分析 PAGEREF _Toc135793948 \h 4
HYPERLINK \l _Toc135793949 1.4 vivi的运行 PAGEREF _Toc135793949 \h 5
HYPERLINK \l _Toc135793950 1.4.1 vivi的第一阶段 PAGEREF _Toc135793950 \h 5
HYPERLINK \l _Toc135793951 1.4.2 vivi的第二阶段 PAGEREF _Toc135793951 \h 15
HYPERLINK \l _Toc135793952 1.5 启动代码执行流程图 PAGEREF _Toc135793952 \h 17
HYPERLINK \l _Toc135793953 1.6 vivi的配置文件 PAGEREF _Toc135793953 \h 19
1.1 Vivi简介
Vivi 是韩国mizi 公司开发的bootloader, 适用于ARM9处理器。 Vivi有两种工作模式:启动加载模式和下载模式。启动加载模式可以在一段时间后(这个时间可更改)自行启动linux内核,这时vivi的默认模式。在下载模式下,vivi为用户提供一个命令行接口,通过接口可以使用vivi提供的一些命令,见下表:
命令
功能
Load
把二进制文件载入Flash或RAM
Part
操作MTD分区信息。显示、增加、删除、复位、保存MTD分区
Param
设置参数
Boot
启动系统
Flash
管理Flash,如删除Flash的数据
1.2 vivi的配置与编译
1.2.1 建立交叉开发环境
1、在宿主机上安装标准Linux 操作系统:Redhat 9.0 ( 主机系统为win2000,用虚拟机vmware安装的Redhat 9.0,内核版本为2.4.18) 。
2、宿主机上安装交叉编译器。
我这边的2410开发板提供的光盘上已附交叉编译器工具:arm-linux-gcc-2.95.3(源码为cross-2.95.3.tar.bz2)。
先以root 用户的身份登陆到linux 下。
进入/usr/local 目录,创建名为arm的目录:
cd /usr/local
mkdir arm
将光盘提供的cross-2.95.3.tar.bz2解压到/usr/local/arm目录:
tar jxvf cross-2.95.3.tar.bz2 –C /usr/local/arm
然后修改修改PATH 变量:为了可以方便使用arm-linux-gcc编译器系统, 把arm-linux工具链目录加入到环境变量PATH中:
修改/etc/profile文件,添加pathmunge /usr/local/arm/2.95.3/bin即可。
# Path manipulation
if [ `id -u` = 0 ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
pathmunge /usr/local/arm/2.95.3/bin
fi
pathmunge /usr/X11R6/bin after
设置环境变量后,最好是重启或注销一下,这样设置的环境变量才能生效。
1.2.2 配置和编译vivi
如果vivi的源代码已根据开发板作
文档评论(0)