欢迎来到天天文库
浏览记录
ID:13279287
大小:2.46 MB
页数:14页
时间:2018-07-21
《嵌入式系统——u-boot的分析与移植》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、浙江大学实验报告课程名称:嵌入式系统实验类型:技术类实验项目名称:U-Boot的分析与移植一、实验目的和要求(必填)U-Boot的分析与移植二、实验内容和原理(必填)1.交叉编译出适用于ARM-Linux的ToolChain,编写HelloWorld程序。2.熟悉使用XSBase的BootLoader的指令。三、主要仪器设备Pc机、Linux操作系统四、操作方法与实验步骤a)用ToolChain实现交叉编译1.修改~/.bash_profile文件复制XSBase的ToolChain目录下的hysub-arm-linux-R1.1.tar.
2、gz到/usr/local目录下,解压生成hysub-arm-linux-R1.1目录。修改~/.bash_profile文件,添加如下行:PATH=$PATH:/usr/local/bysub-arm-linux-R1.1/bin修改后的.bash_profile文件如下:1.编写一个HelloWorld程序main.c2.用如下两条命令分别编译main.c:gcc–omainmain.carm-linux-gcc–omain-armmain.c编译成功。b)创建和使用一个新的系统调用1.创建一个新的文件mysyscall.c解压XSBa
3、se的Kernel目录下的2.4.18-rmk7-pxa1-XSBase.tar.gz,生成2.4.18-rmk7-pxal-XSBase目录。在arch/arm/kernel目录下创建一个新的文件mysyscall.c,如下:1.添加自己的系统调用在arch/arm/kernel/call.S中添加自己的系统调用,新的系统调用号是0x900000+226。2.修改Makefile文件修改arch/arm/kernel目录下的Makefile文件,在obj-y后面添加mysyscall.o:1.重新编译内核makedep做依赖性检查:用ma
4、kezImage命令编译内核。编译完成后在arch/arm/boot路径下生成镜像文件zImage。使用TFTP下载到板子上。然后重启开发板。1.接下来写一个测试程序test.h和test.ctest.h如下:test.c如下:然后用如下命令交叉编译:arm-linux-gcctest.c–otest重启开发板,将应用程序test通过zmodem协议下载到开发板的文件系统目录下,用下命令运行test程序并观察输出:./testa)BootLoader应用实验1.buildingx-boot255解压BootLoder目录下Boot-XSBa
5、se255.tar.gz,用make进行编译。编译后,生成src/x-boot255:1.下载BootLoader到目标板:用./Jflash-XSBase255x-boot255指令将BootLoader烧写到目标板:2.熟悉BootLoader指令:help&reload:bootp:tftp:flash&lock&unlock:boot:status&read:reboot:a)U-Boot的分析与移植未做成功.二、实验数据记录和处理使用TFTP下载zImage成功。交叉编译成功:一、实验结果与分析(必填)BootLoader烧写成功
6、结果:交叉编译成功结果:一、讨论、心得学会了交叉编译出适用于ARM-Linux的ToolChain,学会了在ARM-Linux上创建一个新的系统调用,熟悉使用XSBase的BootLoader的指令。
此文档下载收益归作者所有