linux 守护进程详解及建立守护进程
守护进程是一种后台运行并且独立于所有终端控制之外的进程。
守护进程的启动
要启动一个守护进程,可以采取一下几种方式:
守护进程的建立
先来看一个守护进程建立的例子:
#include <sys/types.h> #include <signal.h> #include <unistd.h> #include <syslog.h> #define MAXFD 64 void daemon_init(const char* pname, int facility){ int i; pit_t pid; /*fork(),终止父进程*/ if(pid=fork()){ exit(0); } /*第一子进程*/ setsid(); signal(SIGHUP,SIG_IGN); /*fork()终止第一子进程*/ if(pid=fork()) exit(0); /*第二子进程*/ daemon_proc = 1; /*将工作目录设定位“/”*/ chdir("/"); /*清除文件掩码*/ umask(0); for(i = 0; i<MAXFD; i++){ close(i); } /*打开log*/ openlog(pname, LOG_PID, facility); }
从上面的程序可以看出,建立一个守护进程需要以下操作:
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。