[发明专利]基于龙芯服务器的Linux操作系统崩溃转储的处理方法有效
申请号: | 201210437092.0 | 申请日: | 2012-11-05 |
公开(公告)号: | CN102929747A | 公开(公告)日: | 2013-02-13 |
发明(设计)人: | 张路波 | 申请(专利权)人: | 中标软件有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 北京聿宏知识产权代理有限公司 11372 | 代理人: | 钟日红;张宇峰 |
地址: | 200030 上海市徐汇*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 服务器 linux 操作系统 崩溃 处理 方法 | ||
技术领域
本发明涉及操作系统技术领域,尤其涉及一种基于龙芯服务器的Linux操作系统崩溃转储的处理方法。
背景技术
随着国家对自主可控的不断重视,国产MIPS构架的龙芯处理器得到越来越深入的推广。解决其软件支持能力的问题显得越来越重要,特别是支持在其上运行Linux操作系统。
然而,目前虽然已经支持Linux操作系统,但在其上运行的Linux系统在崩溃时的内核崩溃转储功能却仍未实现,该功能的缺失导致在MIPS架构的龙芯处理器上运行的Linux系统出现崩溃时,内核开发人员无法使用应用工具分析崩溃时的内存的现场信息来定位系统崩溃的原因,在没有系统崩溃时的现场信息的情况下,内核开发人员找出并解决系统的崩溃原因将是十分困难的。
虽然目前运行在X86、Powerpc、Arm、Alpha等体系架构下的Linux系统已经支持系统崩溃时的崩溃转储服务(简称kdump服务),但由于MIPS体系架构与其它几种体系结构之间有很多不同之处,因此在Linux系统发生崩溃时,就无法实现崩溃转储功能。
发明内容
本发明所要解决的技术问题之一是需要提供一种基于龙芯服务器的Linux操作系统崩溃转储的处理方法。
为了解决上述技术问题,本发明提供了一种基于龙芯服务器的Linux操作系统崩溃转储的处理方法,该方法包括:
在所述龙芯服务器加电开机时,所述龙芯服务器的输入输出系统的内核引导程序传递参数并启动所述Linux操作系统的系统内核,其中,所述参数包括用于为所述Linux操作系统的捕捉内核配置存储空间的参数;
开启所述Linux操作系统的崩溃转储服务,所述崩溃转储服务将所述捕捉内核的映像文件和启动参数加载至所述存储空间中;
在所述Linux操作系统的系统内核发生崩溃时,执行所述Linux操作系统的处理器控制所述捕捉内核启动,并将发生崩溃的所述系统内核的内存镜像存储为转储文件;
重新启动所述龙芯服务器上的Linux操作系统的系统内核,对所述转储文件进行分析,以查找到前一次所述Linux操作系统的系统内核发生崩溃的原因,其中,
运行在所述龙芯服务器上的所述Linux操作系统的系统内核支持所述崩溃转储服务,所述Linux操作系统的捕捉内核支持所述龙芯服务器的MIPS架构。
根据本发明另一方面的处理方法,在对所述Linux操作系统的系统内核进行编译时,在内核选项中选择CONFIG_KEXEC_CRASH、CONFIG_KEXEC、CONFIG_SYSFS和CONFIG_DEBUG_INFO选项,以使得所述Linux操作系统的系统内核支持所述崩溃转储服务。
根据本发明另一方面的处理方法,在对所述Linux操作系统的捕捉内核进行编译时,在内核选项中去掉CONFIG_NUMA和CONFIG_SMP选项,加上CONFIG_CRASH_DUMP选项,以使得所述Linux操作系统的捕捉内核支持所述龙芯服务器的MIPS架构。
根据本发明另一方面的处理方法,所述崩溃转储服务将所述捕捉内核的映像文件和启动参数加载至所述存储空间中的步骤中,进一步包括以下步骤:
所述崩溃转储服务程序执行/etc/init.d/kdump脚本;
所述/etc/init.d/kdump脚本执行kexec工具的kexec命令,将所述捕捉内核的映像文件和启动参数加载至所述存储空间中,
其中,所述kexec命令包括四个kexec段,这四个段分别为:crash kernel的映像文件段;传递给crash kernel命令行信息段;standard kernel内存信息内容、vmcoreinfo文件、各个处理器信息段;存放备份数据的备份区域段;
其中,对kexec工具中获取当前运行的操作系统的内存区域列表部分进行修改,并且根据所述龙芯服务器的MIPS架构的内存物理地址布局图对所述四个kexec段的起始地址进行修改。
根据本发明另一方面的处理方法,在所述Linux操作系统的系统内核发生崩溃时,执行所述Linux操作系统的处理器控制所述捕捉内核启动的步骤中进一步包括以下步骤,
所述Linux操作系统进入所述系统内核的崩溃处理程序中,所述处理器控制所述龙芯服务器上的其他处理器停止操作;
所述处理器为启动所述捕捉内核准备命令行参数和环境变量参数;
所述处理器基于所述命令行参数和所述环境变量参数,跳转至所述捕捉内核的首地址处以启动所述捕捉内核。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中标软件有限公司,未经中标软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210437092.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:节能型变频器负载测试系统
- 下一篇:倒T形网络型可编程控制器实训装置