C语言编写linux下的守护进程 2011-04-24
利用网上下载的这段代码,成功完成了守护进程,原来守护进程是很简朴的事情。
在main函数中执行
init_daemon();//初始化为Daemon
就可以把进程变成守护进程
[code=c]
#include
#include
#include
#include
#include
void init_daemon(void)
{
int pid;
int i;
if(pid=fork())
exit(0);//是父进程,结束父进程
else if(pid< 0)
exit(1);//fork失利,退出
//是第一子进程,后台连续执行
setsid();//第一子进程成为新的会话组长和进程组长
//并与控制终端分离
if(pid=fork())
exit(0);//是第一子进程,结束第一子进程
else if(pid< 0)
exit(1);//fork失利,退出
//是第二子进程,连续
//第二子进程不再是会话组长
for(i=0;i< NOFILE;++i)//关闭打开的文件描述符
close(i);
chdir("/tmp");//改变工作目录到/tmp
umask(0);//重设文件创建掩模
return;
}
[/code]
相关知识
C语言编写linux下的守护进程
易家纺:行业困局下的突围
Linux的常见问题解答和管理技巧
Linux之父炮轰C++是糟糕程序员的垃圾语言
在Linux下灵活使用expect脚本的小窍门
linux认证:在Linux环境下Make命令调用技巧
【设计潮流】2012末日说下的文明相悖论探讨
直播:新经济形势下的“多行业发展研讨会”
沙龙精编:七点看懂精装修格局下的智能厨房
Linux认证考试:Linux系统的经典技巧