#include <stdio.h>
#include <stdlib.h>
#include <signal.h>

#define TIME_CST 330000

void do_work(unsigned int duration) /* duration en millisecondes */
{
    int i;

    for(i=0;i<TIME_CST *duration;i++) asm volatile ("nop");
}

void signal_handler()
{
    do_work(1000);
    printf("Signal recu!\n");
}

int main()
{
    printf("PID = %d\n", getpid());

    while(1)
    {
        signal(SIGUSR1, signal_handler);
    }

    pause();

    return 0;
}
