Skip to main content

संकेत - लिनक्स / यूनिक्स कमांड

Important Linux Commands for Beginners: Linux Tutorial (जून 2026)

Important Linux Commands for Beginners: Linux Tutorial (जून 2026)
Anonim

लिनक्स दोनों POSIX विश्वसनीय सिग्नल (इसके बाद "मानक सिग्नल") और POSIX रीयल-टाइम सिग्नल दोनों का समर्थन करता है।

मानक सिग्नल

लिनक्स नीचे सूचीबद्ध मानक सिग्नल का समर्थन करता है। कई सिग्नल नंबर आर्किटेक्चर निर्भर हैं, जैसा कि "मान" कॉलम में दर्शाया गया है। (जहां तीन मान दिए जाते हैं, पहला वाला आमतौर पर अल्फा और स्पार्क के लिए मान्य होता है, i386, पीपीसी और श के लिए मध्य वाला, और मिप्स के लिए अंतिम वाला।

ए - इंगित करता है कि इसी आर्किटेक्चर पर सिग्नल अनुपस्थित है।)

तालिका के "क्रिया" कॉलम में प्रविष्टियां सिग्नल के लिए डिफ़ॉल्ट क्रिया निर्दिष्ट करती हैं, निम्नानुसार:

अवधि

प्रक्रिया को समाप्त करने के लिए डिफ़ॉल्ट कार्रवाई है।

आईजीएन

सिग्नल को अनदेखा करना डिफ़ॉल्ट क्रिया है।

कोर

प्रक्रिया और डंप कोर को समाप्त करने के लिए डिफ़ॉल्ट कार्रवाई है।

रुकें

प्रक्रिया को रोकने के लिए डिफ़ॉल्ट कार्रवाई है।

सबसे पहले मूल POSIX.1 मानक में वर्णित सिग्नल।

संकेतमूल्यकार्यटिप्पणी
या नियंत्रण प्रक्रिया की मौत
SIGINT2अवधिकीबोर्ड से इंटरप्ट करें
SIGQUIT3कोरकीबोर्ड से बाहर निकलें
SIGILL4कोरअवैध निर्देश
SIGABRT6कोरसे संकेत छोड़ो गर्भपात (3)
SIGFPE8कोरफ़्लोटिंग प्वाइंट अपवाद
SIGKILL9अवधिसिग्नल को मारो
SIGSEGV11कोरअवैध स्मृति संदर्भ
SIGPIPE13अवधिटूटी हुई पाइप: कोई पाठकों के साथ पाइप को लिखें
SIGALRM14अवधिसे टाइमर सिग्नल अलार्म (2)
SIGTERM15अवधिसमापन संकेत
SIGUSR130,10,16अवधिउपयोगकर्ता परिभाषित सिग्नल 1
SIGUSR231,12,17अवधिउपयोगकर्ता परिभाषित सिग्नल 2
SIGCHLD20,17,18आईजीएनबच्चे को रोक दिया गया या समाप्त कर दिया गया
SIGCONT19,18,25 बंद करो अगर जारी रखें
SIGSTOP17,19,23रुकेंप्रक्रिया रोको
SIGTSTP18,20,24रुकेंTty पर टाइप बंद करो
SIGTTIN21,21,26रुकेंपृष्ठभूमि प्रक्रिया के लिए tty इनपुट
SIGTTOU22,22,27रुकेंपृष्ठभूमि प्रक्रिया के लिए tty आउटपुट

सिग्नलSIGKILL तथाSIGSTOP पकड़ा नहीं जा सकता, अवरुद्ध या अनदेखा नहीं किया जा सकता है।

अगला संकेत POSIX.1 मानक में नहीं हैं लेकिन SUSv2 और SUSv3 / POSIX 1003.1-2001 में वर्णित हैं।

