34 信号

看testsig代码,ctrl C 不再终止而是去执行获得信号

man 7 sigal 查看特定符号详细信息,里面有信号的默认动作

后台通过kill -9 pid

当运行一个进程时候,这是前台,再输入命令,子进程没调scanf所以输不到,&变成后台,输入这时候给bash。就能显示,

ctrl C把父子进程同时杀掉,如果父进程先退出,那么子进程自动切后台,那么就杀不掉

ctrl Z 暂停 自动提到后台

键盘按ctrl c,键盘是硬件,操作系统作为硬件管理者,第一个接收到数据,操作系统就给前台发送信号,修改目标进程位图,让这个进程先记下来,后期合适时候处理。默认终止就终止了。


看看mykill代码

通过ctrl c是获取到。。。。也可以通过myshell进程传几号信号,传2是获取到。。。传9是杀掉进程

abort相当于对自定义捕捉去掉会恢复成默认,所以一定会终止程序

除零错误操作系统怎么知道犯错,cpu寄存器内有进程上下文和current进程,其中标志寄存器会记录是否溢出,,此时发送异常信号,就知道什么进程什么错误。

段错误:虚拟地址和CR3寄存器内容给MMU,他去找虚拟到物理的转化,转换失败,硬件报错,操作系统就知道了,知道什么进程什么错误,就报错了。

这都是硬件异常。

管道式软件,读关了那么就触发软件条件。

相关推荐
北山有鸟25 分钟前
相机的水平消隐与垂直消隐
linux·驱动开发·相机
还不秃顶的计科生25 分钟前
多模态模型下载
java·linux·前端
无忧.芙桃34 分钟前
进程控制之进程等待
linux·运维·服务器
云栖梦泽40 分钟前
Linux内核与驱动:13.从设备树到Platform平台总线
linux·运维·c++·嵌入式硬件
纯氧゜1 小时前
文件名长度真相:别再被8.3规则误导了
linux·ai写作
xlq223221 小时前
43.线程同步
大数据·linux
charlie1145141911 小时前
嵌入式Linux驱动开发指南02——内核空间基础与硬件访问
linux·运维·c语言·驱动开发·嵌入式硬件
zzzsde1 小时前
【Linux】进程信号(1)理解信号及信号产生的方式
linux·运维·服务器·算法
DBA大董1 小时前
TDengine3.x 数据文件详解
大数据·linux·时序数据库·dba·tdengine
生万千欢喜心2 小时前
Linux 安装金蝶天燕中间件 AAS-V9.0.zip
java·linux