[发明专利]一种内核崩溃恢复方法、装置、设备及存储介质有效
申请号: | 202010042191.3 | 申请日: | 2020-01-15 |
公开(公告)号: | CN113127263B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 丁翔 | 申请(专利权)人: | 中移(苏州)软件技术有限公司;中国移动通信集团有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 姚文娴;张颖玲 |
地址: | 215163 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内核 崩溃 恢复 方法 装置 设备 存储 介质 | ||
1.一种内核崩溃恢复方法,其特征在于,所述方法包括:
当主内核崩溃时,所述主内核控制处理器保存正在执行的正常线程的上下文;
当所述正常线程的上下文保存完成后,所述主内核在第一内存区域中初始化已加载的备用内核;其中,所述第一内存区域为所述主内核在物理内存中预留的内存区域;
当初始化完成后,所述备用内核通过访问所述主内核的内核数据结构,获得所述正常线程的上下文;
所述备用内核根据所述正常线程的上下文,恢复全部进程的运行状态;
其中,所述正常线程的上下文包括所述主内核的进程描述符链表、内存区域描述符表、虚拟内存页、文件描述符表;
对应地,所述备用内核根据所述正常线程的上下文,恢复全部进程的运行状态,包括:
所述备用内核访问所述主内核的进程描述符链表,读取待恢复的进程列表;
所述备用内核为所述待恢复的进程列表中的每一待恢复进程,创建一个新进程;
所述备用内核根据所述主内核的内存区域描述符列表的内容,在每一所述新进程中分别恢复对应的待恢复进程的用户内存空间;
所述备用内核根据所述主内核的每个虚拟内存页的内容,在每一所述新进程中分别恢复对应的待恢复进程的硬件页表和交换页表;
所述备用内核根据所述主内核的文件描述符表的内容,在每一所述新进程中恢复打开的文件。
2.根据权利要求1所述的方法,其特征在于,所述主内核控制处理器保存正在执行的正常线程的上下文之前,所述方法还包括:
处理器上电后,引导程序基于主内核文件,加载并初始化主内核;
所述主内核基于备用内核文件,在所述第一内存区域中加载备用内核;其中,所述主内核文件与所述备用内核文件中的内存偏移量不同。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述全部进程的运行状态恢复后,所述备用内核作为新的主内核运行,回收可用的物理内存;
所述新的主内核在物理内存中预留第二内存区域,并轮流基于所述主内核文件和所述备用内核文件二者之一,在所述第二内存区域中加载新的备用内核;其中,所述新的主内核对应的内核文件与所述新的备用内核对应的内核文件不同。
4.根据权利要求1所述的方法,其特征在于,
所述处理器包括正常处理器和由主内核崩溃导致崩溃的处理器;
对应地,所述当主内核崩溃时,所述主内核控制处理器保存正在执行的正常线程的上下文,包括:
当主内核崩溃时,所述主内核通过错误处理机制,控制所述崩溃的处理器向正常处理器发送不可屏蔽中断;
所述主内核控制每一所述正常处理器接收所述不可屏蔽中断后,保存正在执行的线程的上下文;
所述当所述正常线程的上下文保存完成后,所述主内核在第一内存区域中初始化已加载的备用内核,包括:
所述主内核控制每一所述正常处理器在保存完正在执行的线程的上下文后停止运行;
所述主内核检测到全部正常处理器停止后,控制所述崩溃的处理器执行所述备用内核的初始化程序,在第一内存区域中初始化已加载的备用内核。
5.根据权利要求1所述的方法,其特征在于,所述备用内核根据所述主内核的内存区域描述符列表的内容,在每一所述新进程中分别恢复对应的待恢复进程的用户内存空间,包括:
所述备用内核访问所述主内核中每一所述待恢复进程的内存区域描述符列表;
所述备用内核根据每一所述待恢复进程的内存区域描述符列表中的每一内存区域描述符,分别为对应的所述新进程创建一个具有相同属性的新内存描述符。
6.根据权利要求5所述的方法,其特征在于,所述备用内核根据所述主内核的内存区域描述符列表的内容,在每一所述新进程中分别恢复对应的待恢复进程的用户内存空间,还包括:
当所述内存区域描述符中存在内存映射文件时,所述备用内核在与所述内存区域描述符对应的新进程中打开所述文件;
所述备用内核将所述文件重新映射到所述备用内核中相应的内存区域。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移(苏州)软件技术有限公司;中国移动通信集团有限公司,未经中移(苏州)软件技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010042191.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:防制动涡轮钻具
- 下一篇:一种车道线的精度提升方法、装置及可读存储介质