संकेतमूल्यकार्यटिप्पणी
SIGPOLL अवधिमतदान योग्य घटना (एसआईएस वी)। SIGIO का समानार्थी
SIGPROF27,27,29अवधिप्रोफाइलिंग टाइमर की समय सीमा समाप्त हो गई
SIGSYS12,-,12कोरनियमित रूप से खराब तर्क (एसवीआईडी)
SIGTRAP5कोरट्रेस / ब्रेकपॉइंट जाल
SIGURG16,23,21आईजीएनसॉकेट पर तत्काल स्थिति (4.2 बीएसडी)
SIGVTALRM26,26,28अवधिवर्चुअल अलार्म घड़ी (4.2 बीएसडी)
SIGXCPU24,24,30कोरसीपीयू समय सीमा पार हो गई (4.2 बीएसडी)
SIGXFSZ25,25,31कोरफ़ाइल आकार सीमा पार हो गई (4.2 बीएसडी)

लिनक्स 2.2 तक और इसके लिए डिफ़ॉल्ट व्यवहार भी शामिल हैSIGSYS, SIGXCPU, SIGXFSZ, और (एसपीएआरसी और एमआईपीएस के अलावा आर्किटेक्चर पर)SIGBUS प्रक्रिया को समाप्त करना था (कोर डंप के बिना)। (कुछ अन्य इकाइयों के लिए डिफ़ॉल्ट कार्रवाईSIGXCPU तथाSIGXFSZ कोर डंप के बिना प्रक्रिया को समाप्त करना है।) लिनक्स 2.4 इन सिग्नल के लिए पॉज़िक्स 1003.1-2001 आवश्यकताओं के अनुरूप है, जो कोर डंप के साथ प्रक्रिया को समाप्त कर देता है।

अगले कई अन्य सिग्नल।

संकेतमूल्यकार्यटिप्पणी
SIGEMT7,-,7अवधि
SIGSTKFLT-,16,-अवधिकॉप्रोसेसर पर ढेर गलती (अप्रयुक्त)
SIGIO23,29,22अवधिI / O अब संभव है (4.2 बीएसडी)
SIGCLD-,-,18आईजीएनSIGCHLD के लिए एक पर्याय
SIGPWR29,30,19अवधिपावर विफलता (सिस्टम वी)
SIGINFO29,-,- एसआईजीपीडब्लूआर के लिए एक पर्याय
SIGLOST-,-,-अवधिफ़ाइल लॉक खो गया
SIGWINCH28,28,20आईजीएनखिड़की का आकार बदलें सिग्नल (4.3 बीएसडी, सूर्य)
SIGUNUSED-,31,-अवधिअप्रयुक्त सिग्नल (SIGSYS होगा)

(सिग्नल 2 9 हैSIGINFO / SIGPWR अल्फा पर लेकिनSIGLOST एक चक्कर पर।)

SIGEMT POSIX 1003.1-2001 में निर्दिष्ट नहीं है, लेकिन अधिकांश अन्य इकाइयों पर कभी भी प्रकट नहीं होता है, जहां इसकी डिफ़ॉल्ट कार्रवाई आमतौर पर कोर डंप के साथ प्रक्रिया को समाप्त करने के लिए होती है।

SIGPWR (जो POSIX 1003.1-2001 में निर्दिष्ट नहीं है) आमतौर पर उन अन्य इकाइयों पर डिफ़ॉल्ट रूप से अनदेखा किया जाता है जहां यह प्रतीत होता है।

SIGIO (जो POSIX 1003.1-2001 में निर्दिष्ट नहीं है) कई अन्य इकाइयों पर डिफ़ॉल्ट रूप से अनदेखा किया जाता है।

रीयल-टाइम सिग्नल

लिनक्स मूल रूप से POSIX.4 रीयल-टाइम एक्सटेंशन (और अब POSIX 1003.1-2001 में शामिल) के रूप में परिभाषित वास्तविक समय संकेतों का समर्थन करता है। लिनक्स 32 वास्तविक समय संकेतों का समर्थन करता है, 32 से गिने गए (SIGRTMIN) 63 तक (SIGRTMAX)। (कार्यक्रमों को हमेशा नोटेशन का उपयोग करके रीयल-टाइम सिग्नल का संदर्भ लेना चाहिएSIGRTMIN+ n, क्योंकि वास्तविक समय सिग्नल संख्याओं की सीमा इकाइयों में भिन्न होती है।)

