论文部分内容阅读
在当前互联网和电子信息技术迅猛发展的时代里,以嵌入式技术、人工智能技术和通信技术为依托的最具有代表性热门技术也在迅速发展。随着中国政府提出“互联网+”创新驱动模式,这些技术终将会成为这个时代的弄潮儿而得到跨越式的发展。其中,嵌入式技术及其操作系统作为“互联网+”的灵魂也向着越来越复杂越来越完美的方向发展着。而在各种各样的嵌入式操作系统中,Linux以其自身众多特殊的优势占据了半壁江山。本文以ARM11平台为应用基础进行了Linux内核的移植工作,不同的处理器它的引导程序和内核是有一定区别的。首先对引导程序原理做了深入的研究,然后通过设计编写USB下载线驱动将编译好的u-boot映像成功移植到ARM中。文中还实现了Linux内核的配置编译和移植的具体过程,以及根文件系统的制作。为了在宿主机和目标机之间建立起TFTP网络链接,在ARM的调试窗口中使用u-boot命令设置好目标机的IP地址以及环境变量等相关的参数,最后将制作好的且挂载有根文件系统的Linux内核映像通过TFTP服务器移植到ARM上。本文针对Linux实时性问题,对Linux2.6版本的内核做了比较深入的分析研究。依据Linux实时性能的评判标准,概括性的总结出了几个主要影响实时性能的因素。从中断机制、同步机制以及所引起的优先级反转现象等几个方面进行详细地研究分析。首先,通过对原有标准Linux2.6内核的中断机制进行了深入分析。Linux的中断机制主要是为了满足标准的通用分步式操作系统而设计的,针对在应用到实时环境中时具有一定的缺陷,特别是在一些繁重的网络负载情况下。本论文提出了使用中断线程化的方法来对原有中断机制进行改进。然后,通过对标准Linux内核的同步机制进行分析,针对其内核中大量的使用自旋锁会对实时性能方面带来的影响,本论文提出了用互斥锁替代自旋锁的改进方案。最后,通过对以上因素导致的任务调度优先级反转现象进行研究分析,针对出现的较低优先级的任务可能在较高优先级的任务之前调度的问题,论文采用了优先级继承方法在一定程度上改善了调度机制。通过采用以上几种改进方案以后,论文设计了测试程序对其性能进行分析,取得了较好的效果,说明优化后的Linux在实时性方面具有较好的研究价值。