cours_progra/bac2/os/chap1/ex1.c
2023-09-21 08:24:22 +02:00

28 lines
487 B
C

#include <bits/types/siginfo_t.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
typedef struct sigaction SIGS;
int counter = 0;
void handler(int sig, siginfo_t* info, void* context) {
if (sig == SIGUSR1){
counter++;
printf("Hello!\n");
}else if ( sig == SIGUSR2 ){
printf("%d\n", counter);
abort();
}
}
int main(int argc, char *argv[]){
SIGS context = {.sa_flags = SA_SIGINFO, .sa_sigaction = handler};
while(1)
pause();
return 0;
}