[发明专利]虚拟机系统崩溃现场保存的加速方法有效
申请号: | 201010130134.7 | 申请日: | 2010-03-19 |
公开(公告)号: | CN102193843A | 公开(公告)日: | 2011-09-21 |
发明(设计)人: | 陈海波;黄弋简;臧斌宇 | 申请(专利权)人: | 复旦大学 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F9/455 |
代理公司: | 上海正旦专利代理有限公司 31200 | 代理人: | 包兆宜 |
地址: | 20043*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 系统 崩溃 现场 保存 加速 方法 | ||
技术领域
本发明属计算机系统软件领域,涉及系统虚拟化技术,具体涉及一种虚拟机系统崩溃现场保存的加速方法。本发明通过提高虚拟资源分配的高效性和公平性,以及选择性地保存状态,加速虚拟机系统崩溃时的崩溃现场保存。
背景技术
现代操作系统在实现对各种硬件资源的有效管理和为应用程序提供丰富的编程接口的同时,其复杂性也随着功能的不断丰富大大增加。此外,为了实现高度灵活的功能扩展,现代操作系统采用模块化设计,使得大量不受信任的恶意第三方程序能够以系统中的最高特权级执行,造成系统不稳定。因此,操作系统本身的复杂性与模块化地任意执行第三方程序,使得操作系统的可靠性受到了影响,引发经常性的系统崩溃。这种系统崩溃发生在操作系统内部,将直接导致操作系统和其上的所有应用程序均无法继续运行,危害十分严重。
为了尽快恢复崩溃的系统,计算机系统管理员通常选择重新启动系统,以恢复软件应用服务。在理想情况下,这一时间可以缩短至数分钟,对用户影响不大。另一方面,为了防止同样的系统崩溃在将来不断发生,必须从崩溃时的系统状态分析导致崩溃的原因,再针对性地开发出系统补丁,修补系统缺陷与漏洞。为此,计算机系统管理软件提供了保存系统崩溃现场的功能。通常,系统崩溃现场保存是指将系统的内存等状态全部写入到磁盘等永久性介质中。实现系统状态保存的关键是保持系统崩溃现场的完整性,防止它在这一过程中被篡改。例如,Linux操作系统上的系统崩溃现场保存工具kexec,在系统崩溃时,利用未被崩溃的系统访问过的一块内存区域执行保存系统崩溃现场的逻辑,从而保证了崩溃系统的状态不会被破坏。再比如,在系统虚拟化环境中,虚拟机内的客户机操作系统和应用软件运行在虚拟化层提供的虚拟硬件环境里;虚拟化层提供的虚拟机管理工具实现了虚拟机内的客户机操作系统崩溃时对虚拟机系统的状态保存。为了防止状态保存过程中系统状态被修改,虚拟机管理工具独占性地访问崩溃了的虚拟机的伪物理内存,将其数据写入到磁盘中。这些工具所保存下来的系统崩溃现场,可以利用调试软件进行访问,通过数据结构挖掘技术从中分析出异常的系统状态,帮助技术人员重现崩溃的过程,找出系统崩溃的原因。
由于磁盘写入是一个耗时的输出操作,传统的系统崩溃现场保存过程十分缓慢。在系统崩溃现场保存的过程中,系统全部内存资源被系统崩溃现场保存工具所独占性访问,以便能完整地将系统崩溃时的内存数据写入到磁盘中,供将来分析系统崩溃的原因。所以,在系统崩溃现场保存的过程中,系统管理员必须等待崩溃现场的所有内存数据全部写入到磁盘之后,才能重新启动计算机,利用释放出来的内存资源恢复因系统崩溃而中断的服务。因此,执行传统的系统崩溃现场保存会造成从发生系统崩溃到系统崩溃现场保存与服务恢复结束之间的长时间内,系统无法恢复服务。这段系统服务不可访问的时间称为宕机时间。由此可见,虽然系统崩溃现场保存提供了分析系统崩溃原因的第一手资料,但是这一漫长的保存过程大大延后了系统的重新启动,使得从系统崩溃到恢复服务所需的宕机时间从原来的数分钟,增加到了数十分钟甚至更长。
发明内容
本发明的目的是克服现有技术的不足,提供一种虚拟机系统崩溃现场保存的加速方法。
本发明方法能解决如何缩短传统的虚拟机系统崩溃现场保存所造成的较长宕机时间等问题。在传统系统崩溃现场保存的过程中,只有所有内存都写入了磁盘,才能重启服务,造成内存资源无法在这一过程中至少部分地用于系统重启和服务恢复;其次,传统的系统崩溃现场保存无选择性地保存所有的内存数据,而事实上通常只有一部分内存数据才与系统崩溃的原因相关,因此造成了不必要的冗余状态保存。
通常系统崩溃以后,系统无法继续执行任何程序,所以很难执行复杂优化逻辑加速系统崩溃现场保存过程。然而在虚拟化环境中,一台虚拟机内的客户机操作系统崩溃不会导致提供虚拟硬件环境的底层虚拟机监控器和虚拟机管理工具的崩溃,所以可以利用虚拟机管理工具优化这一过程。
为解决上述问题,本发明提出了一种虚拟机系统崩溃现场保存的加速方法。具体而言,本发明针对虚拟化环境,用以下三种技术优化虚拟化环境中虚拟机崩溃现场保存的过程,缩短宕机时间:首先,利用虚拟机管理工具并行化虚拟机崩溃时虚拟机系统崩溃现场保存与服务恢复这两个过程;其次,利用虚拟机管理工具分析崩溃虚拟机的系统状态,选择性地只将被虚拟机使用过的内存写入磁盘,而不保存没有用过的虚拟机内的闲置内存;最后,使用虚拟机管理工具在并行化的虚拟机系统崩溃现场保存与服务恢复之间合理分配磁盘写入带宽,达到最小化宕机时间的目的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于复旦大学,未经复旦大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010130134.7/2.html,转载请声明来源钻瓜专利网。