论文部分内容阅读
传统计算机体系结构中,操作系统内核作为最底层软件,一旦崩溃将导致整个系统失败,所有运行其上的应用程序都将失去维护自身状态和继续运行的机会。在传统的进程恢复技术中,有些需要周期性地记录进程的状态,在系统崩溃发生后将进程回滚到一个可用的状态,但这种技术不仅开销太大,而且无法恢复进程至崩溃时的执行状态(最后状态),对于许多实时和交互式应用而言没有实用价值。有些恢复技术需要修改大量的系统内核和应用程序代码,透明性很差,而且在系统内核崩溃之后很难保证他们还能运行,系统不稳定,没有安全性。针对以上问题,本文在研究相关技术之后,提出了一种基于Xen的进程保持与恢复系统,XenPR(Xen Process Recover)。该系统利用Xen虚拟机管理器的隔离特性,在操作系统主内核之外维护一个可运行的小型内核,小内核可以在主内核崩溃后接管运行其上的进程,XenPR利用Xen VMM比之Guest OS高一运行等级的优势,可以较容易的获取进程的执行状态,以此把进程状态信息保存成可执行文件,并支持在主内核重启之后通过此文件继续运行该进程。XenPR平时处于假死状态,且被隔离保护起来,在系统正常运行中不占用系统资源,耗资少且隔离性和安全性比较高,而且XenPR通过Xen VMM可以比较方便的查看和获取Guest OS的环境,不需要去修改大量的Guest OS内核和应用程序代码,具有较高的透明性,相关实验证明,XenPR可以减少系统失败造成的计算损失,提高程序运行时的可靠性和可用性。