[发明专利]存储和恢复应用运行时状态有效
申请号: | 201110448219.4 | 申请日: | 2011-12-28 |
公开(公告)号: | CN103092777A | 公开(公告)日: | 2013-05-08 |
发明(设计)人: | C·凯凯;A·科利;S·E·斯特恩斯;K·H·雷厄森;C·W·小梅福德;A·M·安德森 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F12/16 | 分类号: | G06F12/16;G06F9/50 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 张欣 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储 恢复 应用 运行 状态 | ||
技术领域
本发明涉及存储和恢复应用运行时状态。
背景技术
出于许多原因,服务器场中的服务器机器的维护可能非常困难。例如,当信息技术(“IT”)管理员需要对服务器机器执行维护操作时,通常必须在服务器计算机上运行的操作系统能够关闭之前关闭所有用户会话。为了正确地关闭用户会话,IT管理员必须关闭在这些会话中执行的所有用户应用。如果用户不能够以有序的方式关闭他们的应用,则未保存的数据可能丢失。以这种方式丢失数据对用户和IT管理员来说都是极其令人沮丧的。
此处所做出的本公开正是关于这些和其他考虑事项而提出的。
发明内容
此处描述了用于存储和恢复应用的运行时状态的技术。通过此处所公开的概念和技术的实现,正在执行的应用的运行时状态可独立于该应用在其上执行的操作系统的运行时状态而被捕捉和保存。然后可对该应用在其上执行的计算机执行维护操作。该应用的运行时状态还可被移动到另一计算机以对该计算机的处理负载进行负载平衡。一旦完成了维护操作之后,可还原该应用的运行时状态并可将该应用的执行恢复到该应用在该运行时状态被捕捉的时刻所处的状态。以此方式,可执行维护操作而不会丢失未保存的应用数据。
根据此处所呈现的一个方面,接收存储在计算机上执行的应用的运行时状态的请求。例如,IT管理员可做出这样的请求。响应于接收到这样的请求,挂起该应用的执行,并且独立于该应用正在其上执行的操作系统而收集该应用的运行时状态。该运行时状态可包括物理和虚拟存储器的内容、中央处理单元(“CPU”)寄存器、以及指令指针。该运行时状态还可包括系统资源、用户界面(“UI”)资源、以及网络连接的状态。该运行时状态还可包括当收集该运行时状态时正在被该应用使用的任何文件资源。一旦收集了该运行时状态之后,保持该运行时状态,诸如通过将该运行时状态保存到大容量存储设备中。
在已保持了该运行时状态之后,可对该应用在其上执行的计算机执行维护操作。例如,可对该计算机的硬件或该应用在其上执行的操作系统执行维护操作。此外,可将该应用的状态移至另一计算机。这可能是被期望的,例如,以对该应用在其上执行的计算机的处理负载进行负载平衡。
一旦完成了该维护操作之后,可接收重新启动该应用的执行的执行的请求(诸如从IT管理员)。为了重新启动该应用的执行,还原该应用的运行时状态。例如,可还原存储器的内容、寄存器、以及指令指针。还可还原系统资源、UI资源和网络连接的状态。如果该运行时状态中包括文件资源,则还可还原该文件资源。一旦还原了该应用的运行时状态之后,可从该执行被挂起的点处重新启动该应用的执行。以此方式,该应用可返回到在该应用的执行被挂起的时刻该应用所处的状态。
根据另一方面,提供用于翻译从该应用接收的对于在保持该应用的运行时状态之后已修改的资源的请求的代理层。例如,如果应用恰在捕捉该应用状态之前利用一网络端口号,该网络端口号在恢复该应用的执行时不可用,则该代理层将在对该应用已知的网络端口号和新的网络端口号之间进行翻译。其他类型的翻译还可对改变了名字、号、位置、或其他标识信息的其他类型的资源执行。
应当理解的是,此处公开的实施例可与虚拟化应用、在硬件虚拟化环境中执行的非虚拟化应用、在非虚拟化环境中执行的非虚拟化应用、以及其它类型的应用结合使用。应当理解,本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在将本概述用来限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。
附图说明
图1是示出用于此处公开的各实施例的一个说明性操作环境的计算机软件体系结构图;
图2是示出根据此处公开的一个实施例的用于存储和恢复应用的运行时状态的此处公开的若干软件组件的方面的计算机软件体系结构图;
图3是示出在此处公开的一个实施例中利用的已存储的应用运行时状态的内容的数据结构图;
图4是示出根据此处呈现的一个实施例的用于捕捉和保持应用的运行时状态的此处公开的一个说明性过程的方面的流程图;
图5是示出根据此处呈现的一个实施例的用于还原所捕捉和保持的应用的运行时状态的此处公开的一个说明性过程的方面的流程图;
图6是示出在此处公开的一个实施例中用于翻译应用请求的代理层的方面的计算机软件体系结构图;
图7是示出在一个实施例中利用此处公开的用于存储和恢复应用的运行时状态的技术来在两个计算机系统之间迁移正在执行的应用的说明性例程的流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110448219.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能家庭安防装置
- 下一篇:一种计算机键盘