kill函数
1. 函数原型
int kill(pid_t pid, int signo); //signo:信号名
分析:
注意:
进程组:每个进程都属于一个进程组,进程组是一个或多个进程的集合, 它们相互关联,共同完成一个实体任务。每个进程组都有一个进程组长,默认进程组ID与进程组长ID相同。
权限保护:super用户(root)可以发送信号给任意用户,普通用户不能像系统发送信号的,kill -9(root用户的pid)是不可以的,同样,普通用户也不能向其他普通用户发送信号,终止进程。只能向自己进程发送信号,普通的用户基本规则:发送者实际或有效用户ID == 接受者实际或有效用户ID
raise函数
函数原型:给当前进程发送指定信号(自己给自己发)raise(signo) == kill(getpid(), signo))
int raise(int signo); //signo:信号名