cours_progra/bac2/os/chap1/ex1.c

28 lines
487 B
C
Raw Normal View History

2023-09-21 08:24:22 +02:00
#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;
}
2023-09-20 15:18:20 +02:00