论文部分内容阅读
Linux具有功能强大、开放源码、支持多种硬件平台、模块化设计等优点,在嵌入式领域得到了广泛的应用。但同时Linux是一个分时操作系统,其不可抢占的内核、粗糙的时钟粒度、频繁关中断、使用虚拟内存及缓冲机制等特点都限制了Linux在实时环境中的应用。为了能使Linux在实时环境中得到应用,就有必要对标准Linux进行修改,使其满足实时应用的要求。 本文首先对嵌入式系统以及实时系统的特点进行了介绍,同时针对Linux作为嵌入式操作系统的优势以及嵌入式Linux的一般构架作了介绍,对Linux在实时应用中的不足进行了分析。在此基础上,对当前各种嵌入式Linux操作系统实时性解决方案进行了分析比较,其中重点分析了RTAI的实现机制。同时在实验平台上编写了测试用例对RTAI的实时性能进行了测试,并与标准Linux内核的测试结果进行了对比分析。 本文在分析了以太网的特点,以及标准以太网在实时通信中存在的问题后,提出了在RTAI上使用RTnet实时网络协议栈实现基于以太网的实时通信方案。为了将RTnet移植到x86实验平台上,根据RTnet的驱动模型编写了Intel 8255x的以太网控制器的实时驱动程序。 最后讨论了实验方案设计,以及对标准Linux网络子系统和RTnet在不同网络负载下的实时性能测试结果。测试结果表明,在标准Linux系统上应用了RTAI与RTnet后,可以使系统的实时性得到保证,能够把系统应用到硬实时环境中。