目录
一回顾
前面列举了 shmctl,shmdt等函数的用法
并且列举了三种删除映射的方法 同时解释了映射的由来。
二 信号发送概念
进程A要向内核发送信号 最后进程B接收内核的信号。
但是这里存在两个问题 进程A和进程B都不知道 相互间进行工作了
所以 1 发送信号要选择 2 进程也要选择。
三 信号发送实例
kill 函数也是属于系统函数
实现的功能
一个进程 向 一个进程 发送 杀死 信号
新建 两个进程
hello.c
#include<stdio.h>
int main()
{
while(1)
{
printf("hello world\n");
sleep(2);
}
return 0;
}
杀死的格式 ./a.out sig pig
a.out 是可执行文件 可随意改 但前提要有
kill.c
#include<sys/types.h>
#include <signal.h>
#include<stdlib.h>
int main(int argc,char *argv[])
{
int pid;
int sig;
pid=atoi(argv[2]);
sig=atoi(argv[1]);
kill(pid,sig);
return 0;
}
ps aux 查看 ./a.out 的pid
成功!!!