[发明专利]程序运行方法、装置、设备以及存储介质在审
申请号: | 201810670779.6 | 申请日: | 2018-06-26 |
公开(公告)号: | CN110716758A | 公开(公告)日: | 2020-01-21 |
发明(设计)人: | 李成龙 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F8/61 |
代理公司: | 11452 北京展翼知识产权代理事务所(特殊普通合伙) | 代理人: | 屠长存 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 进程 运行时 程序处理 程序启动 程序运行 存储介质 加载程序 快速启动 快照进程 时间减少 运行状态 直接启动 重新构建 资源文件 保存 初始化 磁盘 跳过 内存 响应 恢复 | ||
1.一种程序运行方法,其特征在于,包括:
在程序启动过程中,使用进程加载程序所需的资源文件的至少一部分之后的时刻,保存所述进程的运行时,以得到所述进程的镜像进程;以及
响应于所述程序的下一次启动,对所述镜像进程进行恢复,以得到与所述时刻对应的进程的运行状态一致的进程实体。
2.根据权利要求1所述的程序运行方法,其特征在于,还包括:
响应于所述程序的下一次启动,判断是否存在可用的镜像进程;以及
在判定存在可用的镜像进程的情况下,执行所述对镜像进程进行恢复的步骤。
3.根据权利要求1所述的程序运行方法,其特征在于,所述保存进程的运行时的步骤包括:
获取所述进程当前的运行时状态;
基于所述运行时状态,收集所述进程中的线程上下文;以及
根据所述线程上下文,逐个将所述进程中的每个线程以及信号量写入文件并保存,以得到所述镜像进程。
4.根据权利要求3所述的程序运行方法,其特征在于,所述收集所述进程中的线程上下文的步骤包括:
将所述运行时状态形成参数列表传递到内核;
由内核根据所述参数列表创建并调用进程实体;以及
由内核收集当前调用的进程实体中的线程上下文,作为所述进程中的线程上下文。
5.根据权利要求1所述的程序运行方法,其特征在于,所述对镜像进程进行恢复的步骤包括:
对所述镜像进程进行解析,以得到运行时结构;
根据所述运行时结构,创建进程结构;以及
根据创建的进程结构,生成所述进程实体。
6.根据权利要求1所述的程序运行方法,其特征在于,
所述运行时包括进程当前运行状态下所对应的元素。
7.根据权利要求6所述的程序运行方法,其特征在于,所述元素包括:
堆栈;
寄存器;
内存布局;以及
信号量。
8.根据权利要求1所述的程序运行方法,其特征在于,还包括:
在应用层中注册回调及错误处理机制,用于在保存所述进程的运行时出现错误的情况下,进行回调及错误处理。
9.一种程序运行方法,其特征在于,包括:
响应于程序的启动,判断是否存在与所述程序对应的镜像进程;
在判定存在与所述程序对应的镜像进程的情况下,基于所述镜像进程构建进程实体;以及/或者
在判定不存在与所述程序对应的镜像进程的情况下,使用进程加载所述程序所需的资源文件,并在所述进程加载所述程序所需的资源文件的至少一部分之后的时刻,保存所述进程的运行时,以得到所述进程的镜像进程。
10.一种程序运行装置,其特征在于,包括:
镜像进程生成模块,用于在程序启动过程中,使用进程加载程序所需的资源文件的至少一部分之后的时刻,保存所述进程的运行时,以得到所述进程的镜像进程;以及
镜像进程恢复模块,用于响应于所述程序的下一次启动,对所述镜像进程进行恢复,以得到与所述时刻对应的进程的运行状态一致的进程实体。
11.根据权利要求10所述的程序运行装置,其特征在于,还包括:
判断模块,用于响应于所述程序的下一次启动,判断是否存在可用的镜像进程,
在所述判断模块判定存在可用的镜像进程的情况下,所述镜像进程恢复模块对所述对镜像进程进行恢复。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810670779.6/1.html,转载请声明来源钻瓜专利网。