论文部分内容阅读
计算机被越来越多应用到关系国计民生的重要领域中,计算机系统的可靠性和容错能力也随之变得越发重要,承载着关键作用的计算机操作系统是不允许被任意中断的。在整个软件体系架构中,操作系统是基础层和关键层,它的可靠性将直接影响到上层应用软件的正确执行,因此如何提高操作系统的可靠性和容错能力成为提高软件性能的关键问题之一。另一方面由于操作系统上层应用程序的功能不断强大,操作系统本身也变得庞大和复杂,避免操作系统的安全隐患也是当前被广泛关注的焦点。操作系统内存崩溃的修复是针对以上两个方面提出来的,但是由于操作系统的繁琐和复杂,在具体的实现上会遇到一些障碍。本文分析了遇到的困难和障碍,提出了一种基于系统虚拟化技术,在现有的操作系统上实现对系统内存崩溃情况进行修复的方法。对操作系统的内存崩溃进行修复,是一个“判断-操作”的过程。首先,如何判断操作系统出现了内存崩溃的问题,根据操作系统的哪些参数,设定怎样的条件,都需要仔细研究得出结果。其次,如果操作系统的内存已经崩溃,那么操作系统已经不具备处理能力,怎样在内存崩溃的时候,还能有能力进行修复。综上所述,提出了一种基于系统虚拟化技术,在现有的操作系统上实现对系统内存崩溃情况进行修复的方法。这种方法不存在远程修复技术对网络的依赖问题,同时也克服了本地修复存在的局限性。依据该方法,我们以开源虚拟机监控器Xen以及Linux操作系统为基础实现了名为XF修复原型系统,通过实现在虚拟机监控器中的修复系统,能在较短时间内对崩溃的操作系统内存进行修复。同时在性能测试方面,添加了修复功能的系统相对于同等条件下的原系统只会造成可以接受的性能损失。