मानक सिग्नल के विपरीत, रीयल-टाइम संकेतों का कोई पूर्वनिर्धारित अर्थ नहीं है: वास्तविक समय संकेतों का पूरा सेट एप्लिकेशन-परिभाषित उद्देश्यों के लिए उपयोग किया जा सकता है। (नोट, हालांकि, लिनक्स थ्रेड कार्यान्वयन पहले तीन वास्तविक समय संकेतों का उपयोग करता है।)

एक अनचाहे वास्तविक समय संकेत के लिए डिफ़ॉल्ट कार्रवाई प्राप्त प्रक्रिया को समाप्त करना है।

रीयल-टाइम सिग्नल निम्नलिखित द्वारा प्रतिष्ठित हैं:

  1. रीयल-टाइम सिग्नल के कई उदाहरण कतारबद्ध किए जा सकते हैं। इसके विपरीत, यदि मानक सिग्नल के कई उदाहरण वितरित किए जाते हैं, जबकि उस सिग्नल को वर्तमान में अवरोधित किया जाता है, तो केवल एक उदाहरण कतारबद्ध होता है।
  2. अगर सिग्नल का उपयोग कर भेजा जाता हैsigqueue(2), एक साथ मूल्य (या तो एक पूर्णांक या सूचक) सिग्नल के साथ भेजा जा सकता है। अगर प्राप्त करने की प्रक्रिया इस सिग्नल के लिए एक हैंडलर स्थापित करती हैSA_SIGACTION झंडाsigaction(2) तो यह इस डेटा को प्राप्त कर सकता है si_value के क्षेत्र siginfo_t संरचना हैंडलर को दूसरे तर्क के रूप में पारित किया। इसके अलावा, si_pid तथा si_uid सिग्नल भेजने की प्रक्रिया के पीआईडी ​​और असली उपयोगकर्ता आईडी प्राप्त करने के लिए इस संरचना के क्षेत्र का उपयोग किया जा सकता है।
  3. वास्तविक समय संकेत वास्तविक गारंटी में वितरित किए जाते हैं। उसी प्रकार के कई वास्तविक समय संकेत भेजे गए क्रम में वितरित किए जाते हैं। यदि किसी प्रक्रिया में अलग-अलग रीयल-टाइम सिग्नल भेजे जाते हैं, तो उन्हें निम्नतम क्रमांकित सिग्नल से शुरू किया जाता है। (यानी, कम संख्या वाले संकेतों की सर्वोच्च प्राथमिकता है।)

यदि किसी प्रक्रिया के लिए मानक और वास्तविक समय दोनों सिग्नल लंबित हैं, तो POSIX इसे निर्दिष्ट नहीं करता है जो पहले वितरित किया जाता है। लिनक्स, कई अन्य कार्यान्वयन की तरह, इस मामले में मानक संकेतों को प्राथमिकता देता है।

POSIX के अनुसार, एक कार्यान्वयन को कम से कम _POSIX_SIGQUEUE_MAX (32) रीयल-टाइम सिग्नल को किसी प्रक्रिया में कतारबद्ध करने की अनुमति देनी चाहिए। हालांकि, प्रति-प्रक्रिया सीमा रखने के बजाय, लिनक्स सभी प्रक्रियाओं के लिए कतारबद्ध वास्तविक समय संकेतों की संख्या पर सिस्टम-व्यापी सीमा लागू करता है।

इस सीमा को देखा जा सकता है (और विशेषाधिकार के साथ) के माध्यम से बदल दिया / Proc / sys / कर्नेल / rtsig-अधिकतम फ़ाइल। एक संबंधित फाइल, / Proc / sys / कर्नेल / rtsig-अधिकतम , यह पता लगाने के लिए उपयोग किया जा सकता है कि वर्तमान में कितने रीयल-टाइम सिग्नल कतारबद्ध हैं।

के अनुरूप करना

POSIX.1

जरूरी: उपयोग आदमी आदेश ( % आदमी ) यह देखने के लिए कि आपके विशेष कंप्यूटर पर कमांड का उपयोग कैसे किया जाता है।