如何在Linux下用c语言创建守护进程并监控系统运行期间的所有进程

如题所述

这跟execvp函数的实现方式有关:
int execvp(const char *file ,char * const argv []);

execvp()会从PATH 环境变量所指的目录中查找符合参数file的文件名,找到后便执行该文件,然后将第二个参数argv传给该欲执行的文件。如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno中。

之所以显示“fail to exec”,是因为在PATH环境变量所指的目录中没有名为“hello”的程序。建议进行如下操作:
1、运行“echo $PATH”,查看一下PATH环境变量指向那些目录
2、编写一个输出“hello world”的程序,并命名为hello,即执行命令:
gcc -o hello hello.c
3、把名为”hello“的程序拷贝到PATH变量所指的其中一个目录中
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-05-15
deamon(0,0);
linux下用这个就行
了,好多
后台进行都是用这个运行的,至于如何用,何时用,man一下吧,这个应该也是posix里的一个吧,至于win下面是怎么样的就不太清楚
相似回答