*MATRIX*
24-05-2008, 13:46
ciao raga
dovrei fare questo esercizio per capireu n po i segnali
allora il processo figlio invia al padre un segnale lui lo cattura e mi stampa il suo pid
non mi funziona mi date una mano? mi si blocca dopo aver stampato il pid del figlio con segnale definito untente 1
#include<stdlib.h>
#include<stddef.h>
#include<stdio.h>
#include<string.h>
#include<unistd.h>
#include<fcntl.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<dirent.h>
#include <sys/wait.h>
#include<wait.h>
#include <signal.h>
pid_t pid;
void program(int sig)
{
if (sig==SIGUSR1)
printf("PID==%d% ",getpid());
}
int main()
{
if (pid=fork()==0)
{
printf("sono il figlio %d\n",getpid());
kill(getppid(),SIGUSR1);
exit(1);
}
else
signal(SIGUSR1,program);
}
dovrei fare questo esercizio per capireu n po i segnali
allora il processo figlio invia al padre un segnale lui lo cattura e mi stampa il suo pid
non mi funziona mi date una mano? mi si blocca dopo aver stampato il pid del figlio con segnale definito untente 1
#include<stdlib.h>
#include<stddef.h>
#include<stdio.h>
#include<string.h>
#include<unistd.h>
#include<fcntl.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<dirent.h>
#include <sys/wait.h>
#include<wait.h>
#include <signal.h>
pid_t pid;
void program(int sig)
{
if (sig==SIGUSR1)
printf("PID==%d% ",getpid());
}
int main()
{
if (pid=fork()==0)
{
printf("sono il figlio %d\n",getpid());
kill(getppid(),SIGUSR1);
exit(1);
}
else
signal(SIGUSR1,program);
}