ہر معیاری POSIX/Linux process signal کے لیے ایک قابلِ مطالعہ حوالہ — SIGHUP سے SIGSYS تک — جو ہر سگنل کا نمبر، اس کا پہلے سے طے شدہ عمل (Term، Core، Ign، Stop، Cont)، آیا اسے پکڑا جا سکتا ہے، اسے کیا چیز اٹھاتی ہے اور متعلقہ shell exit code (128+N) دکھاتا ہے۔ براؤزر میں، مفت۔

ہر معیاری POSIX/Linux process signal، وضاحت کے ساتھ۔ سب کچھ آپ کے براؤزر میں ایک built-in حوالے سے چلتا ہے — سرور کو کچھ نہیں بھیجا جاتا۔

سگنل نمبر پہلے سے طے شدہ عمل قابلِ گرفت تفصیل Exit code
کوئی signal آپ کی تلاش سے مطابقت نہیں رکھتا۔
کوئی مختلف نام یا نمبر آزمائیں — مثال کے طور پر SIGTERM، 11 یا segmentation۔
ان کے علاوہ، Linux real-time signals SIGRTMIN سے SIGRTMAX (عام طور پر signals 34–64) فراہم کرتا ہے۔ ان کا کوئی پہلے سے طے شدہ مطلب نہیں اور یہ یقینی ترتیب میں پہنچائے جاتے ہیں — ایپلیکیشنز اپنا مقصد خود انہیں تفویض کرتی ہیں۔
دکھائے گئے signal نمبر x86/ARM ABI کے لیے ڈیفالٹ ہیں۔ چند signals دیگر architectures پر مختلف نمبر رکھتے ہیں (مثلاً Alpha، MIPS اور SPARC)، اس لیے اسکرپٹس میں ہمیشہ علامتی نام (SIGKILL) کو خام نمبر (9) پر ترجیح دیں۔

لینکس سگنلز کے بارے میں

Linux Signals حوالہ ہر معیاری POSIX/Linux عمل signal کو، SIGHUP سے SIGSYS تک، ایک قابلِ مطالعہ جدول میں درج کرتا ہے۔ ہر قطار signal کا نمبر، اس کا default عمل — Terminate، Core dump، Ignore، Stop یا Continue — کیا کوئی عمل اسے پکڑ سکتا ہے، عام طور پر یہ کیا بلند کرتا ہے، اور shell exit code (128 + N) دکھاتی ہے جو آپ اس وقت دیکھتے ہیں جب کوئی عمل اس سے مر جاتا ہے۔

یہ exit-code کالم اس چکر کو بند کرتا ہے جس سے ڈویلپرز روزانہ ٹکراتے ہیں: ایک container جو 137 کے ساتھ ختم ہوا SIGKILL (9) سے مارا گیا، ایک crash جو 139 کے ساتھ ہوا SIGSEGV (11) سے segmentation fault تھا، اور 143 پر ایک صاف بند ہونا SIGTERM (15) سے آیا۔ تلاش نام، نمبر، exit code یا معنی سے کام کرتی ہے، تاکہ آپ جو بھی سراغ رکھتے ہوں اس سے شروع کر سکیں۔

دو فٹ نوٹس ان حصوں کو کور کرتے ہیں جو حوالے عام طور پر چھوڑ دیتے ہیں: real-time signals SIGRTMIN سے SIGRTMAX تک، جن کا کوئی پہلے سے متعین معنی نہیں اور جو یقینی ترتیب میں پہنچائے جاتے ہیں، اور architecture کا احتیاطی نوٹ — کچھ signal نمبرز Alpha، MIPS اور SPARC پر مختلف ہیں، یہی وجہ ہے کہ اسکرپٹس کو علامتی ناموں کا استعمال کرنا چاہیے۔ سب کچھ آپ کے براؤزر میں چلتا ہے۔

لینکس سگنلز استعمال کرنے کا طریقہ

  1. signal کو نام (SIGKILL)، نمبر (9)، shell exit code (137) یا "segmentation" جیسے کلیدی لفظ سے تلاش کریں۔
  2. قطار پڑھیں: نمبر، default عمل، کیا اسے پکڑا جا سکتا ہے، اور یہ کیا بلند کرتا ہے۔
  3. exit-code کالم کو استعمال کریں تاکہ 128+N shell حیثیت کو واپس اس signal میں ترجمہ کریں جس نے عمل کو مارا۔
  4. قطار کے کاپی بٹنز سے signal کا نام یا exit code کاپی کریں۔
  5. اگر آپ قابلِ منتقلی اسکرپٹس لکھ رہے ہیں تو real-time signals اور architecture کے مطابق نمبرنگ کے نوٹس چیک کریں۔

اکثر پوچھے جانے والے سوالات

SIGTERM (15) کسی عمل سے شائستگی سے باہر نکلنے کی درخواست کرتا ہے — اسے پکڑا جا سکتا ہے، اس لیے عمل پہلے صفائی کر سکتا ہے۔ SIGKILL (9) kernel سطح پر فوری طور پر ختم کر دیتا ہے اور اسے پکڑا، بلاک یا نظر انداز نہیں کیا جا سکتا۔ kill -9 استعمال کرنے سے پہلے ہمیشہ SIGTERM آزمائیں۔

SIGKILL اور SIGSTOP۔ kernel دونوں کو براہ راست نافذ کرتا ہے، اس لیے کوئی handler انہیں روک نہیں سکتا — SIGKILL ہمیشہ عمل کو ختم کرتا ہے اور SIGSTOP ہمیشہ اسے معطل کرتا ہے۔

جب کوئی عمل کسی signal سے مارا جاتا ہے، تو shell 128 جمع signal نمبر رپورٹ کرتا ہے۔ تو 139 دراصل 128 + 11 ہے: عمل SIGSEGV، ایک segmentation fault، سے مر گیا۔ جدول ہر fatal signal کے ساتھ یہ exit code درج کرتا ہے۔

SIGRTMIN سے SIGRTMAX — عام طور پر Linux پر نمبر 34 سے 64۔ معیاری signals کے برعکس ان کا کوئی پہلے سے متعین معنی نہیں اور انہیں یقینی ترتیب میں قطار میں لگایا اور پہنچایا جاتا ہے، تاکہ ایپلیکیشنز انہیں اپنے مقاصد تفویض کریں۔

کیونکہ کچھ signal نمبرز مختلف CPU architectures جیسے Alpha، MIPS اور SPARC کے درمیان مختلف ہیں۔ علامتی نام — kill -TERM بجائے kill -15 کے — ہر جگہ ایک ہی چیز کا مطلب رکھتا ہے، اس لیے یہ قابلِ منتقلی انتخاب ہے۔

جی ہاں، مکمل طور پر مفت۔ پورا جدول صفحے میں بنایا گیا ہے اور تمام تلاش اور کاپی کرنا آپ کے براؤزر میں ہوتا ہے۔

شیئر کریں
مدد چاہیے؟
اس ٹول میں کوئی مسئلہ ملا؟ ہماری ٹیم کو بتائیں۔
مسئلہ رپورٹ کریں

اس مفت ٹول کو اپنی ویب سائٹ پر شامل کریں — نیچے دیا گیا کوڈ کاپی اور پیسٹ کریں۔