El código es correcto. Incluso lo he comprobado y a mi me va bien
Como sabes si se ha ejecutado la función? Tienes algún printf que te lo dice? Si es así, no olvides terminar con un \n, o hacer un fflush(stdout), de lo contrario no lo verás hasta que se llene el buffer de salida.
El código que he probado y funciona es:
Código C:
Ver original#include<stdlib.h>
#include<stdio.h>
#include<signal.h>
void realizarFuncion(int numeroSignal)
{
printf("Ejecutando realizarFuncion\n"); }
main()
{
signal (SIGUSR1, realizarFuncion);
while (1)
{
}
}