【linux学习指南】Linux进程信号产生(三) 硬件异常&&除零出错?&&野指针异常?&&core文件

?前言

硬件异常被硬件以某种⽅式被硬件检测到并通知内核,然后内核向当前进程发送适当的信号。例如当前进程执⾏了除以0的指令,cpu的运算单元会产⽣异常,内核将这个异常解释为sigfpe信号发送给进程。再⽐如当前进程访问了⾮法内存地址,mmu会产⽣异常,内核将这个异常解释为sigsegv信号发送给进程。

?模拟除0

【linux学习指南】Linux进程信号产生(三) 硬件异常&&除零出错?&&野指针异常?&&core文件

代码语言:javascript代码运行次数:0运行复制

#include <iostream>#include <string>#include <sys>#include <unistd.h>#include <wait.h>int main(){    if(fork() == 0)    {        sleep(1);        int a = 10;        a /= 0;        exit(0);    }    int status = 0;    waitpid(-1, &amp;status, 0);    printf("exit sinal: %d, core dump: %dn", status&amp;0x7F,(status&gt;&gt;7)&amp;1);        return 0;}</wait.h></unistd.h></sys></string></iostream>

登录后复制

文章来自互联网,只做分享使用。发布者:,转转请注明出处:https://www.dingdanghao.com/article/850979.html

(0)
上一篇 2025-05-06 21:07
下一篇 2025-05-06 21:35

相关推荐

联系我们

在线咨询: QQ交谈

邮件:442814395@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信公众号