论文部分内容阅读
随着网络通信技术的发展,分布计算逐渐成为计算技术的主流。为了使用户能够透明、有效地共享分布在网络上的信息资源和计算资源,分布计算中间件成为实现分布计算的关键技术之一。目前的分布计算中间件能够提供良好的开发平台和通讯支持,但是它们缺乏对分布实时应用的时间约束的支持能力。尤其随着分布计算技术和分布应用的深入发展,一些关键业务领域也都使用分布对象技术进行构建,能够保证分布应用的时间约束的实时中间件逐渐成为研究的重点。 本文研究基于优先级的实时中间件的概念、体系结构及其有效性验证、实时基础设施等问题,并在此基础上开发一个具有高效网络管理能力、自适应优先级调整的实时中间件系统。本文的主要工作包括: 1.本文从支撑平台的角度出发,建立了实时中间件的概念体系,澄清了相关误解。本文将实时中间件定义为分布式实时应用的支撑平台,为分布实时应用的时间可预测性提供使能机制及服务。本文建立的概念体系回答了实时中间件同实时系统、实时操作系统之间的关系,指出实时中间件要为应用提供表达时间约束的机制并提供控制各种资源的手段和方法,以保证时间约束的实现。 2.本文提出了一个层次的实时中间件体系结构,并且针对实时中间件体系结构的有效性分析,提出了基于排队模拟方法的实时中间件的FP排队模型。通过排队模拟,获得对请求时间约束产生影响的因素。对这些因素的深入分析,验证了本文所提出的体系结构的有效性及合理性。 3.当前的实时中间件在处理异构平台差异时往往使用Ad hoc的方式。本文提出了基于实时基础设施(实时抽象层)的解决方法。实时基础设施提供一致的线程接口、相同的线程调度语义,并且能够避免线程互斥时发生优先级翻转,能够对网络和I/O进行实时优化。实时基础设施有利于降低实时中间件的开发和维护的难度,符合软件构件化、模块化的思想。 4.针对各种操作系统的差异,本文提出了基于优先级继承协议的线程级防优先级翻转算法,提出了能够严格保序的动态优先级映射方法及相关的调度算法,通过研究固定优先级调度下的多线程执行顺序问题,本文还提出了一种执行顺序可预测的多线程程序设计模式。 5.针对不同操作系统调度语义的差异,本文将软实时调度器同线程库相结合,提出了具有定制调度能力、并能够扩展操作系统的优先级和调度能力的自调度线程库。有关自调度线程库设计实现的关键技术和思想在本文中有深入探讨。 6.基于上述研究,本文采用对象管理组织OMG的CORBA技术,开发了国防科学技术大学研究生院学位论文基于优先级的实时ORB。该实时ORB具备高效的网络管理能力,自适应的优先级调整能力,拥有多级线程池和优先级队列,并对资源有很强的控制能力。通过对实时ORB和非实时ORB的对比测试,结果充分证实了本文提出的实时中间件模型及其实现的有效性。