Purtroppo sono mesi che non tocco questi argomenti, ma ti posso dire quasi con certezza che sbagli delle cose concettuali. Quando si utilizzano i segnali allora devi utilizzare delle funzioni di sistema che ti permettano di gestirle. Una funzione per la gestione dei segnali mi pare si chiami sigaction.
Ti do' un link di un tizio che ha creato una guida bellissima sull' utilizzo delle system call su unix.
http://gapil.truelite.it/