Exemplo de daemon em C
Publicado por Andre Luiz da Silva 14/05/2004
[ Hits: 11.415 ]
Homepage: http://localhost
Galera, esse src eh muito interessante para quem está aprendendo sobre processos em ambiente Unix. Estudando um pouquinho esse codigo, o conceito de daemon fica muito mais claro do que a simples explicação de que um daemon eh um processo sendo executado em background e talz....
Obs: Eu não escrevi o codigo. ;-)
/*
Demonio tipo UNIX, codigo de ejemplo.
UNIX Daemon, example code rules.
By:
Por:
Oscar Medina Duarte
is111936@mail.udlap.mx
*/
#include <sys/types.h>
#include <sys/stat.h>
#include <signal.h>
#include <fcntl.h>
void damncode();
void teschingando(int);
void setduplicate(int);
main(){
pid_t pid;
signal(SIGINT,teschingando);
signal(SIGUSR1, setduplicate);
pid = fork();
if (pid <0){
printf("Forking Error : )\n");
exit(-1);
}else if (pid !=0 ){
printf("\nThis is a Father 1\n");
}else{
pid = fork();
if (pid <0){
printf("Forking error : )\n");
exit(-1);
}else if (pid !=0 ){
printf("\nThis is a father 2\n");
}else{
/* Poner en modo daemon */
/* Set Daemon mode */
setsid();
umask(0);
chdir("/");
damncode(); /* Y ejecutar el daemon, run the daemon */
}
}
}
void damncode(){
printf("Daemon :\n PID %d\tPPID %d\n",getpid(),getppid());
for(;;);
}
void teschingando(int signo){
printf("Signal : %d",signo);
exit(1);
}
void setduplicate(int signo){
main();
}
Portscan Simples Usando Sockets em C
Nenhum comentário foi encontrado.
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Conhecendo o tmux: Multiplexador de Terminal
Acessando página do Syncthing fora da máquina local
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
Como instalo o Clipper/Harbour no Linux Ubuntu (4)









