லினக்ஸ் POSIX நம்பகமான சிக்னல்களை ஆதரிக்கிறது (இதற்கிடையில் "நிலையான சமிக்ஞைகள்") மற்றும் POSIX நிகழ் நேர சமிக்ஞைகள்.
நிலையான சிக்னல்கள்
லினக்ஸ் கீழே தரப்பட்ட நிலையான சமிக்ஞைகளை ஆதரிக்கிறது. "மதிப்பு" நெடுவரிசையில் சுட்டிக்காட்டப்பட்டபடி பல சிக்னல் எண்கள் கட்டடக்கலை சார்ந்தவை. (மூன்று மதிப்புகள் வழங்கப்பட்டால், முதன்மையானது ஆல்ஃபா மற்றும் ஸ்பார்சிற்கு வழக்கமாக செல்லுபடியாகும், i386, பிபிசி மற்றும் ஷெல்லிற்கான நடுத்தர ஒன்றும், மற்றும் மிஸ்ட்களுக்கான கடைசியாகவும்.
A - தொடர்புடைய கட்டமைப்புக்கு ஒரு சமிக்ஞை இல்லை என்பதைக் குறிக்கிறது.)
அட்டவணையின் "செயல்" நெடுவரிசையின் உள்ளீடுகள் பின்வருமாறு சமிக்ஞைக்கு இயல்பான செயலை குறிப்பிடுகிறது:
கால
இயல்புநிலை செயல் செயல்முறையை நிறுத்த வேண்டும்.
IGN
இயல்புநிலை செயல் சமிக்ஞையை புறக்கணிக்க வேண்டும்.
கோர்
இயல்புநிலை செயல் செயல்முறை மற்றும் டம்ப் கோரை நிறுத்த வேண்டும்.
நிறுத்து
இயல்புநிலை செயல் செயல்பாட்டை நிறுத்த வேண்டும்.
முதலில் அசல் POSIX.1 தரநிலையில் விவரிக்கப்பட்ட சமிக்ஞைகள்.
| சிக்னல் | மதிப்பு | அதிரடி | கருத்து |
| அல்லது செயல்முறை கட்டுப்படுத்தும் மரணம் | |||
| சிகின்ட் | 2 | கால | விசைப்பலகை இருந்து குறுக்கீடு |
| SIGQUIT | 3 | கோர் | விசைப்பலகை இருந்து வெளியேறவும் |
| SIGILL | 4 | கோர் | சட்டவிரோத வழிமுறை |
| SIGABRT | 6 | கோர் | இருந்து சிக்னல் முறிவு கைவிடவோ (3) |
| SIGFPE | 8 | கோர் | மிதக்கும் புள்ளி விதிவிலக்கு |
| SIGKILL | 9 | கால | சமிக்ஞையைக் கொல் |
| SIGSEGV | 11 | கோர் | தவறான நினைவக குறிப்பு |
| SIGPIPE | 13 | கால | உடைந்த குழாய்: எந்த வாசகருடன் குழாய்க்கு எழுதவும் |
| SIGALRM | 14 | கால | டைமர் சமிக்ஞை அலாரம் (2) |
| SIGTERM | 15 | கால | நீட்டிப்பு சமிக்ஞை |
| SIGUSR1 | 30,10,16 | கால | பயனர் வரையறுக்கப்பட்ட சமிக்ஞை 1 |
| SIGUSR2 | 31,12,17 | கால | பயனர் வரையறுக்கப்பட்ட சமிக்ஞை 2 |
| SIGCHLD | 20,17,18 | IGN | குழந்தை நிறுத்தப்பட்டது அல்லது நிறுத்தப்பட்டது |
| SIGCONT | 19,18,25 | நிறுத்தினால் தொடரவும் | |
| SIGSTOP | 17,19,23 | நிறுத்து | செயல்முறை நிறுத்து |
| SIGTSTP | 18,20,24 | நிறுத்து | Tty இல் தட்டச்சு நிறுத்து |
| SIGTTIN | 21,21,26 | நிறுத்து | பின்புல செயல்முறைக்கான tty உள்ளீடு |
| SIGTTOU | 22,22,27 | நிறுத்து | பின்னணி செயல்முறைக்கு tty வெளியீடு |
சமிக்ஞைகள்SIGKILL மற்றும்SIGSTOP பிடிக்க முடியாது, தடுக்கலாம் அல்லது புறக்கணிக்க முடியாது.
POSIX.1 தரநிலையில் இல்லாத சமிக்ஞைகள் ஆனால் SUSv2 மற்றும் SUSv3 / POSIX 1003.1-2001 இல் விவரிக்கப்பட்டுள்ளன.
| சிக்னல் | மதிப்பு | அதிரடி | கருத்து |
| SIGPOLL | கால | நிகழக்கூடிய நிகழ்வு (Sys V). SIGIO இன் ஒத்த பெயர் | |
| SIGPROF | 27,27,29 | கால | விவரக்குறி டைமர் காலாவதியானது |
| SIGSYS | 12,-,12 | கோர் | வழக்கமான (SVID) தவறான வாதம் |
| SIGTRAP | 5 | கோர் | ட்ரேஸ் / ப்ராக்ஃபோன் பொறி |
| SIGURG | 16,23,21 | IGN | சாக்கெட்டில் அவசர நிலை (4.2 BSD) |
| SIGVTALRM | 26,26,28 | கால | மெய்நிகர் எச்சரிக்கை கடிகாரம் (4.2 பிஎஸ்டி) |
| SIGXCPU | 24,24,30 | கோர் | CPU கால வரம்பு மீறப்பட்டது (4.2 BSD) |
| SIGXFSZ | 25,25,31 | கோர் | கோப்பு அளவு வரம்பு மீறப்பட்டது (4.2 BSD) |
லினக்ஸ் 2.2 மற்றும் அதனுடன் இயல்புநிலை நடத்தைSIGSYS, SIGXCPU, SIGXFSZ, மற்றும் (SPARC மற்றும் MIPS தவிர அமைப்பில்)SIGBUS செயல்முறை (கோர் டம்ப் இல்லாமல்) முடிக்க வேண்டும். (வேறு ஏதேனும் யூனிட்களில் இயல்புநிலை செயலில்SIGXCPU மற்றும்SIGXFSZ கோர் டம்ப் இல்லாமல் செயல்முறையை நிறுத்த வேண்டும்.) லினக்ஸ் 2.4 இந்த சமிக்ஞைகளுக்கு POSIX 1003.1-2001 தேவைகளுக்கு பொருந்துகிறது, இந்த செயல்முறையை கோர் டம்ப் மூலம் முடக்குகிறது.
அடுத்த சில சமிக்ஞைகள்.
| சிக்னல் | மதிப்பு | அதிரடி | கருத்து |
| SIGEMT | 7,-,7 | கால | |
| SIGSTKFLT | -,16,- | கால | Coprocessor மீது ஸ்டேக் தவறு (பயன்படுத்தப்படாத) |
| SIGIO | 23,29,22 | கால | இப்போது சாத்தியமான I / O (4.2 BSD) |
| SIGCLD | -,-,18 | IGN | SIGCHLD க்கு ஒரு ஒற்றுமை |
| SIGPWR | 29,30,19 | கால | பவர் தோல்வி (கணினி வி) |
| SIGINFO | 29,-,- | SIGPWR க்கு ஒரு ஒற்றுமை | |
| SIGLOST | -,-,- | கால | கோப்பு பூட்டு இழந்தது |
| SIGWINCH | 28,28,20 | IGN | விண்டோ மறுஅளவிடல் சமிக்ஞை (4.3 BSD, சன்) |
| SIGUNUSED | -,31,- | கால | பயன்படுத்தப்படாத சமிக்ஞை (SIGSYS இருக்கும்) |
(சிக்னல் 29 ஆகும்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, நிகழ் நேர சமிக்ஞை எண்களின் வரம்பானது, யூனிஸில் மாறுபடும்.)
நிலையான சமிக்ஞைகளைப் போலல்லாமல், நிகழ்நேர சமிக்ஞைகளுக்கு முன் வரையறுக்கப்படாத அர்த்தங்கள் இல்லை: நிகழ் நேர சமிக்ஞைகளின் முழு தொகுப்பு பயன்பாடு-வரையறுக்கப்பட்ட நோக்கங்களுக்காக பயன்படுத்தப்படலாம். (குறிப்பு, எனினும், LinuxThreads செயல்படுத்த முதல் மூன்று நிகழ் நேர சமிக்ஞைகள் பயன்படுத்துகிறது.)
ஒரு unhandled நிகழ் நேர சமிக்ஞை இயல்புநிலை நடவடிக்கை பெறுதல் செயல்முறை நிறுத்த வேண்டும்.
நிகழ் நேர சமிக்ஞைகள் பின்வருமாறு வேறுபடுகின்றன:
- நிகழ்நேர சமிக்ஞைகளின் பல நிகழ்வுகளை வரிசைப்படுத்தலாம். மாறாக, அந்த சமிக்ஞை தற்போது தடுக்கப்பட்டிருக்கும் போது ஒரு நிலையான சமிக்ஞையின் பல நிகழ்வுகளை வழங்கினால், ஒரே ஒரு நிகழ்வு மட்டுமே வரிசைப்படுத்தப்படுகிறது.
- சமிக்ஞை அனுப்பப்பட்டால்sigqueue(2), அதனுடன் இணைந்த மதிப்பு (முழு எண் அல்லது சுட்டிக்காட்டி) சமிக்ஞையுடன் அனுப்பப்படும். பெறுதல் செயல்முறை இந்த சிக்னலைப் பயன்படுத்தி கையாளுகையை நிறுவியிருந்தால்SA_SIGACTION கொடியிடுsigaction(2) இது வழியாக இந்த தரவு பெற முடியும் si_value துறையில் siginfo_t கையாளுதலுக்கு இரண்டாவது வாதமாக அமைந்தது. மேலும், அந்த si_pid மற்றும் si_uid இந்த அமைப்பின் துறைகள் பி.ஐ.டி மற்றும் சிக்னலை அனுப்புவதற்கான செயல்முறையின் உண்மையான பயனர் ஐடி ஆகியவற்றைப் பெற பயன்படுத்தப்படலாம்.
- உண்மையான நேர சமிக்ஞைகள் ஒரு உத்தரவாத வரிசையில் வழங்கப்படுகின்றன. ஒரே வகை பல நிகழ் நேர சமிக்ஞைகள் அனுப்பப்பட்ட வரிசையில் வழங்கப்படுகின்றன. வெவ்வேறு நிகழ் நேர சமிக்ஞைகளை ஒரு செயல்முறைக்கு அனுப்பினால், அவை குறைந்த எண்ணிக்கையில் உள்ள சமிக்ஞைகளுடன் தொடங்குகின்றன. (அதாவது, குறைந்த எண்ணிக்கையிலான சமிக்ஞைகள் அதிக முன்னுரிமை கொண்டவை.)
ஒரு செயல்முறைக்கு நிலையான மற்றும் நிகழ்நேர சமிக்ஞைகள் நிலுவையில் இருந்தால், POSIX இது குறிப்பிடாமல் குறிப்பிடுகிறது, இது முதலில் வழங்கப்படுகிறது. லினக்ஸ், பல செயலாக்கங்களைப் போலவே, இந்த வழக்கில் நிலையான சமிக்ஞைகளுக்கு முன்னுரிமை அளிக்கிறது.
POSIX இன் படி, ஒரு செயலாக்கம் குறைந்தபட்சம் _POSIX_SIGQUEUE_MAX (32) நிகழ் நேர சமிக்ஞைகளை ஒரு செயல்முறைக்கு வரிசைப்படுத்த அனுமதிக்க வேண்டும். இருப்பினும், ஒரு செயல்முறை வரம்பை வைப்பதை விட, லினக்ஸ் அனைத்து செயல்முறைகளுக்காக வரிசையாக்க நிகழ் நேர சமிக்ஞைகளின் எண்ணிக்கையில் கணினி அளவிலான வரம்பை விதிக்கிறது.
இந்த வரம்பு பார்க்க முடியும் (மற்றும் சிறப்புரிமை) வழியாக மாறிவிட்டது / Proc / sys / கர்னல் / rtsig-அதிகபட்சம் கோப்பு. தொடர்புடைய கோப்பு, / Proc / sys / கர்னல் / rtsig-அதிகபட்சம் , எத்தனை நிகழ்நேர சமிக்ஞைகள் தற்போது வரிசையில் உள்ளன என்பதைக் கண்டுபிடிக்க பயன்படுத்தலாம்.
ஒப்புதல்
POSIX.1
முக்கியமான: பயன்படுத்த ஆண் கட்டளை ( % ஆண் ) உங்கள் குறிப்பிட்ட கணினியில் ஒரு கட்டளை எவ்வாறு பயன்படுத்தப்படுகிறது என்பதைப் பார்க்கவும்.













