/devices/pseudo/[email protected]:poll
डिवाइस (या /dev/pool
) आम/io/devpoll.c फ़ाइल (ऑनलाइन कॉपी - http://fxr.watson.org/fxr/source/common/io/devpoll.c?v=OPENSOLARIS
)
अधिक सटीक, dpioctl
. द्वारा समारोह:
692 dpioctl(dev_t dev, int cmd, intptr_t arg, int mode, cred_t *credp, int *rvalp)
ज़िहुइफ़ान, आपके स्टैकट्रेस की जाँच करने के बाद मैं देख रहा हूँ कि आपने प्रोग्राम निष्पादित किया था:
main() -> ... nteveque() -> ioctl()
तब सिग्नल हैंडलर को बुलाया गया था .. मुझे dpioctl से सिग्नल नहीं भेजा जा रहा है, इसलिए मुझे लगता है कि सिग्नल किसी बाहरी फ़ंक्शन (या प्रोग्राम या उपयोगकर्ता द्वारा) द्वारा भेजा गया था:
--- called from signal handler with signal 0 (SIGEXIT) ---
तब यूजर-स्पेस सिग्नल हैंडलर को कॉल किया गया था:
sigacthandler -> call_user_handler -> __sighndlr
-> sslsstehdlr
sslsstehdlr
कई कार्य किए, और मेरी जानकारी और POSIX मानकों के अनुसार ("2.4 सिग्नल अवधारणाएं"
ओपन ग्रुप बेस स्पेसिफिकेशंस इश्यू 6 से; IEEE Std 1003.1, 2004 संस्करण), सिग्नल हैंडलर केवल तालिका में सूचीबद्ध फ़ंक्शन (प्रत्यक्ष या अप्रत्यक्ष रूप से) कॉल कर सकता है
... विशाल सूची लेकिन कोई ptherad_sigmask
. नहीं है यहाँ...