/*
**守护进程实例,每隔5s向/tmp/daemon.log中写入当前系统时
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <time.h>
#include <string.h>
#define MAX_SIZE 65535
int main(int argc,char *argv[]){
pid_t pc;
int i,fd;
time_t timep;
struct tm *timenow;
char buff[128];
//1.创建子进程,主进程退出
pc = fork();
if(pc == -1){
perror("Create child process error");
exit(1);
}else if(pc > 0){
exit(0);
}
//2.在子进程中创建新会话
setsid();
//3.改变当前目录为根目录
chdir("/");
//4.重设文件权限掩码
umask(0);
//5.关闭文件描述符
for(i=0;i<MAX_SIZE;i++){
close(i);
}
//守护进程创建完毕,编写守护进程的工作
while(1){
if((fd = open("/tmp/daemon.log",O_CREAT|O_WRONLY|O_APPEND,0600)) == -1){
perror("Open error");
exit(1);
}
//获取当前日期
time(&timep);
timenow = localtime(&timep);
sprintf(buff,"%s",asctime(timenow));
write(fd,buff,strlen(buff));
close(fd);
sleep(5);
}
}
分享到:
相关推荐
原来版本稍加修改,release版,可以生成可执行文件。
守护进程实例,可以参照例子进行守护进程的设计。
主要介绍了C语言编写Linux守护进程实例,本文讲解了守护进程及其特性、守护进程的编程要点、守护进程代码实例等内容,需要的朋友可以参考下
主要介绍了使用Python编写Linux系统守护进程实例,本文先是讲解了什么是守护进程,然后给出了一个Python语言的简单实现,需要的朋友可以参考下
主要介绍了PHP守护进程实例,php也是可以直接进行守护进程的启动与终止的,相对于shell来说会简单很多,需要的朋友可以参考下
主要介绍了创建Android守护进程实例(底层服务),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
以下是对用shell脚本作为保证PHP脚本不挂掉的守护进程实例进行了分析介绍,需要的朋友可以参考下
Linux守护进程是Linux的后台服务进程,相当于Windows服务,对于为Linux开发服务程序的朋友来说,Linux守护进程相关技术是必不可少的,因为这个技术不仅仅是为了开发守护进程,还可以拓展到多进程,父子进程文件描述...
Linux守护进程 Linux守护进程Linux守护进程Linux守护进程Linux守护进程Linux守护进程Linux守护进程
这个是linux守护进程的实例,非常的简洁,内有makefile,c文件,脚本都有,希望能对你有所帮助。脚本的教程见:http://blog.csdn.net/luopeiyuan1990/article/details/8193359#t19 守护进程的教程见:...
linux守护进程实例,教学使用,学习Linux操作系统必看。
因为控制台程序出现过因为连接第三方服务超时直接挂掉(此时负载少了一个节点)以及服务器出现意外重启问题(该服务器所有节点宕机),所以需要一个进程守护程序。 也找过 现场的脚本、python的程序、pm2守护方式,...
本文实例讲述了Python守护进程用法。分享给大家供大家参考。具体分析如下: 守护进程是可以一直运行而不阻塞主程序退出。要标志一个守护进程,可以将Process实例的daemon属性设置为True。代码如下: import os ...
Linux 守护进程的编程方法,几个源码实例