论文部分内容阅读
可信性作为对系统提供服务的信赖程度,已经成为一个重要的研究课题。操作系统作为计算机系统的重要组成部分,也是可信性研究的主要对象之一。目前,提高计算机操作系统可信性主要从可靠性、容错性等方面入手。
生存性是另外一种可用于提高系统可信性的方向,它强调对系统内关键服务和一般服务区别对待。嵌入式实时操作系统作为实时系统的重要组成部分,在各个方面对整个实时系统都产生着重要的影响,要从根本上提高系统的生存性,同样需要操作系统提供一定的可生存机制予以支持。本文从生存性思想出发,旨在设计一种可生存的单处理器实时操作系统。
本文借鉴生存性在信息网络系统领域的成果,结合实时系统的特点,研究了单机实时系统的生存性理论,给出了其定义和测定方法。然后在现有技术的基础上,运用冗余和非精确计算模型的思想,分析、设计并实现了一种可生存操作系统的任务管理机制。该任务管理机制将系统内的任务分为关键任务和一般任务,在保障系统内关键任务顺利执行的同时,尽量提高系统效用,并且支持检查点技术以便用一般任务的资源为关键任务提供冗余支持。该机制的设计主要包括两个部分:任务调度和对进程备份恢复的支持。
任务调度主要规定了系统如何接收关键任务和一般任务并且确定其相应的执行顺序。文中引入了关键级和优先级两个参数,其中关键级用来区分关键任务与一般任务,优先级用来确定调度先后顺序。系统总是在保障关键任务执行的前提下再考虑调度一般任务。对于系统接收任务的判定,分成了两种情况加以讨论,再用二分查找法寻求近似最优结果。
进程的备份恢复可以用于在关键任务执行出错后,回卷到前一检查点并且再次执行,而不必完全从头开始以节约资源。操作系统具有对回卷恢复的支持是非常必要的。
根据以上的设计,本文在分析现有Linux系统内核的基础上,讲述了如何将其实现在Linux操作系统上,并进行了移植。
最后通过实验分析得出结论,基本达到从整体上提高系统生存性的设计目的。