dump文件可以在程序crash时,方便我们查看程序crash的地方和上下文信息。在window下,要能生成dump文件,需要自己编写相应的代码。不过现在网上可以找到相应的代码,只要把它下载后然后加到自己的工程中去,就可以了!

在linux下面就简单的许多。只要打开相应的开关,linux会自动在程序crash时生成相应的core文件。这个文件和window下的dump文件类似。

下面是简单的一些步骤:

1.查看当前是否已经打开了此开关

通过命令:ulimit -c 如果输出为 0 ,则代表没有打开。如果为unlimited则已经打开了,就没必要在做打开。

2.通过命令打开

ulimit -c unlimited .然后通过步骤1,可以监测是否打开成功。

3.如果你要取消,很简单:ulimit -c 0 就可以了

通过上面的命令修改后,一般都只是对当前会话起作用,当你下次重新登录后,还是要重新输入上面的命令,所以很麻烦。我们可以把通过修改 /etc/profile文件 来使系统每次自动打开。

步骤如下:

1.首先打开/etc/profile文件

一般都可以在文件中找到 这句语句:ulimit -S -c 0 > /dev/null 2>&1.ok,根据上面的例子,我们只要把那个0 改为 unlimited 就ok了。然后保存退出。

2.通过source /etc/profile 使当期设置生效。

3.通过ulimit -c 查看下是否已经打开。

其实不光这个命令可以加入到/etc/profile文件中,一些其他我们需要每次登录都生效的都可以加入到此文件中,因为登录时linux都会加载此文件。比如一些环境变量的设置。

还有一种方法可以通过修改/etc/security/limits.conf文件来设置,这个方法没有试过,也是网上看到。不过上面两种就可以了!

最后说一下生成core dump文件的位置,默认位置与可执行程序在同一目录下,文件名是core.***,其中***是一个数字。core dump文件名的模式保存在/proc/sys/kernel/core_pattern中,缺省值是core。通过以下命令可以更改core dump文件的位置(如希望生成到/tmp/cores目录下)

echo “/tmp/cores/core” > /proc/sys/kernel/core_pattern

设置完以后我们可以做个测试,写个程序,产生一个异常。然后看到当前目录会有个core*的文件。然后我们可以

gdb core。*  程序  进行调试。

解决linux下不生成core dump文件

core dump的概念: A core dump is the recorded state of the working memory of a computer program at a spe ...

Linux下如何生成core dump 文件(解决segment fault段错误的问题)

Linux下的C程序常常会因为内存访问等原因造成segment fault(段错误),如果此时core dump 的功能是打开的,在运行我们的可执行程序时就会生成一个名为core的文件,然后我们就可以 ...

Linux使用笔记: 定制core dump文件的文件名

在开发过程中,当一个Linux程序异常退出时,我们可以通过core文件来分析它异常的详细原因.缺省情况下,Linux在程序异常时不产生core文件,要想让程序异常退出时产生core dump文件,需要 ...

【linux】linux下对java程序生成dump文件,并使用IBM Heap Analyzer进行分析,查找定位内存泄漏的问题代码

1.首先,java程序启动在linux,怎么生成dump文件? 1>第一步,首先你需要得到java程序的PID,最简单的方法使用如下命令 ps -ef|grep java 或者如果是docker ...

Linux下如何打开img镜像文件

有些镜像文件为IMG格式,在Linux如何打开呢?例如从微软dreampark下载的Windows Server 2008 R2镜像文件,使用file命令查看: $ file chs_windows_ ...

linux下生成core dump文件方法及设置【转】

转自:http://blog.csdn/mrjy1475726263/article/details/44116289 源自:http://andyniu.iteye/blog/196 ...

linux下生成core dump文件方法

core 文件的简单介绍 当程序运行的过程中异常终止或崩溃,操作系统会将程序当时的内存状态记录下来,保存在一个文件中,这种行为就叫做Core Dump(中文有的翻译成“核心转储”).我们可以认为 co ...

Linux 下如何产生core文件(core dump设置)

转自:https://blog.csdn/star_xiong/article/details/43529637 今天在Linux下调试C程序时,出现段错误,习惯性的ls下当前目录,发现没有生 ...

linux下生成core dump文件方法及设置

linux下生成core dump文件方法及设置    from:http://www.cppblog/kongque/archive/2011/03/07/141262.html core ...

随机推荐

搭建TFS 2015 Build Agent环境(三)

在配置时,一定要注意下面的几个地方: 1.项目集合生成服务账号 中一定要包含: 2.Build Agent机器上防止Agent的路径一定要短,不要出现特殊字符,比如:C:\Agent 3.一定要安装V ...

Solr Cloud - SolrCloud

关于 Solr Cloud Zookeeper 入门,介绍 原理 原封不动转自 http://wiki.apache/solr/SolrCloud/ ,文章的内存有些过时,但是了解原理. Th ...

JavaScript高级程序设计笔记 事件冒泡和事件捕获

1.事件冒泡 要理解事件冒泡,就得先知道事件流.事件流描述的是从页面接收事件的顺序,比如如下的代码:

click me! & ...

AspectJ基础学习之二搭建环境(转载)

AspectJ基础学习之二搭建环境(转载) 一.下载Aspectj以及AJDT 上一章已经列出了他的官方网站,自己上去download吧.AJDT是一个eclipse插件,开发aspectj必装,他可 ...

tomcat7 1000并发量配置 tomcat7配置优化

修改tomcat/conf/server.xml配置文件.

更多推荐

Linux core日志怎么打开,linux 下如何打开core dump文件开关