检查进程的存在 kill系统调用还有另一重功用.若将参数sig指定为0(即所谓空信号),则无信号发送. 相反,kill仅会去执行错误检查,查看是否可以向目标进程发送信号. 从另一角度来看,这意味着,可以使用空信号来检测具有特定进程ID的进程是否存在.若发送空信号失败,且errno为ESRCH,则表明目标进程不存在.如果调用失败,且errno为EPERM(表示进程存在,但无权向目标进程发送信号)或者调用成功(有权向进程发送信号),那么就表示进程存在. 验证一个特定进程ID的存在并不能保证特定程序仍