core dump(介绍,status中的core dump标志,应用--调试),ulimit命令

目录

core dump(核心转储)

引入

介绍 

core dump标志 

引入

介绍

应用 -- gdb调试

注意点 

ulimit命令

-a

-c

示例 -- core file大小问题


core dump(核心转储)

引入

  • 我们可以看到,不同的signal对应不同的编号和action:
  • 其中action主要分为term和core
  • term就是终止的意思
  • 而core是什么呢?

介绍 

  • 在进程由于某些错误(如段错误)而终止时,操作系统可能会生成core转储文件
  • (其实就是,如果被发送带有core属性的信号,就会产生core文件)
  • 这个文件包含了进程在崩溃时的内存映像,可以用于调试
  • 该文件大小可以被设置
  • 如果文件大小为0,即使应该发生核心转储,也不会生成core文件

core dump标志 

引入

在之前介绍wait函数时,它有一个参数status,用于保存进程退出信息:

它用bit位存储信息,其中低8位存储被信号杀死时的信息:

第8位就是core dump标志:

介绍

如果杀死它的信号带有core dump属性,就会将第8位赋为1

读取该bit位,就可以让os知道,到底要不要将该进程在内存中的核心数据转存到磁盘上

应用 -- gdb调试

void test2(){                    
   int a=1;                       
   a/=0;                          
} 

代码运行结果:

会发现它对应的就是8号信号:

生成core文件后,使用gdb调试:

直接加载core文件,可以定位到发生异常的位置:

注意点 

  • 一般生产环境中,core dump是关闭的
  • 因为如果出现问题,主机并不会直接关闭,而是重启服务
  • 但一运行就挂,一运行就挂,会产生非常多的core文件,最终可能会导致磁盘爆满
  • 而虚拟机一般是默认开启的(因为它用于测试和开发)

ulimit命令

-a

可以查看有关各种系统资源的硬资源和软资源限制的信息

-c

可以查看或设置shell 会话的核心转储文件大小限制

当前是0:

设置为1024后:

示例 -- core file大小问题

其中3号信号会发生核心转储,所以使用3为例子:

当core file 大小为0时,发送3号信号,并没有生成core文件:

不为0时:

所以可以说明,文件大小会影响最终到底有没有生成core文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/156782.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何通过数据治理来提升业务价值——业务场景治理

数据治理,一方面是为了对数据的规范管理和控制,还有一方面是让数据能够为业务提供服务和创造价值。近些年来,随着数据治理技术发生着日新月异的变化,行业对数据治理的需求和指导也被逐步推进和实践,从宏观上看&#xf…

本地MQTT协议消息服务远程连接教程介绍

Mosquitto是一个开源的消息代理,它实现了MQTT协议版本3.1和3.1.1。它可以在不同的平台上运行,包括Windows、Linux、macOS等。mosquitto可以用于物联网、传感器、移动应用程序等场景,提供了一种轻量级的、可靠的、基于发布/订阅模式的消息传递…

AI视频检索丨历史视频标签化,助力重要事件高效溯源

随着科技的不断发展,安全监控已成为我们生活中不可或缺的一部分。当发生盗窃、人员走失、安全事故等重要事件时,常常需要通过查看视频回放了解事情经过,为解决问题提供证据或指明查找方向。但是,人工查看视频回放往往费时费力&…

神话走入现实——再生医学

返老还童,躯体再生这些古人所描绘的神话,有可能在未来成为现实。 诱导多能干细胞(induced pluripotent stem cells, iPSCs)是将一系列诱导因子导入到成熟体细胞中,并重编程为具有类似胚胎干细胞特征的一种多能干细胞,这意味着iPS…

RTMP服务器搭建

1、流媒体 基本概念 流媒体(Streaming media),也叫做:流式媒体。 是指将一连串的多媒体数据压缩后,经过互联网分段发送数据,在互联网上即时传输影音以供观赏的一种技术与过程此技术使得数据包可以像流水…

13.Oracle通过JDBC连接Java

Oracle通过JDBC连接Java 一、什么是JDBC二、Oracle通过JDBC连接Java1、导入jar包1.1 下载jar包1.2 将jar包导入到java项目中1.3编译jar包 2、连接数据库2.1 编写jdbc工具类2.2 对数据进行基本操作 一、什么是JDBC JDBC(Java Database Connectivity)是Jav…

深度学习YOLO安检管制物品识别与检测 - python opencv 计算机竞赛

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络4 Yolov55 模型训练6 实现效果7 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习YOLO安检管制误判识别与检测 ** 该项目较为新颖,适合作为竞赛课题方向&…

