首页 > 其他分享 >什么是coredump

什么是coredump

时间:2024-03-25 11:03:15浏览次数:34  
标签:core 00 什么 coredump 转储 内存 进程

什么是 coredump
介绍
在 Linux 开发中,我们经常听到程序员说我的程序 core 掉了,通常出现这类的问题是低级 bug 中的内存访问越界、使用空指针、堆栈溢出等情况。使程序运行过程中异常退出或者终止,满足这些条件就会产生 core 的文件。

为什么会发生 Coredump
Core 是内存的意思,这个词源自很早以前制造内存的材料,一直延用到现在,当程序运行过程中检测到异常程序异常退出时, 系统把程序当前的内存状况存储在一个 core 文件中, 叫 core dumped,也就信息转储,操作系统检测到当前进程异常时将通过信号的方式通知目标进程相应的错误信息,常见的信号有 SIGSEGV,SIGBUS 等,默认情况下进程接收到相应的信号都有相应的处理机制。

coredump 文件的存储位置
我们知道在 Linux 系统中,如果进程崩溃了,系统内核会捕获到进程崩溃信息,然后将进程的 coredump 信息写入到文件中,这个文件名默认是 core 。存储位置与对应的可执行程序在同一目录下,文件名是 core,大家可以通过下面的命令看到 core 文件的存在位置:

cat /proc/sys/kernel/core_pattern|/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e %P %I %h
Core_pattern 的格式:

%p 转储过程的 PID
%u (数字)转储进程的实际 UID
%G (数字)转储过程的实际 GID
%s 引起转储的信号数
%t 转储时间,表示为自 1970 年 1 月 1 日 00:00:00 +0000(UTC)以来的秒数
%H 主机名(与 uname(2)返回的节点名相同)
%e 可执行文件名(无路径前缀)
%E 可执行文件的路径名,用斜杠(’/’)替换为感叹号(’!’)。
%C 崩溃过程的核心文件大小软资源限制(自 Linux 2.6.24 开始)

标签:core,00,什么,coredump,转储,内存,进程
From: https://www.cnblogs.com/helloopenGauss/p/18093939

相关文章

  • 为什么会出现段错误
    为什么会出现段错误?介绍一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址、访问了系统保护的内存地址、访问了只读的内存地址等等情况。这里贴一个对于“段错误”的准确定义(参考Answers.com):Asegmentationfault(oftenshorte......
  • 什么是栈溢出
    什么是栈溢出?介绍了解栈溢出,首先要了解什么是栈。栈是一种典型的先进后出(FirstinLastOut)的数据结构,其操作主要有压栈(push)与出栈(pop)两种操作。进栈(PUSH):将一个数据放入栈里叫进栈(PUSH),相当于在扑克牌的在最上面放了一张新的扑克牌。出栈(POP):将一个数据从栈里取出叫......
  • Linux脚本首行中的#!是什么作用?为文件指定解释器
    起因今天和小伙伴日常在群内吹水的时候,有群友问了这样一个问题:脚本文件第一行加个#!/usr/bin/bash有什么用呢?其实,除了这种之外,还有很多其他写法,比如:#!/bin/bash#!/usr/bin/envbash#!/bin/awk这些写法大同小异,但很多同学像我一样,在之前编写shell脚本的时候顺手就抄过......
  • Drop 、Delete、Truncate的区别是什么
    Drop、Delete、Truncate的区别是什么?DROP删除表结构和数据,truncate和delete只删除数据truncate操作,表和索引所占用的空间会恢复到初始大小;delete操作不会减小表或索引所占用的空间;drop操作释放表或索引的占用空间。truncate和drop是DDL,操作立即生效,delete是DML,......
  • 高校科研院所开展“强化学习”和“人形机器人”、“大模型”方向的研究的最大障碍是什
    本文的title看上去像是在发牢骚,实际却是讨论一个现实的问题,那就是未来人工智能在科研院所开展的可行性的分析。因为自己曾在东北某海边985读博士,最后虽然是结业没有学位,但是这些年的工作和时间花销却是实实在在的,因此对这个问题还是有些话说的。本文所提的三个方向被认为是未......
  • 传统FTP存在哪些问题?为什么一定要进行FTP替代?
    FTP在文件传输领域,可算是一位老大哥了!早出现于1970年代,那个时候,它是解决文件传输问题的最佳方案了,但是对着网络的发展,以及企业的需求变化,传统的FTP的问题就逐渐凸显出来了,所以很多企业开始寻找FTP替代的产品。我们先来看看传统FTP有哪些优势,可以风靡怎么多年:1、简单易用:FTP是......
  • 什么是Linux?它与其他操作系统有何区别?
    什么是Linux?它与其他操作系统有何区别?什么是Linux?它与其他操作系统有何区别?摘要引言正文内容了解LinuxLinux与其他操作系统的区别开放性多样性安全性......
  • AI每日一问:世界的本源是什么?是原子的吗?无限可分的吗?是物质的还是想象的? 我们应当怎样
    1.世界的本源是什么?是原子的吗?无限可分的吗?是物质的还是想象的?我们应当怎样看待物质世界?以及怎么快速促进强人工智能的到来?Claude-3-Opus这些都是非常深奥而有趣的哲学问题,需要我们深入探讨和思考。关于世界本源的问题,不同的哲学流派有不同的看法。原子论认为物质世界......
  • 上海阿里云代理商:阿里数据连接解决方案拿来干什么用
    目录上海阿里云代理商:阿里数据连接解决方案拿来干什么用引言数据连接解决方案概览技术优势分析实际应用场景客户成功案例结论与展望上海阿里云代理商:阿里数据连接解决方案拿来干什么用简介:飞机@luotuoemo本文由(阿里云国际站代理商:【聚搜云】www.4526.cn)撰写引......
  • 100天精通风控建模(原理+Python实现)——第23天:风控建模中的贝叶斯优化是什么?怎么实现
    在当今风险多变的环境下,风控建模已经成为金融机构、企业等组织的核心工作之一。在各大银行和公司都实际运用于业务,用于营销和风险控制等。本文以视频的形式阐述风控建模中的召回率是什么,怎么实现。并提供风控建模原理和Python实现文章清单。  之前已经阐述了100天精通风......