linux的基础知识——守护进程

1.守护进程

在这里插入图片描述

2.创建守护进程模型

在这里插入图片描述在这里插入图片描述

3.创建守护进程的步骤

在这里插入图片描述

4.举例:创建一个守护进程

#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

void mydaemond(void)
{
    
    
        pid_t pid,sid;
        int ret;

        pid = fork();
        if(pid>0){
    
    

        }
        else if(pid==0){
    
    
                sid = setsid();

                ret = chdir("/home/zhaoxr/");
                if(ret==-1){
    
    
                        perror("chdir error");
                        exit(1);
                }

                umask(0022); 

                close(STDIN_FILENO);
                open("/dev/null",O_RDWR);
                dup2(0,STDOUT_FILENO);
                dup2(0,STDERR_FILENO);
        }
}

int main()
{
    
    
        mydaemond();
        while(1){
    
    

        }

        return 0;
}

5.守护进程随着系统启动而启动

\qquad 修改.bashrc文件

猜你喜欢

转载自blog.csdn.net/zxr916/article/details/111933892