[发明专利]记录内核异常栈及vmcore文件的方法及系统在审
申请号: | 201510726710.7 | 申请日: | 2015-10-29 |
公开(公告)号: | CN105426293A | 公开(公告)日: | 2016-03-23 |
发明(设计)人: | 高福亮 | 申请(专利权)人: | 汉柏科技有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 李相雨 |
地址: | 300384 天津市滨海新*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 记录 内核 异常 vmcore 文件 方法 系统 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种记录内核异常栈及vmcore文件的方法及系统。
背景技术
目前,网络设备(如防火墙、交换机等)一般都搭载有watchdog功能,即在系统异常或发生重大错误情况下自动重启设备,由于内核崩溃现场的内存镜像文件(vmcore文件)和异常栈信息是保存在内存中,因此,设备重启后vmcore文件和内核异常栈信息也就随之消失了,而内核异常栈信息是解决内核bug必不可少的且至关重要的信息,有时需要把内核异常栈或内核崩溃现场vmcore文件发给后端研发人员定位,以解决内核异常问题。
但是,现有技术中,并没有记录内核异常栈和内核崩溃现场vmcore文件的实现方案,也无法确定内核发生异常的时间,设备重启后内核异常栈及vmcore文件就丢失了。
因此,如何实现自动记录并保存内核异常栈和内核崩溃现场vmcore文件,以便于文件导出及定位内核异常原因,实现内核异常问题的定位,成为目前急需解决的问题之一。
发明内容
针对现有技术方案存在的问题和不足,本发明提供了一种记录内核异常栈及vmcore文件的方法及系统,解决了现有技术中无法在linux内核出问题的第一时间记录内核异常栈及vmcore文件的问题。
根据本发明的一个方面,提供了一种记录内核异常栈及vmcore文件的方法,该方法包括:
当系统内核出现异常时,所述系统内核触发捕获内核启动;
所述捕获内核生成所述系统内核崩溃现场的内存镜像文件vmcore;
在所述捕获内核启动过程中,所述捕获内核从所述vmcore中提取带有调试信息的内核异常栈信息,生成文本形式的内核异常信息文件,并将所述内核异常信息文件存储到预设存储介质,以及
对所述vmcore进行压缩,并将压缩后的vmcore存储到所述预设存储介质。
其中,在所述捕获内核从所述vmcore中提取带有调试信息的内核异常栈信息之前,还包括:
所述捕获内核挂载所述预设存储介质。
其中,所述捕获内核从所述vmcore中提取带有调试信息的内核异常栈信息,生成文本形式的内核异常信息文件,并将所述内核异常信息文件存储到预设存储介质,包括:
获取当前系统时间;
从所述vmcore中提取带有调试信息的内核异常栈信息;
根据所述内核异常栈信息生成以所述当前系统时间为标识的文本形式的内核异常信息文件;
将所述内核异常信息文件保存到所述预设存储介质。
其中,所述根据所述内核异常栈信息生成以所述当前系统时间为标识的文本形式的内核异常信息文件,包括:
根据所述内核异常栈信息生成以所述当前系统时间命名的文本形式的内核异常信息文件;或
将所述当前系统时间作为内核异常发生时间记录在所述文本形式的内核异常信息文件中。
其中,所述方法还包括:
所述系统内核预先配置用于加载所述捕获内核的内存空间;
在所述系统内核启动时,所述系统内核采用kexec加载所述捕获内核到所述预设内存空间。
其中,在所述系统内核启动之前,还包括:
所述系统内核预先将所述kexec的可执行文件和所述捕获内核的镜像文件配置到所述系统内核的内核文件系统中。
根据本发明的另一个方面,提供了一种记录内核异常栈及vmcore文件的系统,该系统包括:
系统内核,用于当系统内核出现异常时,触发捕获内核启动;
捕获内核,用于生成所述系统内核崩溃现场的内存镜像文件vmcore;
所述捕获内核,还用于从所述vmcore中提取带有调试信息的内核异常栈信息,生成文本形式的内核异常信息文件,并将所述内核异常信息文件存储到预设存储介质,以及对所述vmcore进行压缩,并将压缩后的vmcore存储到所述预设存储介质。
其中,所述捕获内核,还用于在从所述vmcore中提取带有调试信息的内核异常栈信息之前,挂载所述预设存储介质。
其中,所述系统内核,还用于预先配置用于加载所述捕获内核的内存空间,并在所述系统内核启动时,采用kexec加载所述捕获内核到所述预设内存空间。
其中,所述系统内核,还用于在启动之前,预先将所述kexec的可执行文件和所述捕获内核的镜像文件配置到所述系统内核的内核文件系统中。
本发明的有益效果为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于汉柏科技有限公司,未经汉柏科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510726710.7/2.html,转载请声明来源钻瓜专利网。