论文部分内容阅读
近年来,多核处理器的应用已经越来越广泛,为了充分发挥多核处理器的效率,提高嵌入式操作系统微内核性能已成为一个重要的研究课题,而多核处理器的任务调度机制的好坏是影响嵌入式操作系统微内核性能的关键因素。目前,国内外的许多研究人员都对多核处理器的任务调度机制进行了研究,主要通过改变任务的执行次序、减少任务间的通信开销及减少任务调度的次数等。然而当前多核处理器环境下,嵌入式操作系统微内核的任务调度效率仍然不高,存在任务间通信开销大、任务分配不合理及处理器的负载不均衡等问题,因此为进一步提高系统的性能,需要更加深入的研究多核处理器的任务分配模型和任务调度机制。 本文在多核处理器环境下,对嵌入式操作系统微内核的任务调度算法和调度机制进行了研究。分析了主流的任务调度机制的优缺点,并对其进行了对比分析,在此基础上,针对多核处理器任务调度机制进行了改进,提出了一种高效的任务分配模型和任务调度机制。(1)任务分配模型。任务分配模型的好坏直接影响任务的执行次序及系统的实时性,因为当高优先级任务到来时,如果分配的不合理,就必然会影响任务执行的实时性。因此本文给出了多核处理器下任务分配的通用规则,提高了任务分配的效率。接着给出了改进的基于优先级的抢占式任务分配机制,使高优先级的任务能够实时快速执行,提高了系统的实时性。(2)任务调度机制。本文用全局队列调度和局部队列调度相结合的方法实现了任务的调度,提出了基于缓存队列的任务调度机制,将全局队列中的任务调度到每个处理器的缓存队列,大大提高了缓存的命中率,提高了处理器的利用率,为了使处理器的负载更加均衡,对全局队列的调度方式进行了改进,融合了快内核优先的动态迁移策略,这些都保证了系统的实时性和负载均衡性。本文设计的改进多核处理器任务调度机制提高了嵌入式操作系统微内核的性能,满足了当前人们对系统的性能要求。 为了验证本文设计的任务分配模型和任务调度机制的高效性和可行性,本文在Simics仿真平台上进行了测试,搭建了多核处理器的硬件平台和嵌入式操作系统微内核,根据本文的任务分配模型和任务调度机制设计原理,对嵌入式操作系统微内核中的相关的部分进行修改,接着在嵌入式操作系统微内核上运行一段多任务的测试程序,对改进的方法和机制的性能进行了验证。实验结果表明,本文设计的多核处理器任务分配模型和任务调度机制具有良好的性能,系统的实时性得到了提高。