dameon.c
来自「Linux 下 C 库及常用 系统调用的使用事例」· C语言 代码 · 共 45 行
C
45 行
/*dameon.c创建守护进程实例*/#include<stdio.h>#include<stdlib.h>#include<string.h>#include<fcntl.h>#include<sys/types.h>#include<unistd.h>#include<sys/wait.h>#define MAXFILE 65535int main(){ pid_t pc; int i,fd,len; char *buf="This is a Dameon\n"; len =strlen(buf); /*父进程退出*/ pc=fork(); if(pc<0){ printf("error fork\n"); exit(1); }else if(pc>0) exit(0); /*在子进程中创建*/ setsid(); /*改变当前目录为根目录*/ chdir("/"); /*重设文件权限掩码*/ umask(0); /*关闭文件描述符*/ for(i=0;i<MAXFILE;i++) close(i); /*这时创建完守护进程,以下开始正式进入守护进程工作*/ while(1){ if((fd=open("/tmp/dameon.log",O_CREAT|O_WRONLY|O_APPEND,0600))<0){ perror("open"); exit(1); } write(fd, buf, len+1); close(fd); sleep(5); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?