管道可以分为有名管道和无名管道,管道是一种单向队列
信号的概念
信号的通信框架是,内核中有信号对象,多个用户之间的进程通过方为内核中的信号对象间接来通信。‘
内核空间中有很多信号,可以通过kill -l 查看内核可以发送多少种信号
内核中总共有64中信号,前面是ID,后面是宏定义
信号通信的框架
1. 信号的发送(发送信号进程): kill , raise , alarm
2. 信号的接受(接受信号进程):pause(), sleep, while()
3. 信号的处理(接受信号进程):signal
例如:kill -9 进程
查看一下信号的处理函数,kill
2. 信号的发送和处理,raise,发给自己用,自杀进程
raise(9)相当于_exit(),终止进程
3. alarm 是一个闹钟信号的函数
该信号是当一个定时到了以后再发信号
4. pause()函数,让进程进入睡眠状态, ctrl + Z, 暂停
当进程执行到pase()时,程序处理Sleep状态,程序会卡在pasue的位置,无法继续执行
5. 按下ctrl + C 终止进程
硬件---驱动--内核--SIGINT
6. signal函数
可以处理signal函数,让内核按照自己的定义处理消息