Exemplo de daemon em C
Publicado por Andre Luiz da Silva 14/05/2004
[ Hits: 11.360 ]
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();
}
Exemplo de sockets: um client e um server bem simples
Nenhum comentário foi encontrado.
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
Habilitando clipboard manager no ambiente COSMIC
A compatibilidade do LibreOffice com o Microsoft Office
Colocando hotcorner no COSMIC para exibir "workspaces"









