深刻理解进程信号

信号的产生

继续:

接着捕捉信号

当 CPU 执行「该进程的用户代码」(比如你写的 main 函数、普通计算逻辑)时,CPU 处于用户态,我们就说 "进程运行在用户态";
当 CPU 执行「内核代码」(比如处理该进程的系统调用、中断)时,CPU 处于内核态,我们就说 "进程运行在内核态"。
这句话对应的典型流程是:
你的进程(比如./a.out)在用户态执行,触发系统调用(如read());
CPU 切换到内核态,执行内核代码(帮你的进程完成read()操作);
内核处理完系统调用后,恢复你进程的上下文(寄存器、程序计数器等);
CPU 从内核态切回用户态,继续执行你进程的用户代码(比如read()之后的指令)

接着用户态和内核态

自定义捕捉的另一种方法


完。

相关推荐
一叶龙洲8 小时前
wslg打开Ubuntu24.04默认打开图形界面
linux·服务器·数据库·ubuntu
敖行客 Allthinker10 小时前
Parallels Ubuntu虚拟机项目如何让手机访问?完整解决方案
linux·运维·ubuntu
keyipatience11 小时前
线程栈与TLS和线程互斥
java·linux·服务器·开发语言·ubuntu
元Y亨H11 小时前
生产环境监控与故障应急处理(5-5-5 标准)指南
运维
j7~11 小时前
【Linux】二十二.《Linux 信号机制完全指南:表示、捕捉与处理》
linux·信号处理·volatile·可入重函数·保存信号
踏月的造梦星球11 小时前
达梦数据库执行计划与性能分析入门:EXPLAIN、AUTOTRACE 与 ET
服务器·数据库·oracle
观山岳五楼12 小时前
Ubuntu 24 怎么使用Ubuntu 20 的镜像源
linux·运维·ubuntu
星夜夏空9912 小时前
网络编程(1)
服务器·网络
川石课堂软件测试12 小时前
安全测试|常见SQL注入攻击方式、实例及预防
服务器·数据库·sql·功能测试·测试工具·安全·单元测试
m0_7156467613 小时前
20260720
linux·arm