自己修改-内核制作完成-logo制作.doc

上传人:汽*** 文档编号:561942657 上传时间:2022-10-15 格式:DOC 页数:13 大小:1.20MB
返回 下载 相关 举报
自己修改-内核制作完成-logo制作.doc_第1页
第1页 / 共13页
自己修改-内核制作完成-logo制作.doc_第2页
第2页 / 共13页
自己修改-内核制作完成-logo制作.doc_第3页
第3页 / 共13页
自己修改-内核制作完成-logo制作.doc_第4页
第4页 / 共13页
自己修改-内核制作完成-logo制作.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《自己修改-内核制作完成-logo制作.doc》由会员分享,可在线阅读,更多相关《自己修改-内核制作完成-logo制作.doc(13页珍藏版)》请在金锄头文库上搜索。

1、 嵌入式系统综合设计实训项目指导书一 项目名称嵌入式Linux系统内核移植-个性化LOGO制作二 实训目的在构建了嵌入式Linux交叉开发环境后,成功移植U-boot的前提下,需要继续裁剪移植Linux内核,在此过程中为了深入理解Linux内核裁剪移植的过程,在此项目要求移植过程中,通过对Linux内核代码进行简单的修改,使得Linux内核能够显示个性化的启动Logo。以此帮助学生深入掌握Linux内核移植的概念,培养学生动手实践的兴趣。三 前期基础完成此项目的前提是学生是在学生掌握Linux基本操作,Linux系统下C程序设计方法,shell脚本程序设计以及嵌入式Linux系统开发流程的前提

2、下才能完成。四 实训内容及要求实训要求:在已经移植了U-boot的ARM平台上,移植Linux内核,配置裁剪Linux内核,添加个性化logo后,交叉编译Linux内核,将新内核烧写进ARM开发板,制作根文件系统,将内核和根文件系统烧写进ARM开发板,启动系统查看内核运行结果。实训步骤:1. 交叉编译环境的安装和测试在本实验所用的开发板中,编译U-boot和Linux内核所用的交叉编译器版本与进行应用开发时所用的版本不同,请确认本项目中安装的交叉编译器为arm-linux-gcc-4.3.2版本,该软件存放在共享目录SRC子目录u-boot目录下,安装后请确认环境变量的设置是否有效。2. Li

3、nux内核移植第一步:照片制作准备一张自己喜欢的照片,打开照片,将照片另存在共享目录下,格式我为png格式。例如:我将喜欢的照片另存为linuxlogo.png,注意照片大小,不能超过640x480,如果图片太大,可以使用图片编辑工具缩小。进入linux操作系统执行如下操作。#mkdir /picture#cp /mnt/hgfs/share/picture/linuxlogo.png /picture#cd /picture#pngtopnm linuxlogo.png linuxlogo.pnm # pnmquant 224 linuxlogo.pnm linuxlogo224.pnm #

4、 pnmtoplainpnm linuxlogo224.pnm linuxlogo224.ppm第二步:Linux内核代码修改打开Linux内核源代码,进入内核源码目录下driver/video/logo目录下,用自己制作的图片文件替换原来的显示图片文件。 #mkdir /home/kernel #cp /mnt/hgfs/share/UP-CUP2440/Linux/SRC/kernel/linux-2.6.24.4 /home/kernel#tar jxvf linux-2.6.24.4.tar.bz2#cd litar nux-2.6.24.4#cd /home/kernel/linux

5、-2.6.24.4/drivers/video/logo# cp /picture/linuxlogo224.ppm ./#mv linuxlogo224.ppm logo_linux_clut224.ppm第三步 Linux内核配置修改 返回内核源码目录,重新配置linux内核。 #cd /home/kernel/linux-2.6.24.4 #make menuconfig 保存退出。 一直退出,最后会提示你是否保存第四步:确认交叉编译器安装正确。 本实验箱在编译u-booth和后续linux内核以及应用程序开发所使用交叉编译器版本不同,在编译u-boot时使用的交叉编译器版本为arm-l

6、inux-gcc-4.3.2,而编译内核和应用程序使用的是arm-linux-gcc-3.4.6版本,请确保安装正确后才可以进行内核交叉编译。 交叉编译器安装测试过程在此略过!第五步:修改Makefile文件,交叉编译内核。 #make 在刚才退出的目录初次编译内核源码,由内核代码庞大,所需较长时间(大约几分钟至10 几分钟不等)。编译成功后会在内核源码目录的arch/arm/boot/目录下生成内核压缩文件zImage。rootlocalhost linux-2.6.24.4# ls arch/arm/boot/zImagearch/arm/boot/zImagerootlocalhost

7、linux-2.6.24.4# 第六步:压缩内核将前步编译的zImage内核拷贝至源码主目录下,使用mkimage工具将新生成的内核镜像文件zImage 做成uImage#cd /home/kernel/linux-2.6.24.4#cp ./arch/arm/boot/zImage ./#./mkimage -A arm -T kernel -C none -O linux -a 0x30008000 -e 0x30008040 -d ./arch/arm/boot/zImage -n Linux-2.6.24.4 uImage自己的 ./mkimage -A arm -T kernel -

8、C none -O linux -a 0x30008000 -e 0x30008040 -d ./zImage -n Linux-2.6.24.4 uImage第七步:测试新内核是否可用 将第六步制作好的内核uImage拷贝到windows烧写目下,准备烧写。如实例中,将其拷贝到E:shareUP-CUP2440 LinuxIMG目录下。烧写之前,需要配置tftp服务器和u-boot。U-boot配置过程如下拷贝权限不够,解决办法,使用U盘拷贝U盘拷贝不了,U盘问题及权限问题使用root用户登录: 配置好u-boot后,启动windows下的tftp服务器,配置如下:执行完上述步骤后,切记不可

9、重启开发板,此时内核仅仅保存在内存中,并未写入flash,重启开发板后,内核会丢失,在此可以直接通过命令从内存启动新内核,查看内核是否制作完成,启动方法是在u-boot端执行: #bootm 0x30008000执行情况如下图所示,同时查看开发板显示器,是否显示的是新制作的logo图片,如果能正常显示,则将linux内核固化,烧写进flash,如果不能显示,重复前面步骤,查看是否操作正确!至此,可以查看显示器内容是否为制作图片,如果是,将内核烧写进flash。第八步:烧写固化新内核在u-boot端执行# run update_kernel执行后结果如下图所示:至此,可以重启开发板,新的内核已经烧写进flash。考核要求:学生在完成项目的基础上,掌握每一步操作的意义。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号