Real time signal programming
- From: "Lizax" <lizax@xxxxxxx>
- Date: Wed, 9 Jan 2008 20:44:02 +0800
I want to use real time signal to handle the read/write request over a large concurrent connections. I search the web and find some of materials about this, such as C10K (www.kegel.com/c10k.html). I also checked the white paper of squid real time signal (www.visolve.com/squid/whitepapers/squidrtsignal.php).
I have do some tries on Linux kernel 2.6. I can use ulimit command to set the pending number of real time signal to unlimited using root user and run program using root privilege, in such case, no SIGIO will be raised. but in common user, I can not set pending number of real time signal. in such case, I will suffer SIGIO. As a common user, how to avoid SIGIO in application ? If I use in root privilege with unlimited pending real time signals, Is this will exhaust system resource in a high load?
When sigwaitinfo() return, I want to send data after check the POLL_OUT is available, but this always fail. since the socket writeable, however POLL_OUT flags is not set, what's wrong ?
Is there already exist product using the real time signal to dispatch the event as a reference, I try to search the web, but I can not find any useful infomation.
I want to use real time signal in Linux, and I also want the program can be portable in *nix system, is there some suggestions about how to use real time portable ?
Comments are appreciated.