论文部分内容阅读
随着计算机技术逐渐渗透到各类电子产品当中,一种实用、高效的计算机系统——嵌入式系统不断展现出它独特的魅力。嵌入式计算机系统专门服务于特定需求,一般要求低成本、低耗费、轻型、高性能、高可靠性。嵌入式系统日益广泛的应用让人们看到这项技术所蕴含的巨大市场潜力。ARM是目前使用最广泛的嵌入式微处理器,具有低功耗、高处理速度、低成本的特点,采用ARM芯片研制的嵌入式产品很多。ARM Linux嵌入式系统正被广泛的应用于消费类电子、工业控制、航空航天、汽车电子、医疗器械等领域。本文研究的嵌入式Linux以ARM9的S3C2440微控制器作为硬件平台。S3C2440主频达到400MHz,并且有硬件MMU(内存管理单元),非常适合嵌入式Linux运行。本论文研究如何在已有的硬件基础上构建一个完整的Linux嵌入式软件系统,并且在其上开发应用程序。论文首先研究了如何建立Linux嵌入式交叉开发环境,然后研究了U-Boot系统引导程序的移植方法,同时深入分析了U-Boot源代码的结构,增加了U-Boot的启动方式。然后裁剪和移植了Linux 2.6内核,建立了系统运行需要的根文件系统。之后研究了Linux设备驱动程序开发技术,并为了配合Qtopia图形用户界面,编写了液晶屏Frame Buffer驱动和触摸屏Input子系统驱动程序。之后编写了基于QTopia的图形界面mp3播放软件,播放器用到的主要技术点有:C/C++编程、Qt/E GUI、多线程及同步、Socket网络通信。播放器达到了如下目标:具有和常见mp3播放器同等的功能,可以播放本地mp3文件和Http服务器上的mp3文件;具有较好的编码风格,比较合理的类和模块组织结构;软件经过测试运行稳定。最后本文对研究进行了总结和提出了进一步的工作方向。总之本文研究了嵌入式Linux开发的全过程。