Chinaunix首页 | 论坛 | 博客
  • 博客访问: 414971
  • 博文数量: 38
  • 博客积分: 2513
  • 博客等级: 少校
  • 技术积分: 471
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-22 13:35
文章分类

全部博文(38)

文章存档

2010年(4)

2009年(6)

2008年(28)

我的朋友

分类: LINUX

2008-08-22 14:01:42

linux守护进程原理及实现很多资料都有讲述,在此不做赘述,仅粘贴一程序轮廓,省得到时候翻书。

#include
#include
#include
#include


int main(int argc, char **argv)
{
int ret = 0;
char pout[32];
pid_t pid, sid;
FILE *pfile=NULL;

    pid = fork();
    if ( pid < 0 ) {
        exit(EXIT_FAILURE);
    } else if ( pid > 0 ) {
        exit(EXIT_SUCCESS);
    }

    if ( (sid = setsid()) < 0 ) {
        exit(EXIT_FAILURE);
    }
    if ( chdir("/") < 0 ) {
        exit(EXIT_FAILURE);
    }
    umask(0);
    close(STDIN_FILENO);
    close(STDOUT_FILENO);
    close(STDERR_FILENO);

    while ( 1 ) {
        ......
    }

    return 0;
}

阅读(1678) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~