论文部分内容阅读
随着嵌入式系统的广泛应用,嵌入式实时操作系统RTOS也越来越受到重视,尤其是在工业控制、航空航天、医疗卫生和军用等领域。RTAI (Real-Time Application Interface)是由意大利米兰理工学院航天工程系(DIAPM)发起开发的遵循GPL的开源项目。它是对Linux内核的强实时扩展,可以提供工业级的RTOS功能,而且其所有的功能都可无缝的通过GNU/Linux环境访问。现在基于RTAI已经有了很多的应用,如RTnet、USB4RT、RTCAN等。RTAI还在不断的发展之中,而且它在实时环境中的应用也越来越多,有广阔的发展前景。基于上述意义,本文首先解释了实时操作系统的相关概念,分别从任务调度、中断响应、内存管理等方面,指出在实时操作系统中影响实时性的要素,并给出了现阶段实时Linux的几种架构。接着,针对基于ARM平台RTAI的实现,深入研究与分析了RTAI实现机制,详细剖析了基于Linux实现的ADEOS/IPIPE超微内核的工作原理和具体实现。设计完成的测试硬件平台基于AT91RM9200处理器,AT91RM9200是ATMEL针对系统控制以及通信领域推出的基于ARM920T内核的微处理器,它集成了USB、以太网、EBI、MCI、SSC和SPI等多种丰富的外设接口,高速的处理速度和先进的电源管理使得这款芯片能够应用于很多领域。由于本课题的最重要部分是实现Linux/RTAI在AT91RM9200开发板上的移植与测试,所以存储器(Flash和SDRAM)是必要的,另外JTAG用于下载和调试程序,串口可用于打印调试信息,便于应用开发,以太网口可用于与PC机高速通讯。除此之外的其他一些接口可选,用引线引出,以便扩展应用。基于此硬件平台,设计与实现了Bootloader、Linux内核、根文件系统、RTAI的移植工作,移植版本为u-boot 1.3.4的Bootloader、2.6.20的Linux内核和3.7的RTAI内核,经测试,在此硬件平台上运行效果稳定良好。最后在此软硬件平台上进行了RTAI和传统Linux之间的任务时间分辨率测试与任务响应速度测试,分析了RTAI对传统Linux系统实时性能的提高,为后续实时应用开发提供指导和借鉴。