6、core dump 故障分析

时间:2020-12-19 23:39:04

Core Dump-定义
Core Dump又叫核心转存。当程序在运行过程中发生异常, 这时Linux系统可以把程序出错时的内存内容存储在一个core文件中, 这种过程叫Core Dump。

  Segment fault

Core Dump主要用来对付什么样的错误呢?

  Segment fault
Linux应用程序在运行过程中,经常会遇到Segment fault(段错误) 这样的错误。产生这样错误的原因通常有:

  • 数组访问越界
  • 访问空指针
  • 栈溢出
  • 修改只读

Core Dump-使能
  在Linux系统中,默认是关闭core dump功能的,但是可以通过来ulimit命令打开/关闭core dump功能。


  打开:ulimit -c unlimited
  关闭:ulimit -c 0

Core文件分析

发生core dump之后, 可以使用gdb进行查看core文件的内容, 以定位程序出错的位置.

  用法:gdb 程序名 core文件名
  例: gdb ./test core.12525