当前位置:问答库>论文摘要

题目:一种Xen实时调度方法的设计与实现

关键词:虚拟化;实时任务;Xen;调度模型;调度框架

  摘要

随着嵌入式系统平台性能的增长,其提供的计算资源甚至超过过去工作站所能提供的计算资源,因此采用单一嵌入式系统取代多工作站成为可能。但多个不相关任务共存于一个嵌入式系统中,就会产生诸如统一接口、故障控制、安全隔离等需求。这些问题同样存在于服务器领域,而解决这些问题的方案是虚拟化技术。因此,从逻辑角度考虑,在嵌入式系统中引入虚拟化技术,也可以解决上述的问题。但是,嵌入式系统中存在对时间特性要求严格的实时任务,这就导致现有的在服务器领域工作良好的虚拟化技术不能完全适用于嵌入式系统。虽然现在已有如TenASys, PikeOS等支持实时任务的商业虚拟化技术,但它们除了非开源、不利于实时系统移植等缺点外,还有其特殊限制,如TenASys只能在采用了Intel-VT硬件虚拟化技术的平台上运行特定的INtimeOS实时系统。为了解决虚拟化技术在嵌入式领域的应用问题,本课题基于Xen平台进行将虚拟化技术实时化改造的研究。Xen是剑桥大学开发和维护的一个开源项目,它无需特殊硬件的支持,同时Xen向ARM嵌入式平台的移植工作正在进行中。Xen由于其开源和支持多平台特性,很适合于本课题的研究。本课题以Xen为平台,研究Xen环境下实时客户系统及实时任务的特点,提出了基于Xen的实时调度模型,并基于Xen原有调度器,设计并实现了Xen的实时调度框架。最后,通过实验,对本文的模型及实现框架进行了验证。在模型设计中,考虑到在Xen环境下运行实时任务的情况与开放式实时系统中运行实时任务的的相似性,本文在分析了两种开放式实时系统调度框架后,结合Xen虚拟化技术的特点,提出了基于VCPU的多实时任务模型。并且,提出了一种将Xen调度粒度细化的机制,使得该模型在Xen下实现成为可能。此外,本文提出的实时模型和调度粒度机制,在其他基于VCPU调度的虚拟化技术中具有一定的通用性。在Xen实时调度框架的设计与实现中,本文充分结合提出的调度模型和机制,采用双层调度控制、统一调度框架的方法,分别实现了向上的接口Controller部分和向下的接口Dispatcher部分。在满足Xen调度实时任务的前提下,将实时调度框架进行了丰富的扩展。由于国内进行嵌入式领域虚拟化技术研究较少,相信本文会对今后虚拟化技术的实时化改造有一定影响。