论文部分内容阅读
Linux操作系统作为自由软件的代表,性能优良,是PC服务器和嵌入式系统应用最广泛的操作系统之一。Linux 2.6包含许多新的特性,为其在嵌入式领域的应用提供了强有力的支持,新的内核越来越多的应用于嵌入式系统中是必然的趋势。 全文详细分析嵌入式Linux移植的方法和过程,给出了搭建嵌入式开发环境,基于硬件平台ARM9的bootloader,Linux内核的移植及根文件系统的实现方案,并根据应用对象进行了应用程序的开发,实现通信、显示等功能。针对目前嵌入式Linux系统多是基于Linux2.4核的现状,本文在ARM9平台上研究并实现基于Linux2.6核的嵌入式系统。首先,在分析ARM9硬件平台特点的基础上,选择内核版本并进行移植环境的设计与搭建,给出系统的移植方法和过程。其次,设计并实现系统的bootloader,主要研究内容是移植mizi公司的vivi,vivi只提供针对标准SMDK2410的板级支持,在使用时必须将其移植到ARM9硬件环境下,ARM9采用的网卡和flash分别是CS8900a和K9F1208U0M,移植的工作是增加了对网卡的支持和针对flash的部分代码的修改和设计,并增加了自己的Logo和命令提示符。在完成vivi移植之后,根据ARM9的硬件环境对Linux内核进行修改,内核修改的工作是对内核MTD部分进行修改,然后再配置生成与主板匹配的Linux内核,在上述基础上构建了一个嵌入式根文件系统,采用了一种Cramfs+Yaffs的混合式文件系统解决方案,为了缩小文件系统的大小,在该根文件系统中使用了busybox作为命令集,以uClibc库作为链接库。通过以上实践,实现了Linux在ARM9上的成功运行。最后,针对交流伺服系统,搭建ARM+DSP应用架构,开发应用程序,实现了对交流伺服系统的有效控制。 本文的研究成果可以应用于嵌入式开发中,为嵌入式系统应用研究提供操作系统层次的支持。