I found this linux-specific api some time ago: http://linux.die.net/man/2/signalfd http://lwn.net/Articles/225714/ PS. I've never used it.