设为首页 加入收藏

TOP

C语言编写Linux下的守护进程
2014-11-23 23:31:45 来源: 作者: 【 】 浏览:9
Tags:语言 编写 Linux 守护 进程

利用网上下载的这段代码,成功实现了守护进程,原来守护进程是很简单的事情。


在main函数中执行


init_daemon();//初始化为Daemon


就可以把进程变成守护进程


#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;
}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇升级Linux内核错误解决 下一篇避免Linux脚本多次运行

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: