收藏 分享(赏)

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

上传人:gnk289057 文档编号:7213423 上传时间:2019-05-10 格式: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页
点击查看更多>>
资源描述

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

2、 脚本程序设计以及嵌入式Linux 系统开发流程的前提下才能完成。四 实训内容及要求实训要求:在已经移植了 U-boot 的 ARM 平台上,移植 Linux 内核,配置裁剪 Linux 内核,添加个性化 logo 后,交叉编译 Linux 内核,将新内核烧写进 ARM 开发板,制作根文件系统,将内核和根文件系统烧写进 ARM 开发板,启动系统查看内核运行结果。实训步骤:1. 交叉编译环境的安装和测试在本实验所用的开发板中,编译 U-boot 和 Linux 内核所用的交叉编译器版本与进行应用开发时所用的版本不同,请确认本项目中安装的交叉编译器为 arm-linux-gcc-4.3.2版本,该

3、软件存放在共享目录 SRC 子目录 u-boot 目录下,安装后请确认环境变量的设置是否有效。2. Linux 内核移植第一步:照片制作准备一张自己喜欢的照片,打开照片,将照片另存在共享目录下,格式我为 png 格式。例如:我将喜欢的照片另存为 linuxlogo.png,注意照片大小,不能超过 640x480,如果图片太大,可以使用图片编辑工具缩小。进入 linux 操作系统执行如下操作。#mkdir /picture#cp /mnt/hgfs/share/picture/linuxlogo.png /picture#cd /picture#pngtopnm linuxlogo.png li

4、nuxlogo.pnm # pnmquant 224 linuxlogo.pnm linuxlogo224.pnm # 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

5、-2.6.24.4.tar.bz2#cd litar nux-2.6.24.4#cd /home/kernel/linux-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-bo

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

7、2.6.24.4# ls arch/arm/boot/zImagearch/arm/boot/zImagerootlocalhost 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/bo

8、ot/zImage -n Linux-2.6.24.4 uImage自己的 ./mkimage -A arm -T kernel -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 配置过程如下拷贝权限不够, , ,解决办法,使用

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

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报