void main ( )
{   int x;
    signal (SIGUSR1, f);
    x= fork ( );
    if (x == -1) exit (1);
    if (x != 0) 
    {   kill (x, SIGUSR1) ;
        sleep (2);
        exit (0);
    }
}
void f ( )
{
    printf ("signal received");
    exit (0);
}
Я думаю, что программа выше просит систему запустить функцию f (которая отображает "принятый сигнал" ), когда сигнал SIGUSR1 принимается родительским процессом. но я не уверен в этом, пожалуйста, не стесняйтесь исправить или дать более подробную информацию. Спасибо за помощь!
