سگنل لينڪس / يونڪس حڪم

Linux ٻنهي POSIX قابل اعتماد سگنلز جي حمايت ڪري ٿو (هتي "معياري سگنل") ۽ POSIX حقيقي وقت سگنل.

معياري سگنل

لينڪس هيٺ ڏنل فهرستن جي صحيح سگنلن کي سپورٽ ڪندو آهي. ڪيترائي سگنل نمبر تعميراتي تعمير تي مشتمل آهن، جيئن ته "ويل" ڪالمن ۾ اشارو ڏنل آهي. (جتي ٽن ويلن کي ڏني وئي آهي، پهريون ڀيرو عام طور تي الفا ۽ اسپار لاء صحيح آهي، وچين مان i386، پي پي سي ۽ ش، ۽ ميپس لاء آخري.

ج - ظاهر ڪري ٿو ته اهڙي فن تعمير تي سگنل غير حاضر آهي.)

ميز جي "ايڪشن" ڪالمن جي داخلان ۾ هيٺ ڏنل اشارو جي نموني ڄاڻايل وضاحت ڪئي وئي آهي:

اصطلاح

عمل کي ختم ڪرڻ لاء غلط عمل.

نڀاڳو

اڳوڻي ڪارڪردگي سگنل کي نظر انداز ڪرڻ لاء آهي.

ڪور

عمل کي ختم ڪرڻ ۽ ڊمپ ڪور کي ختم ڪرڻ لاء.

رکو

عمل کي روڪڻ لاء غلط عمل.

پهريون اشارو اصل POSIX.1 معياري ۾ بيان ڪيو ويو آهي.

سگنل ويليو عمل تبصرو
يا سنڀالڻ واري عمل جي موت
SIGINT 2 اصطلاح ڪيبورڊ تان مداخلت
SIGQUIT 3 ڪور ڪيبورڊ تان نڪتو
ڄاڻ 4 ڪور غير قانوني هدايتون
SIGABRT 6 ڪور حرف کان سگنل ڏيو (3)
SIGFPE 8 ڪور سچل جي پوائنٽ استثنا
ڄاڻ 9 اصطلاح سگنل ماريو
SIGSEGV 11 ڪور غلط يادداشت جي حوالي سان
SIGPIPE 13 اصطلاح ٽوڙيل پائپ: ڪو پڙهندڙن سان پائپ ڪرڻ نه گهرجي
SIGALRM 14 اصطلاح ٽرٽر سگنل کان سگنل (2)
SIGTERM 15 اصطلاح ختم ٿيڻ سگنل
SIGUSR1 30،10،16 اصطلاح استعمال ڪندڙ سگنل 1
SIGUSR2 31،12،17 اصطلاح استعمال ڪندڙ سگنل 2
SIGCHLD 20،17،18 نڀاڳو ٻارن کي روڪي يا ختم ڪيو ويو آهي
SIGCONT 19،18،25 رڪاوٽ جاري رکو
SIGSTOP 17،19،23 رکو ڪم روڪيو
SIGTSTP 18،20،24 رکو ٽامي تي ٽائپ ڪريو
SIGTTIN 21،21،26 رکو پس منظر جي عمل لاء ٽٽي ان پٽ
SIGTTOU 22،22،27 رکو پسمنظر جي عمل لاء ٽٽي ٻاڦ

اشارن کي نشانو بڻايو ويو ۽ SIGSTOP پڪڙي نه ٿي سگھي، بند ٿيل، يا نظر انداز نٿو ڪري سگھجي.

اڳيان سگنل POSIX.1 معياري ۾ نه آهي پر SUSv2 ۽ SUSv3 / POSIX 1003.1-2001 ۾ بيان ڪيل آهي.

سگنل ويليو عمل تبصرو
SIGPOLL اصطلاح آبهوا واري واقعي (سي ايس وي). SIGIO جا اکر
SIGPROF 27،27،29 اصطلاح ڇپيل ٽائيم ٽائيم ختم ٿي وئي
SIGSYS 12، -، 12 ڪور خراب دليلن تي معمول (SVID)
SIGTRAP 5 ڪور ٽريڪ / ٽوڪ پوائنٽ جي پيپر
سائن ان ڪريو 16،23،21 نڀاڳو ساکري تي شرط ساکٹ (4.2 BSD)
SIGVTALRM 26،26،28 اصطلاح مجازي الارم گھڙي (4.2 بي ايس ايس)
SIGXCPU 24،24،30 ڪور سي پي يو جي حد حد کان وڌي وئي (4.2 BSD)
SIGXFSZ 25،25،31 ڪور فائيل سائيز جي حد وڌائي وئي (4.2 بي ايس ايس ڊي)

۽ لينڪس 2.2، سي ايس ايس سيس جي ڊيموڪريڪ رويي، SIGXCPU ، SIGXFSZ ، ۽ (on architectures other than SPARC ۽ MIPS) شامل آهن SIGBUS انهي عمل کي ختم ڪرڻ (بغير ڪور ڊاپ کان سواء) هو. (ڪجهه ٻين يونيورسٽن تي عمل کي ختم ڪرڻ لاء SIGXCPU ۽ SIGXFSZ لاء ڊيموڪريڪ ايڪشن.) لينڪس 2.4 انهن سڀني سگنلن لاء POSIX 1003.1-2001 جي ضرورتن جي مطابق، ڪور ڊمپ سان عمل کي ختم ڪرڻ.

