在配置好内核后依次执行以下命令:
make dep; make clean; make lib_ only; make user_ only; make romfs; make image; make编译完成之后,会在uClinux-dist/linux-2.6.x/下会生linux.bin,在uClinux-dist/images /下会生成linux.data、linux.text、image.bin等目标文件。在编译中可能会产生错误,需要根据错误信息进行调试修改。
3.4 内核的下载运行
(1) 我们将开始移植好的U-Boot的目标文件u-boot.bin通过JTAG烧写到目标硬件平台上,烧写时开始地址要从0开始,目标板上电后从0地址处运行就开始运行移植好的bootloader了,我们可以在windows下通过超级终端或者在linux下的minICom检测目标板的串口输出;
(2) 通过U-Boot的命令tftpboot来下载我们移植好的内核,tftpboot c008000 linux.bin;go c008000,通过以上两个步骤就实现了uClinux的下载运行。
系统启动后,首先执行了bootloader,完成了硬件设备的初始化任务,然后将运行的控制权交给了uClinux内核,uClinux系统就开始运行了。
4 结束语
由于Linux操作系统的源码开放性及ARM微处理器的良好性能,如何将Linux系统移植到ARM平台上得到越来越多的关注。操作系统的移植是构建基于ARM微处理器的嵌入式系统的前题,将bootloader与系统内核分开进行设计能够使软件结构更加清晰,而且可以利用前者的功能,灵活的实现多种引导系统的方式。
本论文的创新点:本文采用移植U-Boot作为系统bootloader,从而实现了uClinux-2.6内核移植。U-Boot作为一种功能强大的bootloader,适合多种平台并可以引导多种操作系统,利用其强大功能可以实现系统内核的多种下载和引导方式,掌握其移植方法很有必要,uClinux2.6内核对硬件平台的支持更好,移植过程中要注意不同硬件平台间的差别。
参考文献:
[1] 苏义鑫,王子毅,张素文.uClinux在嵌入式系统中的移植研究[J].微计算机信息,2006, 11-2:58-60。
[2] 李岩,荣盘.基于S3C44B0嵌入式uClinux系统原理及应用[M].北京:清华大学出版社.2005。
[3] 孙天泽,袁文菊,张海峰.嵌入式设计及Linux驱动开发指南[M].北京:电子工业出版社. 2005.2。
[4] 王田苗.嵌入式系统设计与实例开发[M].北京:清华大学出版社.2003。
[5] 常银霞,张振东,唐继英.利用Bootloader实现uClinux向S3C44B0上的移植[J].河北工业大学学报.Vol.34 No.2.2005.4。
[6] http://www.linuxforum.com。
本文关键字:暂无联系方式嵌入式系统-技术,单片机-工控设备 - 嵌入式系统-技术