POSIX defines the SA_SIGINFO flag to sigaction that allows the OS to deliver extra information to a signal handler. Not all OSs support this (since not every OS has sigaction, after all), but it would be useful to some people (particularly real-time signal users) to be able to get at this where it exists.
The signalfd mechanism on linux supports an analogous structure.
I implemented a signalfd-based signal backend for linux; see branch signalfd on my github repo.
There's no current mechanism to pass the siginfo fields to the user, though. Also it needs some review and tweaking.