اڳيان مختلف ٻيا سگنل.

سگنل ويليو عمل تبصرو
SIGEMT 7، - 7 اصطلاح
SIGSTKFLT - 16، - اصطلاح Coprocessor تي اسٽيڪ غلطي (استعمال ٿيل)
SIGIO 23،29،22 اصطلاح هاڻ اي ممڪن (4.2 بي ايس ايس)
SIGCLD -، - 18 نڀاڳو SIGCHLD لاء هڪجهڙائي
SIGPWR 29،30،19 اصطلاح پاور ناڪامي (منڊل وي)
SIGINFO 29، -، SIGPWR جي هڪ مترادف آهي
SIGLOST -، -، اصطلاح فائل لاڪ گم ٿيل
SIGWINCH 28،28،20 نڀاڳو دريز ريسائز ڪرڻ سگنل (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 تي عمل درآمد پهريون ٽي حقيقي وقت سگنل استعمال ڪري ٿو.)

اڻ کليل حقيقي وقت جي سگنل لاء ڊيموڪريڪ ايڪشن حاصل ڪرڻ جي عمل کي ختم ڪرڻ آهي.

حقيقي وقت سگنل هيٺ ڏنل آهن:

  1. اصلي وقت جي سگنل جي گهڻن مثالن کي قطار ڪري سگهجي ٿو. ان جي ابتڙ، جيڪڏهن جيڪڏهن هڪ اشارو معياري سگنل پهچائي رهيا آهن جڏهن ته سگنل هن وقت بند ڪئي وئي آهي، پوء فقط هڪ مثال هيٺ ڏنل آهي.
  2. جيڪڏهن سگنل سيريڪيو (2)، هڪ گڏوگڏ قدر (يا ته هڪ انٽرويو يا هڪ پوسٽر) استعمال ڪندي سگنل سان موڪلي سگھجي ٿو. جيڪڏهن حاصل ڪرڻ واري عمل هن سگنل لاء SAHIGTIONTION پرچم کي استعمال ڪندي هن اشاري لاء هڪ هٿيار قائم ڪري ٿو (2) پوء انهي کي حاصل ڪري سگهو ٿا siginfo_t ڍڪين جي سئي_ value فيلڊ جي ذريعي هن ڊيٽا حاصل ڪري سگهيو آهي ٻئي طرف هٿ هڙتال جي طور تي. ان کان علاوه، هن ساخت جي سي__id ۽ سي__ڊڊ فيلڊ کي پي اي سي ۽ سگنل موڪلڻ واري عمل جي اصلي صارف ID حاصل ڪرڻ لاء استعمال ٿي سگهي ٿو.
  3. حقيقي وقت سگنل هڪ ضمانت واري آرڊر ۾ پهچائي رهيا آهن. ساڳئي قسم جا ڪيترائي حقيقي وقت سگنل جيڪي ترتيب موڪلي رهيا هئا انهن ۾ پهچائي رهيا آهن. جيڪڏهن مختلف حقيقي وقت سگنل هڪ طريقيڪار ڏانهن موڪلي رهيا آهن، انهن کي گهٽ ترين نمبر سگنل سان شروع ڪيل آهن. (يعني، گهٽ وڌيل سگنلن ۾ سڀ کان اول ترجيح آهي.)

جيڪڏهن ٻئي معياري ۽ حقيقي وقت جي سگنل هڪ عمل لاء انتظار ۾ آهن، POSIX اهو اڻ ڄاتل اڻ پڙهيل آهي جيڪو پهريون پهچايو ويو آهي. لينڪس ٻين ڪيترن ئي عملن وانگر، هن ڪيس ۾ معياري سگنل کي ترجيح ڏئي ٿو.

POSIX جي مطابق، هڪ عملدرآمد تي گهٽ ۾ گهٽ _POSIX_SIGQUEUE_MAX (32) حقيقي وقت سگنل کي پروسيس ۾ قطار ٿيڻ گهرجي. جڏهن ته، ڪنهن پروسيس جي حد بندي ڪرڻ بجاء، لينڪس سڀني طريقن جي لاء قطار حقيقي وقت سگنل جي تعداد تي سسٽم لڳائي ٿو.

اهو حد ڏسي سگهجي ٿو (۽ استحڪام سان) تبديل / proc / sys / kernel / rtsig-max فائل ذريعي تبديل ٿيو. هڪ متعلق فائل، / پي پي / سسٽن / ڪيٽائنٽ / وڌ ، استعمال ڪرڻ لاء استعمال ڪري سگهجي ٿو ته ڪيترا ئي حقيقي وقت سگنل ڪيترا قطار آهن.

ڪرڻ جي لاء

POSIX.1

اهم: توهان جي خاص ڪمپيوٽر تي ڪئين ڪئين استعمال ڪيو وڃي ڏسڻ لاء انسان حڪم ( ٪ مڙس ) استعمال ڪريو.