CN104899111A - 一种处理家庭网关系统内核崩溃的方法及系统 - Google Patents

一种处理家庭网关系统内核崩溃的方法及系统 Download PDF

Info

Publication number
CN104899111A
CN104899111A CN201510311687.5A CN201510311687A CN104899111A CN 104899111 A CN104899111 A CN 104899111A CN 201510311687 A CN201510311687 A CN 201510311687A CN 104899111 A CN104899111 A CN 104899111A
Authority
CN
China
Prior art keywords
information
kernel
kernel panic
panic
abnormal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510311687.5A
Other languages
English (en)
Other versions
CN104899111B (zh
Inventor
赵伟
周转运
王志军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201510311687.5A priority Critical patent/CN104899111B/zh
Publication of CN104899111A publication Critical patent/CN104899111A/zh
Application granted granted Critical
Publication of CN104899111B publication Critical patent/CN104899111B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种处理家庭网关系统内核崩溃的方法及系统,涉及Linux内核异常处理技术领域。该方法包括以下步骤:在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量;读取每个寄存器指针变量中的内核崩溃信息,并将其保存至全局缓冲区;将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹;根据系统的内核崩溃状态打印异常提示信息至系统终端,用户根据异常提示信息及Flash存储器内的内核崩溃信息进行调试。本发明能在不依赖串口的情况下,完整地捕获内核崩溃信息,处理过程高效、便捷,且复用性高。

Description

一种处理家庭网关系统内核崩溃的方法及系统
技术领域
本发明涉及Linux内核异常处理技术领域,具体来讲是一种处理家庭网关系统内核崩溃的方法及系统。
背景技术
Linux系统是一种基于POSIX(Portable Operating System Interfaceof Unix,可移植操作系统Unix)和Unix的多用户、多任务、多线程和多CPU的操作系统。如今,已经有许多硬件设备安装了完整版本或裁减版本的Linux系统,例如家庭网关,手机,平板电脑,计算机,大型服务器等。
基于Linux的家庭网关作为一款三网融合的用户侧终端产品,应用越来越广泛,需求也越来越多。开发者在进行驱动开发或用户在应用产品时,时常会碰到一些内核崩溃(Kernel Panic)的现象。所谓的内核崩溃,是指操作系统监测到内部的致命错误,并无法安全处理此错误时采取的动作。这个概念主要被限定在Unix以及类Unix系统中,对于Microsoft Windows系统,等同的概念通常被称为蓝屏死机。
目前,当家庭网关出现内核崩溃现象时,Linux内核会立即将一些异常打印信息(oops信息)通过串口输出到控制台或者屏幕,完成输出后,家庭网关的串口输入输出功能即会失效(因为系统已经崩溃)。此时,开发者(或用户)就只能通过控制台或者屏幕上的异常打印信息进行内核崩溃信息的捕获及问题调试。但是,上述处理方法在解决实际问题时,还是存在以下缺陷:
(1)该处理方法必须基于出现内核崩溃前就已经接上有效串口。若内核崩溃前未及时接上串口或串口故障,因为系统已经崩溃无法进行任何有效输入输出,所以系统根本无法将oops信息进行有效输出,开发者(或用户)无法在没有oops信息的基础上进行内核崩溃信息的捕获,进而无法准确定位问题所在。
(2)该处理方法中,oops信息仅能一次性输出到控制台或者屏幕上,关掉电源后无法进行再次查看,开发者(或用户)只能通过手抄或者拍照的方式来记录,操作比较困难;与此同时,由于屏幕只能显示一页Oops信息(因为无法通过输入输出来调整显示的信息),因此当Oops信息过多时,根本无法显示完整的内容,缺少完整的oops信息也就无法进一步进行处理。
综上所述,设计一种不依赖串口来处理内核崩溃的方法,是目前基于Linux的家庭网关亟待解决的技术问题。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种处理家庭网关系统内核崩溃的方法及系统,能在不依赖串口的情况下,完整地捕获内核崩溃信息,处理过程高效、便捷,且复用性高。
为达到以上目的,本发明提供一种处理家庭网关系统内核崩溃的方法,包括以下步骤:
A、在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量,转到步骤B;
B、读取每个寄存器指针变量中的内核崩溃信息,内核崩溃信息的读取顺序依次为异常地址信息、最后返回的地址信息、CPU寄存器状态值和CPU寄存器调用过的内核函数的信息;将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区,转到步骤C;
C、将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹,转到步骤D;
D、根据系统的内核崩溃状态打印异常提示信息至系统终端;用户根据异常提示信息及Flash存储器内的内核崩溃信息进行调试,结束。
在上述技术方案的基础上,步骤A之前包括以下步骤:初始化一个用于禁止本地中断、禁止内核抢占的自旋锁;步骤C与D之间包括以下步骤:将自旋锁进行释放。
在上述技术方案的基础上,步骤C具体包括以下步骤:在Flash存储器中指定需要写入文件夹的名称和路径;根据内核崩溃信息的起始地址、字节数大小,将全局缓冲区中所有的内核崩溃信息写入到指定文件夹中。
在上述技术方案的基础上,步骤D所述根据系统的内核崩溃状态打印异常提示信息至系统终端,具体包括以下步骤:读取CPU的状态,判断当前CPU是否处于中断条件,若是,打印中断异常提示信息至系统终端;否则,休眠3~8秒,打印非中断异常提示信息至系统终端。
在上述技术方案的基础上,步骤B中,读取CPU寄存器调用过的内核函数的信息的具体步骤包括:利用寄存器指针变量查询当前CPU任务的内存地址;以该内存地址为索引,在存放所有内核函数的内核符号表中进行查找,获取调用过的内核函数的名字、内核函数的大小,调用到内核函数中的配置地址。
在上述技术方案的基础上,步骤A具体包括以下步骤:在当前系统正在运行的堆栈中记录寄存器指针变量;根据所述堆栈中存储的上一级调用函数的栈指针回溯至上一级堆栈,记录上一级堆栈内的寄存器指针变量;依次回溯,直至记录所有堆栈的寄存器指针变量,转到步骤B。
在上述技术方案的基础上,步骤B中所述将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区的具体步骤为:将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区的最后。
本发明还提供一种实现上述方法的处理家庭网关系统内核崩溃的系统,包括寄存器指针变量记录模块、内核崩溃信息捕获模块、内核崩溃信息写入模块和提示信息打印模块;
所述寄存器指针变量记录模块用于:在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量;向内核崩溃信息捕获模块发送捕获信号;
所述内核崩溃信息捕获模块用于:收到捕获信号后,读取每个寄存器指针变量中的内核崩溃信息,内核崩溃信息的读取顺序依次为异常地址信息、最后返回的地址信息、CPU寄存器状态值和CPU寄存器调用过的内核函数的信息;将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区;向内核崩溃信息写入模块发送写入信号;
所述内核崩溃信息写入模块用于:收到写入信号后,将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹;向提示信息打印模块发送打印信号;
所述提示信息打印模块用于:收到打印信号后,根据系统的内核崩溃状态打印异常提示信息至系统终端。
在上述技术方案的基础上,所述提示信息打印模块包括处理模块和打印模块;
所述处理模块用于:读取CPU的状态,判断当前CPU是否处于中断条件下,若是,发送中断异常打印信号;否则,发送非中断异常打印信号;
所述打印模块用于:收到中断异常打印信号后,打印中断异常提示信息至系统终端;收到非中断异常打印信号后,休眠3~8秒,打印非中断异常提示信息至系统终端。
在上述技术方案的基础上,该系统还包括自旋锁控制模块,所述自旋锁控制模块用于:在寄存器指针变量记录模块开始记录前,初始化一个用于禁止本地中断、禁止内核抢占的自旋锁;在内核崩溃信息写入后、异常提示信息打印前,释放自旋锁。
本发明的有益效果在于:
(1)本发明中,在家庭网关系统出现内核崩溃时,是将所捕获到的完整的内核崩溃信息写入到Flash存储器的指定文件夹中,而不是按照传统的方式将信息通过串口输出到控制台或者屏幕。与现有技术中只能依赖串口进行内核崩溃信息的输出相比,本发明能够在不使用串口的情况下对内核崩溃信息进行完整的保存,并能在关掉电源后(或重启后)通过Flash存储器的指定文件夹进行反复查看,复用性高,不仅方便开发者(或用户)快速解决内核崩溃问题,而且能够降低家庭网关设备的制造成本及维护成本。
(2)本发明对内核崩溃信息进行捕获时,会在出现异常的CPU寄存器内,通过回溯的方式记录下所有堆栈的寄存器指针变量,利用寄存器指针变量中的异常地址信息(epc信息)、最后返回的地址信息(ra信息)、CPU寄存器状态值以及CPU寄存器调用过的内核函数的信息,从而捕获到所有的内核崩溃信息,整个处理过程高效、便捷。
(3)本发明中,在进行内核崩溃信息的捕获之前,会初始化一个用于禁止本地中断、禁止内核抢占的自旋锁,该自旋锁使得所要获取的内核崩溃信息是在一个系统资源稳定状态下获取的,从而保证了所获取的内核崩溃信息的准确性、可靠性。
(4)本发明中,在完成捕获、保存内核崩溃信息后,会对CPU的状态进行判断,从而区分内核崩溃是发生在CPU中断条件下还是非中断条件下,并通过打印相应的提示信息给开发者(或用户)以提示,能有助于开发者(或用户)对问题进行更好的分析与判断。
(5)本发明的适用性广,适用于大多数安装了完整版本或裁减版本的Linux系统的硬件设备。
附图说明
图1是本发明实施例中处理家庭网关系统内核崩溃的方法的流程图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
本实施例的实施环境为基于Linux操作系统,内核版本为Linux2.6.18且CPU为MIPS架构的家庭网关设备。
参见图1所示,本发明实施例提供一种处理家庭网关系统内核崩溃的方法,包括以下步骤:
S1:初始化一个用于禁止本地中断、禁止内核抢占的自旋锁,使将要获取的内核崩溃信息均是准确、可靠的信息,转到步骤S2。
S2:在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量,转到步骤S3。
步骤S2具体包括以下步骤:在当前系统正在运行的堆栈中记录寄存器指针变量;根据所述堆栈中存储的上一级调用函数的栈指针回溯至上一级堆栈,记录上一级堆栈内的寄存器指针变量;依次回溯,直至记录所有堆栈的寄存器指针变量,转到步骤S3。
S3:读取每个寄存器指针变量中的内核崩溃信息,内核崩溃信息的读取顺序依次为异常地址信息、最后返回的地址信息、CPU寄存器状态值和CPU寄存器调用过的内核函数的信息;将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区,转到步骤S4。
步骤S3中,读取CPU寄存器调用过的内核函数的信息的具体步骤包括:利用寄存器指针变量查询当前CPU任务的内存地址;以该内存地址为索引,在存放所有内核函数的内核符号表(kallsys.map)中进行查找,获取调用过的内核函数的名字、内核函数的大小,调用到内核函数中的配置地址。
步骤S3中,将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区时,是以append形式进行保存的,即将内核崩溃信息保存在全局缓冲区的最后。
S4:将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹,转到步骤S5。
步骤S4具体包括以下步骤:在Flash存储器中指定需要写入文件夹的名称和路径;根据内核崩溃信息的起始地址、字节数大小,将全局缓冲区中所有的内核崩溃信息写入到指定文件夹中。
S5:将步骤S1中的自旋锁进行释放,转到步骤S6。
S6:读取CPU的状态,判断当前CPU是否处于中断条件,若是,转到步骤S7;否则转到步骤S8。
S7:打印中断异常提示信息至系统终端,用户根据中断异常提示信息及Flash存储器内的内核崩溃信息进行调试,结束。
该中断异常提示信息用于:提示开发者(或用户),在CPU中断条件下出现了内核崩溃。实际操作时,可打印一行“Fatal exception ininterrupt”作为该中断异常提示信息。
S8:休眠3~8秒后,打印非中断异常提示信息至系统终端,用户根据非中断异常提示信息及Flash存储器内的内核崩溃信息进行调试,结束。
非中断条件下,先通过休眠3~8秒后再进行打印操作,可以确保上述步骤S4中的信息成功已全部写入到Flash存储器中,然后再进行打印。本实施例中,休眠时间优选为5秒。
该非中断异常提示信息用于:提示开发者(或用户),在CPU未中断条件下出现了内核崩溃。实际操作时,可打印一行“Fatal exception”作为该非中断异常提示信息。
本发明实施例还提供一种实现上述方法的处理家庭网关系统内核崩溃的系统,包括寄存器指针变量记录模块、内核崩溃信息捕获模块、内核崩溃信息写入模块、提示信息打印模块以及自旋锁控制模块。
寄存器指针变量记录模块用于:在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量;向内核崩溃信息捕获模块发送捕获信号。
内核崩溃信息捕获模块用于:收到捕获信号后,读取每个寄存器指针变量中的内核崩溃信息,内核崩溃信息的读取顺序依次为异常地址信息(epc信息)、最后返回的地址信息(ra信息)、CPU寄存器状态值和CPU寄存器调用过的内核函数的信息;将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区;向内核崩溃信息写入模块发送写入信号。
内核崩溃信息写入模块用于:收到写入信号后,将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹;向提示信息打印模块发送打印信号。
提示信息打印模块用于:收到打印信号后,根据系统的内核崩溃状态打印异常提示信息至系统终端。该提示信息打印模块包括处理模块和打印模块;
处理模块用于:读取CPU的状态,判断当前CPU是否处于中断条件下,若是,发送中断异常打印信号;否则,发送非中断异常打印信号;
打印模块用于:收到中断异常打印信号后,打印中断异常提示信息至系统终端;收到非中断异常打印信号后,休眠3~8秒,打印非中断异常提示信息至系统终端。
自旋锁控制模块用于:在寄存器指针变量记录模块开始记录前,初始化一个用于禁止本地中断、禁止内核抢占的自旋锁;在内核崩溃信息写入后、异常提示信息打印前,释放自旋锁。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (10)

1.一种处理家庭网关系统内核崩溃的方法,其特征在于,包括以下步骤:
A、在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量,转到步骤B;
B、读取每个寄存器指针变量中的内核崩溃信息,内核崩溃信息的读取顺序依次为异常地址信息、最后返回的地址信息、CPU寄存器状态值和CPU寄存器调用过的内核函数的信息;将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区,转到步骤C;
C、将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹,转到步骤D;
D、根据系统的内核崩溃状态打印异常提示信息至系统终端;用户根据异常提示信息及Flash存储器内的内核崩溃信息进行调试,结束。
2.如权利要求1所述的处理家庭网关系统内核崩溃的方法,其特征在于:步骤A之前包括以下步骤:初始化一个用于禁止本地中断、禁止内核抢占的自旋锁;步骤C与D之间包括以下步骤:将自旋锁进行释放。
3.如权利要求1所述的处理家庭网关系统内核崩溃的方法,其特征在于,步骤C具体包括以下步骤:在Flash存储器中指定需要写入文件夹的名称和路径;根据内核崩溃信息的起始地址、字节数大小,将全局缓冲区中所有的内核崩溃信息写入到指定文件夹中。
4.如权利要求1所述的处理家庭网关系统内核崩溃的方法,其特征在于:步骤D所述根据系统的内核崩溃状态打印异常提示信息至系统终端,具体包括以下步骤:读取CPU的状态,判断当前CPU是否处于中断条件,若是,打印中断异常提示信息至系统终端;否则,休眠3~8秒,打印非中断异常提示信息至系统终端。
5.如权利要求1所述的处理家庭网关系统内核崩溃的方法,其特征在于:步骤B中,读取CPU寄存器调用过的内核函数的信息的具体步骤包括:利用寄存器指针变量查询当前CPU任务的内存地址;以该内存地址为索引,在存放所有内核函数的内核符号表中进行查找,获取调用过的内核函数的名字、内核函数的大小,调用到内核函数中的配置地址。
6.如权利要求1所述的处理家庭网关系统内核崩溃的方法,其特征在于:步骤A具体包括以下步骤:在当前系统正在运行的堆栈中记录寄存器指针变量;根据所述堆栈中存储的上一级调用函数的栈指针回溯至上一级堆栈,记录上一级堆栈内的寄存器指针变量;依次回溯,直至记录所有堆栈的寄存器指针变量,转到步骤B。
7.如权利要求1所述的处理家庭网关系统内核崩溃的方法,其特征在于:步骤B中所述将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区的具体步骤为:将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区的最后。
8.一种实现权利要求1至7中任一项所述方法的处理家庭网关系统内核崩溃的系统,其特征在于:包括寄存器指针变量记录模块、内核崩溃信息捕获模块、内核崩溃信息写入模块和提示信息打印模块;
所述寄存器指针变量记录模块用于:在系统内核崩溃后出现异常的CPU寄存器内,查找并记录与当前系统对应的所有堆栈的寄存器指针变量;向内核崩溃信息捕获模块发送捕获信号;
所述内核崩溃信息捕获模块用于:收到信息捕获信号后,读取每个寄存器指针变量中的内核崩溃信息,内核崩溃信息的读取顺序依次为异常地址信息、最后返回的地址信息、CPU寄存器状态值和CPU寄存器调用过的内核函数的信息;将所有寄存器指针变量中的内核崩溃信息均保存至全局缓冲区;向内核崩溃信息写入模块发送写入信号;
所述内核崩溃信息写入模块用于:收到写入信号后,将全局缓冲区中所有的内核崩溃信息写入到Flash存储器的指定文件夹;向提示信息打印模块发送打印信号;
所述提示信息打印模块用于:收到打印信号后,根据系统的内核崩溃状态打印异常提示信息至系统终端。
9.如权利要求8所述的处理家庭网关系统内核崩溃的系统,其特征在于:所述提示信息打印模块包括处理模块和打印模块;
所述处理模块用于:读取CPU的状态,判断当前CPU是否处于中断条件下,若是,发送中断异常打印信号;否则,发送非中断异常打印信号;
所述打印模块用于:收到中断异常打印信号后,打印中断异常提示信息至系统终端;收到非中断异常打印信号后,休眠3~8秒,打印非中断异常提示信息至系统终端。
10.如权利要求8所述的处理家庭网关系统内核崩溃的系统,其特征在于:该系统还包括自旋锁控制模块,所述自旋锁控制模块用于:在寄存器指针变量记录模块开始记录前,初始化一个用于禁止本地中断、禁止内核抢占的自旋锁;在内核崩溃信息写入后、异常提示信息打印前,释放自旋锁。
CN201510311687.5A 2015-06-09 2015-06-09 一种处理家庭网关系统内核崩溃的方法及系统 Active CN104899111B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510311687.5A CN104899111B (zh) 2015-06-09 2015-06-09 一种处理家庭网关系统内核崩溃的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510311687.5A CN104899111B (zh) 2015-06-09 2015-06-09 一种处理家庭网关系统内核崩溃的方法及系统

Publications (2)

Publication Number Publication Date
CN104899111A true CN104899111A (zh) 2015-09-09
CN104899111B CN104899111B (zh) 2018-03-20

Family

ID=54031788

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510311687.5A Active CN104899111B (zh) 2015-06-09 2015-06-09 一种处理家庭网关系统内核崩溃的方法及系统

Country Status (1)

Country Link
CN (1) CN104899111B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354575A (zh) * 2016-08-12 2017-01-25 中国航空工业集团公司西安飞行自动控制研究所 一种基于堆栈追溯的故障排查装置和方法
WO2018010600A1 (zh) * 2016-07-11 2018-01-18 中兴通讯股份有限公司 异常处理方法及装置和计算机存储介质
CN107704356A (zh) * 2017-06-12 2018-02-16 平安科技(深圳)有限公司 异常堆栈信息获取方法、装置及计算机可读存储介质
WO2018036318A1 (zh) * 2016-08-26 2018-03-01 中兴通讯股份有限公司 一种在操作系统启动阶段收集异常信息的方法及装置
CN108959085A (zh) * 2018-06-25 2018-12-07 清华大学 一种检测内核模块在原子上下文中休眠错误的方法及系统
CN109189612A (zh) * 2018-09-04 2019-01-11 广东小天才科技有限公司 一种Linux内核异常时的日志处理方法及电子设备
CN110874279A (zh) * 2018-08-29 2020-03-10 阿里巴巴集团控股有限公司 故障定位方法、装置和系统
CN111240898A (zh) * 2020-01-09 2020-06-05 中瓴智行(成都)科技有限公司 一种基于Hypervisor的黑匣子实现方法及系统
CN111241027A (zh) * 2019-12-25 2020-06-05 上海亮牛半导体科技有限公司 硬件msgbox实现双核SOC核间软件系统高效通信的结构及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1524230A (zh) * 2001-06-22 2004-08-25 英特尔公司 利用地址调用定序来控制有源存储器总线外围设备的方法与设备
CN103106132A (zh) * 2013-03-05 2013-05-15 中标软件有限公司 Linux系统崩溃时内核函数调用栈分析调试方法
US20140237192A1 (en) * 2011-10-31 2014-08-21 Huawei Technologies Co., Ltd. Method and apparatus for constructing memory access model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1524230A (zh) * 2001-06-22 2004-08-25 英特尔公司 利用地址调用定序来控制有源存储器总线外围设备的方法与设备
US20140237192A1 (en) * 2011-10-31 2014-08-21 Huawei Technologies Co., Ltd. Method and apparatus for constructing memory access model
CN103106132A (zh) * 2013-03-05 2013-05-15 中标软件有限公司 Linux系统崩溃时内核函数调用栈分析调试方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
洪永学: "Linux内核调试技术的方法研究", 《电子测试》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018010600A1 (zh) * 2016-07-11 2018-01-18 中兴通讯股份有限公司 异常处理方法及装置和计算机存储介质
CN106354575A (zh) * 2016-08-12 2017-01-25 中国航空工业集团公司西安飞行自动控制研究所 一种基于堆栈追溯的故障排查装置和方法
WO2018036318A1 (zh) * 2016-08-26 2018-03-01 中兴通讯股份有限公司 一种在操作系统启动阶段收集异常信息的方法及装置
CN107704356B (zh) * 2017-06-12 2019-06-28 平安科技(深圳)有限公司 异常堆栈信息获取方法、装置及计算机可读存储介质
CN107704356A (zh) * 2017-06-12 2018-02-16 平安科技(深圳)有限公司 异常堆栈信息获取方法、装置及计算机可读存储介质
US11010227B2 (en) 2017-06-12 2021-05-18 Ping An Technology (Shenzhen) Co., Ltd. Exception stack information acquisition method and device and computer-readable storage medium
CN108959085A (zh) * 2018-06-25 2018-12-07 清华大学 一种检测内核模块在原子上下文中休眠错误的方法及系统
CN108959085B (zh) * 2018-06-25 2020-09-01 清华大学 一种检测内核模块在原子上下文中休眠错误的方法及系统
CN110874279A (zh) * 2018-08-29 2020-03-10 阿里巴巴集团控股有限公司 故障定位方法、装置和系统
CN110874279B (zh) * 2018-08-29 2023-05-30 阿里巴巴集团控股有限公司 故障定位方法、装置和系统
CN109189612A (zh) * 2018-09-04 2019-01-11 广东小天才科技有限公司 一种Linux内核异常时的日志处理方法及电子设备
CN111241027A (zh) * 2019-12-25 2020-06-05 上海亮牛半导体科技有限公司 硬件msgbox实现双核SOC核间软件系统高效通信的结构及方法
CN111241027B (zh) * 2019-12-25 2023-08-15 上海亮牛半导体科技有限公司 硬件msgbox实现双核SOC核间软件系统高效通信的结构及方法
CN111240898A (zh) * 2020-01-09 2020-06-05 中瓴智行(成都)科技有限公司 一种基于Hypervisor的黑匣子实现方法及系统
CN111240898B (zh) * 2020-01-09 2023-08-15 中瓴智行(成都)科技有限公司 一种基于Hypervisor的黑匣子实现方法及系统

Also Published As

Publication number Publication date
CN104899111B (zh) 2018-03-20

Similar Documents

Publication Publication Date Title
CN104899111A (zh) 一种处理家庭网关系统内核崩溃的方法及系统
CN101377750B (zh) 一种用于机群容错的系统和方法
JP6333410B2 (ja) 障害処理方法、関連装置、およびコンピュータ
Bouteiller et al. Redesigning the message logging model for high performance
US20060212754A1 (en) Multiprocessor system
CN104704478B (zh) 输入/输出错误遏制事件后的恢复
CN109656895B (zh) 分布式存储系统、数据写入方法、装置和存储介质
CN103927240A (zh) 应对软件崩溃的信息转储方法和装置
CN103064770B (zh) 双进程冗余瞬时故障容错方法
CN105183576B (zh) 一种用于嵌入式olt崩溃后收集异常信息的方法和系统
CN105159819B (zh) 一种记录内核异常栈及调试信息的方法及系统
CN103984622B (zh) 基于Linux的GPON ONU设备的日志管理方法及装置
CN102929761B (zh) 一种应对崩溃性错误的系统及方法
US20210247901A1 (en) Sd card hot plugging identification method, sd card identification module and electronic device
US20120311206A1 (en) Facilitating processing in a communications environment using stop signaling
US8726102B2 (en) System and method for handling system failure
WO2020094063A1 (zh) 存储数据的方法、装置、存储介质及电子装置
CN105868038A (zh) 内存错误处理方法及电子设备
US8984336B1 (en) Systems and methods for performing first failure data captures
JP2003091429A (ja) データ一括保護システム
CN113850664A (zh) 一种数据异常检测方法及数据上报服务
EP3084609B1 (en) Method, system and architecture for bus transaction logger
US7770054B2 (en) Apparatus, system, and method to prevent queue stalling
CN110851332A (zh) 一种日志文件的处理方法、装置、设备和介质
JPH08335206A (ja) 疎結合多重計算機システムにおけるトランザクション自動復旧システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant