摘要:通常在程序挂掉的时候我们会catch 他们挂掉的signal,然后在signal中打印出当时的一个stack,来方便问题调查;
但是在stack overflow的情况发生时,会没有拿到stack
原因是signal的stack也是建立在thread的调用栈上的,
在overflow的情况下,stack没有足够的空间来执行signal处理函数,signal处理函数就会被忽略
阅读全文
06 2014 档案
摘要:通常在程序挂掉的时候我们会catch 他们挂掉的signal,然后在signal中打印出当时的一个stack,来方便问题调查;
但是在stack overflow的情况发生时,会没有拿到stack
原因是signal的stack也是建立在thread的调用栈上的,
在overflow的情况下,stack没有足够的空间来执行signal处理函数,signal处理函数就会被忽略
阅读全文
摘要:程序由于收到某些特定的signal之后终止了,终止过程中会产生core文件,
core文件中包含了程序终止时的内存的状态,这个过程就是core dump。
使用gdb工具结合可执行程序和debug symbol就能够查训到只要是类unix系统,都有这个机制。
具体哪些signal会时程序产生 core dump文件,这个可以通过man 7 signal查看。
阅读全文
|