文档介绍:基于ARM9的嵌入式Linux系统移植与实时性能研究
专业: 电子信息工程
班级: 电子091
学号: 2009315113
姓名: 陶培
2012年 11 月 25 日
基于ARM9的嵌入式Linux系统移植与实时性能研究
的不断扩展,嵌入式系统得到了越来越广泛的应用。由于嵌入式系统的复杂性的不断增加,嵌入式操作系统已经成为嵌入式系统中最重要的组成部分。在各种嵌入式系统中,Linux凭借其在结构清晰、源代码开放性等方面的优势,成为了基于监控系统、手持设备等嵌入式系统领域应用中的技术热点。嵌入式处理器种类繁多,要是嵌入式Linux系统在各个领域得到广泛应用,就必须把嵌入式系统移植到各种处理器平台上。ARM平台是目前应用十分广泛的处理器体系结构,自然也是嵌入式Linux系统移植的一个重点。
关键词:嵌入式系统;Linux;系统移植;实时性;进程调度;LSF算法
嵌入式计算机系统是以应用为中心、以计算机技术为基础、软硬件可裁剪,能适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。随着嵌入式计算技术的飞速发展,嵌入式系统已经应用到人类社会和日常生活的各个领域。据统计,在现在所使用的操作系统中,95%以上都是嵌入式计算机系统,而并非通用的桌面计算机系统。
Linux为嵌入操作系统提供了一个极有吸引力的选择,它是个以核心为基础的、完全内存保护、多任务多进程的操作系统。Linux从1991年问世到现在,通过互联网,由世界各地的开源软件开发人员不断开发和维护,功能不断增强,设计更加完善,不仅可以与各种传统的商业操作系统分庭抗争,在新兴的嵌入式操作系统领域内也获得了飞速发展。嵌入式Linux的开发和研究是操作系统领域中的一个热点,目前己经开发成功的嵌入式系统中,大约有一半使用的是Linux。
ARM芯片具有RISC系统的一般特点,如:具有大量的寄存器,绝大多数操作数都在寄存器中进行,通过Load/Store的体系结构在内存和寄存器之间传递数据,寻址方式简单;采用固定长度的指令格式等等。除此之外,ARM系统采用了一些特别的技术,在保证高性能的同时尽量减小芯片体积,降低芯片的功耗。
本论文对嵌入式Linux体系结构作了较为深入的剖析,研究了Linux的内存管理、进程调度、中断机制和系统调用机制,详细介绍了系统实现的必要工作,包括交叉编译环境的建立、启动程序的实现和内核移植。给出了启动引导代码Bootloader和Linux内核的启动分析,解决了Li FlUX内核在TMS320DM6441的ARM核上的移植过程中面临的任务和难题。
由于Linux系统本身并不是真正的实时操作系统,为了满足嵌入式Linux系统实时性可靠性的要求,所以必须对其进行实时性能的改进。
本论文分析了Li nux系统实时性不强的原因,然后在此基础上研究了改造Linux内核实时性常见的方法,分析了RIVlS算法与EDF算法,在原有的0(1)算法的前提下,引入了LSF算法对调度策略进行改进.
第二章 Linux系统分析
L i nux内核体系结构分析
Linux内核由五个主要的子系统组成,:
进程调度(SCHED):控制着进程对CPU的访问,当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。
内存管理(MM)-允许多个进程安全地共享主内存区域。
(3)虚拟文件系统(VFS):隐藏了各种不同硬件的具体细节,为所有的设备提供了统一的接口,VFS还支持多达数十种不同的文件系统,这也是Linux较有特色的一部分。
(4)):提供了对各种网络标准协议的存取和各种网络硬件的支持。
(5)进程间的通信(IPC):支持进程间的各种通信机制。,处于中心位置的是进程调度,所有其他的子系统都依赖于它,因为每个子系统都需要挂起和恢复进程。
Linux文件系统
文件系统是指在一个物理设备上的任何文件组织和目录,它构成了Linux系统上所有数据的基础,Linux程序、库、系统文件和用户文件都驻留其中,因此,它是系统中庞大复杂且又是最为基本和重要的资源。文件系统的存在使得数据可以被有效而且透明的存取访问。
:
Linux内核启动过程
第三章 L i nux系统的移植
L i 0内核的移植
BootLoader的移植
简单地说,BootLoader就是在操作系统内核运行前运行的一段小程序。通过这段小程序,我们可以初始化必要的硬件设备,创建内核需要的一些信息并将这些信息通过相关机制传递给内核,从而将系统的软硬件环境带到一个合适