跨越边界:虚拟直播间席卷各行业领域,引爆下一代直播风暴

随着直播的发展和元宇宙概念浪潮的快速席卷,虚拟直播正在成为当下备受瞩目的热门直播形式。各个领域和品类都开始打造虚拟直播间,并展现出了迅猛的增长势头。接下来就带大家看看vLive虚拟直播在各个领域中的应用及其成功案例。 目前常见的虚…

Android App 启动流程学习

App启动 壹、App启动流程图贰、流程图详细解读2.1、系统操作Zygote 进程的孵化应用资源和类加载App在启动后立即显示应用的空白启动窗口创建应用进程 2.2、进程开始步骤3、ActivityThread 被加载到内存中步骤3.2、ActivityThread.main()步骤4、ActivityManagerService.attachAp…

事务死锁排查

记一次 事务死锁的排查过程 首先使用 SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;可以查看当前数据库所有事务状态 使用 SHOW ENGINE INNODB STATUS可以查看一些事务状态 可以看出 trxId 565678168 锁住了 invoice表, 使用命令杀掉对应mysql线程&#xff0…

高标准农田数字孪生

高标准农田是指通过土地整治、土壤改良、水利设施、农电配套、机械化作业等措施,提升农田质量和生产能力,达到田块平整、集中连片、设施完善、节水高效、宜机作业、土壤肥沃、生态友好、抗灾能力强、与现代农业生产和经营方式相适应的旱涝保收、稳产高产…

element-china-area-data插件vue3做省市区的下拉选择,用3个独立的el-select实现

第1版,选择下拉没有优化 第2版,选择下拉时,做了优化

接口测试到底怎么做,5分钟时间看完这篇文章彻底搞清楚

01、通用的项目架构 02、什么是接口 接口:服务端程序对外提供的一种统一的访问方式,通常采用HTTP协议,通过不同的url,不同的请求类型(GET、POST),不同的参数,来执行不同的业务逻辑。…

代码随想录算法训练营第五十六天 | LeetCode 647. 回文子串、516. 最长回文子序列、动态规划总结

代码随想录算法训练营第五十六天 | LeetCode 647. 回文子串、516. 最长回文子序列、动态规划总结 文章链接:回文子串、最长回文子序列、动态规划总结 视频链接:回文子串、最长回文子序列 1. LeetCode 647. 回文子串 1.1 思路 本题是给个字符串 s 求里面…

浏览器插件在content_script和top窗口之间进行消息通信

为什么要进行消息通信? content_script和top窗口之间除了DOM共享之外,window对象是不共享的。如果content_script需要获得top窗口中window对象的数据,就需要使用到通信。反之,也是相同的情况。 1、自定义监听事件(推荐…

装机必备!这5款免费软件,你值得拥有!

​ 目前win7渐渐退出视野,大部分人都开始使用win10了,笔者在日常的工作和使用中,为了能够让效率的大提升,下载了不少软件,以下的软件都是个人认为装机必备,而且都是可以免费下载。 1.屏幕亮度调节——Twin…

运维知识点-Windows操作系统cmd/Dos批处理命令与脚本手册bat

Windows操作系统命令与脚本总结 管理员权限:添加账号并加入管理员组添加用户至远程桌面组允许修改密码 防火墙 :关闭防火墙 匹配出注册表信息中的软件:获取完整补丁信息(比systeminfo全):获取系统和版本信息显示本地或…

敲敲云与简道云流程设计引擎对比:选择更适合您的产品

在当今数字化时代,流程管理和自动化变得越来越重要。作为APaaS服务的两个知名产品,敲敲云和简道云都提供了流程设计引擎,帮助企业实现高效的流程管理。然而,在比较两者之后,您可能会发现敲敲云在多个方面具有优势&…

YOLOV8目标识别——详细记录从环境配置、自定义数据、模型训练到模型推理部署

一、概述 Yolov8建立在Yolo系列历史版本的基础上,并引入了新的功能和改进点,以进一步提升性能和灵活性。Yolov8具有以下特点: 高效性:Yolov8采用了新的骨干网络、新的Ancher-Free检测头和新的损失函数,可在CPU到GPU的…

【JVM】Java虚拟机

本文主要介绍了JVM的内存区域划分,类加载机制以及垃圾回收机制. 其实JVM的初心,就是让java程序员不需要去了解JVM的细节,它把很多工作内部封装好了.但是学习JVM的内部原理有利于我们深入理解学习Java. 1.JVM的内存区域划分 JVM其实是一个java进程 ; 每个java进程,就是一个jvm…