操作系统实验四:进程间通信IPC

本文介绍了一个操作系统实验,重点在于如何通过信号(signal)实现进程间的通信(IPC)。实验中,子进程利用kill函数向父进程发送SIGALRM信号,而父进程通过signal函数接收并处理该信号。实验代码展示了完整的信号通信过程。
摘要由CSDN通过智能技术生成

1.编写一个多进程使用信号通信的程序

1.kill()函数用于发送信号
区别于kill的本意杀死, 在进程管理里面,kill是杀死进程的命令。但是在进程通讯里面,kill(int pid, int sign)这个系统调用函数也是当前进程向其他进程发送信号的功能,也可以发送杀死信号SIGKILL来杀掉某个进程:

#include <sgnal.h> 

kill(pid,SIGKILL)//杀掉进程号为pid的进程

在本次实验中,子进程向父进程发送SIGALRM信号:


kill(getppid(), SIGALRM);//子进程向父进程发送SIGALRM信号

2.signal()函数接收信号
可参考:https://www.runoob.com/cprogramming/c-function-signal.html

void handler(int sig){
   
	flag = 1;
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值