Os sinais são entregues pelo kernel.
Qualquer interrupção gerada pela CPU será interceptada pelo kernel (isto é uma pedra angular de toda a idéia do "kernel mantém controle sempre").
O que você está tentando fazer? É melhor declarar todo o problema, você pode ficar preso à sua abordagem quando houver outras muito melhores disponíveis.