论文部分内容阅读
硬实时系统的一个关键因素在于时间上系统必须具有可预测性,系统必须确保每个实时任务在限定的时间内完成。而正确的可调度性分析是建立可预测的硬实时系统的重要手段之一。与无容错需求的实时系统相比,容错硬实时系统具有及时响应、高可靠性、效率高和容错能力强等特征,容错实时系统的特点为可调度性分析的研究提出了新的要求,这样就需要对原有的硬实时系统的可调度性分析进行容错方面的扩充,以进一步提高其在容错硬实时系统中的实际应用水平,使其能更好地同时满足硬实时和容错的需求。针对现有基于截止期限小于周期的容错硬实时任务模型的两种容错优先级分配策略——容错优先级继承策略和允许容错优先级提高策略在提高容错实时系统的容错能力存在的缺陷,通过对截止期限小于周期的容错硬实时任务进行基于最坏响应时间的可调度性分析,提出了一种允许容错优先级降低的分配策略,以便挪用高优先级任务的空闲时间来处理低优先级任务的容错,从而保证出错的任务满足截止期限的要求;并且根据这种分配策略的性质,设计了改进的容错优先级分配搜索算法IFPCS(Improved Fault-Tolerant Priority Configuration Search Algorithm)。经过研究分析和实验验证,在继承和提高两种容错优先级分配策略无法提高系统的容错能力的情况下,合理地降低任务的容错优先级,能够有效地提高容错实时系统的容错能力。虽然容错优先级提高分配策略和容错优先级降低分配策略在一定程度上能解决在容错优先级继承分配策略下任务不可调度的问题,但是这两种分配策略都只是单一地提高或降低容错优先级。基于这一原因,进一步分析了这三种容错优先级分配策略在提高系统容错能力的不足,提出了一种容错优先级混合分配策略,既允许容错优先级提高又允许容错优先级降低,并基于任务最坏响应时间分析,设计了在这种容错优先级混合分配策略下的容错优先级混合式分配搜索算法FPCMS(Fault-Tolerant Priority Configuration Mixed Search Algorithm)。实验结果验证了在提高系统容错能力方面,容错优先级混合分配策略均优于上述三种分配策略。为了使容错硬实时任务模型更具典型性,所进行的可调度性分析结果能够适用于各种容错实时系统,特别是实时通信系统和分布式系统中,解除了以往容错硬实时任务的可调度性分析中对任务截止期限不能大于对应周期的限制。当截止期限任意值时,任务在完成第一次激活之前,可能会被第二次激活。这就意味着任务的第二次激活不仅仅会被高优先级任务抢占,而且也会被第一次激活打断执行。因此,通过分析任务的一系列激活的响应时间来分析这种任务模型在容错优先级继承策略和容错优先级提高策略下的任务可调度性。经研究分析和实例验证,采取容错优先级提高策略,能够有效地提高任务的可调度性。最后根据容错优先级提高策略,设计了基于截止期限任意值的容错硬实时任务模型的容错优先级分配搜索算法。现有的静态优先级调度算法都假定系统优先级个数无限多,而实际上底层系统支持的优先级个数是有限的。通过对优先级有限时的容错硬实时任务进行可调度性分析,提出了一种合适的解决方案来提高任务的可调度能力。这个方法主要的思想是允许任务的替代任务在更高的系统优先级上来恢复故障,这样能更好地挪用高系统优先级上的空闲时间。为了比较在不同容错优先级分配策略下优先级有限时容错硬实时任务的可调度性,引入了“相对可调度饱和度”的概念来作为评价所讨论的优先级有限时容错硬实时任务可调度性的指标。经过研究分析和实验验证,与容错优先级继承策略相比,允许容错优先级合理地提高,能够有效地提高系统的可调度能力。为了满足高可靠性实时系统的应用需求,对RTLinux实时操作系统进行了容错实时性改造。首先,采取了基于主/副版本技术的容错模型,对实时线程控制块进行了重新定义;其次,根据先前提出的基于最坏相应时间的容错任务可调度性分析实现了基于FPCMS算法的容错实时任务分析器;最后,给出了容错实时任务的设计框架。