基于Linux的嵌入式操作系统实时性技术研究
【摘要】:
由于计算机技术、通讯技术相结合的信息时代的快速发展和互联网的广泛应用,3C(Computer、Communication、Consumer)合一的趋势已经形成,其结果必然就是将计算机工业的中心从计算产品转移到信息产品,从而出现信息电器的概念。在信息电器的应用开发领域,由于需要的功能不断的增加,嵌入式系统也就将成为软件业的新宠儿。同时在计算机本身的领域里面,微型化和专业化成为了发展的新趋势,同样也需要嵌入式系统的支持。因此,研究与嵌入式系统有关的关键技术-嵌入式操作系统有着相当重要的实际意义。
利用Linux搭建嵌入式操作系统是近年来出现的最令人振奋的方案。这有多方面的原因。首先,运行在嵌入式系统上的Linux能够提供全功能的桌面计算(Desktop Computing),且由于其开放代码,定制变得非常方便。其次,Linux 已经支持大多数嵌入式系统上使用的芯片,包括StrongARM,MIPS和PowerPC。 最后,Linux是免费的,使用Linux 不需要付出任何费用。所以利用 Linux 作为底层操作系统成为现在日益流行的嵌入式操作系统的解决方案。
无所不在的嵌入式计算对实时多任务操作系统(RTOS)的需求日益迫切,Linux内核的实时支持研究为迎合这种需求提供了新的可能性。本文讨论了实时操作系统的现状及标准linux作为实时应用的一些不足,并从实现机制上分析了造成这些不足的原因,在此基础上从中断控制,实时调度策略,内核抢占及细粒度定时器几方面深入研究并实现了Linux内核的实时支持,使之成为一个较为完善的RTOS。作为一个嵌入式Linux系统环境研究项目的核心组成部分,我们保留Linux原有系统支持及API,把实时部分做成可配置单元。研究了提供尽可能多的实时调度策略,扩展系统适用范围的可行方案,同时指出了当前方案的不足和今后的研究方向。