论文部分内容阅读
随着嵌入式系统的快速发展,Linux操作系统得到了前所未有的广泛应用,嵌入式Linux被应用到包括便携式电子设备、生物科技以及航天科技等各种领域。显然不同应用领域对Linux系统的实时性、公平性和吞吐量等性能有着不同的要求,而进程调度算法对Linux系统性能起着至关重要的作用。由于Linux的开放性,Linux进程调度算法得到了长足的发展与丰富,其中Linux 2.6.23推出了CFS调度算法。虽然CFS调度算法在桌面系统中具有良好的应用性能,但该算法在不同应用领域的性能研究目前还处于开始阶段,迫切需要设计一种适合该算法的调度性能仿真分析方法,为嵌入式Linux系统开发提供必须的理论指导。为此,本文设计了一个Linux2.6进程调度器仿真系统,并对CFS调度器在不同应用领域的性能进行了系列的仿真实验研究。本文首先基于最新的Linux2.6.23内核源码对其进程调度机制,特别是CFS调度模块进行了深入的理论研究与探讨,并分析了CFS调度模块中的红黑树关键算法。然后对Linux2.6进程调度仿真系统进行了系统的需求分析,建立了Linux进程调度仿真系统的形式化模型,并在此模型的基础上设计和实现了一个Linux2.6进程调度器仿真系统,大量的仿真实验结果表明本仿真系统是可靠、稳定和易用的。最后,基于不同的处理器数目和调度参数重点针对Linux2.6.23中的CFS调度器进行了深入的仿真实验,并结合仿真结果,以性能比为参考,提出了CFS调度器在不同应用环境下的优化建议。仿真实验结果表明,随着处理器数量的增加,CFS调度器的性能不断提高;而随着粒度的增加,吞吐量不断提高,响应时间却明显增加;同时对CFS调度器采用不同的优化策略后,其更加适合于不同的应用环境。