Skip to main content

সংকেত - লিনাক্স / ইউনিক্স কমান্ড

লিনাক্স / ইউনিক্স মধ্যে সংকেত (জুন 2026)

লিনাক্স / ইউনিক্স মধ্যে সংকেত (জুন 2026)
Anonim

লিনাক্স উভয় POSIX নির্ভরযোগ্য সংকেত (তারপরে "স্ট্যান্ডার্ড সিগন্যাল") এবং POSIX রিয়েল টাইম সংকেত উভয় সমর্থন করে।

স্ট্যান্ডার্ড সংকেত

লিনাক্স নীচের তালিকাভুক্ত স্ট্যান্ডার্ড সিগন্যাল সমর্থন করে। "মান" কলামে নির্দেশিত হিসাবে বেশিরভাগ সিগন্যাল সংখ্যার আর্কিটেকচার নির্ভরশীল। (যেখানে তিনটি মান দেওয়া হয়, প্রথমটি সাধারণত আলফা এবং স্পার্কের জন্য বৈধ, i386, পিপিসি এবং sh এবং মধ্যমের জন্য শেষের জন্য বৈধ।

এ - নির্দেশ করে যে সংশ্লিষ্ট সংকেতটিতে একটি সংকেত অনুপস্থিত।)

টেবিলের "অ্যাকশন" কলামের এন্ট্রিগুলি সিগন্যালের জন্য ডিফল্ট ক্রিয়া নির্দিষ্ট করে:

শব্দ

ডিফল্ট কর্ম প্রক্রিয়া শেষ করা হয়।

IGN

ডিফল্ট কর্ম সংকেত উপেক্ষা করা হয়।

মূল

ডিফল্ট কর্ম প্রক্রিয়া এবং ডাম্প কোর বিনষ্ট করা হয়।

থামুন

ডিফল্ট কর্ম প্রক্রিয়া বন্ধ করা হয়।

প্রথম মূল POSIX.1 মান বর্ণিত সংকেত।

সংকেতমানকর্মমন্তব্য
অথবা নিয়ন্ত্রণ প্রক্রিয়া মৃত্যু
SIGINT2শব্দকীবোর্ড থেকে বিরতি
SIGQUIT3মূলকীবোর্ড থেকে প্রস্থান করুন
SIGILL4মূলঅবৈধ নির্দেশনা
SIGABRT6মূলথেকে সংকেত বর্জন গর্ভপাত করান (3)
SIGFPE8মূলভাসমান বিন্দু ব্যতিক্রম
SIGKILL9শব্দসংকেত হত্যা
SIGSEGV11মূলঅবৈধ মেমরি রেফারেন্স
SIGPIPE13শব্দভাঙ্গা পাইপ: কোন পাঠকদের সঙ্গে পাইপ লিখুন
SIGALRM14শব্দথেকে টাইমার সংকেত বিপদাশঙ্কা (2)
SIGTERM15শব্দসমাপ্তি সংকেত
SIGUSR130,10,16শব্দব্যবহারকারী সংজ্ঞায়িত সংকেত 1
SIGUSR231,12,17শব্দব্যবহারকারী সংজ্ঞায়িত সংকেত 2
SIGCHLD20,17,18IGNশিশু বন্ধ বা বাতিল
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 শব্দপোলোবল ইভেন্ট (Sys V)। সিআইজিওআই এর শব্দের নাম
SIGPROF27,27,29শব্দপ্রোফাইলিং টাইমার মেয়াদ উত্তীর্ণ
SIGSYS12,-,12মূলরুটিন থেকে খারাপ যুক্তি (SVID)
SIGTRAP5মূলট্রেস / ব্রেকপয়েন্ট ফাঁদ
SIGURG16,23,21IGNসকেটের উপর জরুরি অবস্থা (4.2 বিএসডি)
SIGVTALRM26,26,28শব্দভার্চুয়াল এলার্ম ঘড়ি (4.2 বিএসডি)
SIGXCPU24,24,30মূলCPU সময় সীমা অতিক্রম করেছে (4.2 বিএসডি)
SIGXFSZ25,25,31মূলফাইলের আকার সীমা অতিক্রম করেছে (4.2 বিএসডি)

লিনাক্স 2.2 পর্যন্ত এবং এর সাথে ডিফল্ট আচরণSIGSYS, SIGXCPU, SIGXFSZ, এবং (SPARC এবং MIPS ব্যতীত অন্য স্থাপত্যগুলিতে)SIGBUS প্রক্রিয়া বাতিল করা হয়েছে (একটি কোর ডাম্প ছাড়া)। (কিছু অন্যান্য ইউনিসের জন্য ডিফল্ট কর্মSIGXCPU এবংSIGXFSZ কোনও কোর ডাম্প ছাড়াই প্রক্রিয়াটিকে শেষ করতে হয়।) লিনাক্স 2.4 এই সিগন্যালগুলির জন্য POSIX 1003.1-2001 প্রয়োজনীয়তার সাথে সামঞ্জস্যপূর্ণ, কোর ডাম্প সহ প্রক্রিয়াটি বাতিল করে।

পরবর্তী বিভিন্ন অন্যান্য সংকেত।

সংকেতমানকর্মমন্তব্য
SIGEMT7,-,7শব্দ
SIGSTKFLT-,16,-শব্দCoprocessor উপর স্ট্যাক ফল্ট (অব্যবহৃত)
SIGIO23,29,22শব্দএখন আমি / হে সম্ভব (4.2 বিএসডি)
SIGCLD-,-,18IGNSIGCHLD এর জন্য একটি প্রতিশব্দ
SIGPWR29,30,19শব্দশক্তি ব্যর্থতা (সিস্টেম ভি)
SIGINFO29,-,- SIGPWR জন্য একটি প্রতিশব্দ
SIGLOST-,-,-শব্দফাইল লক হারিয়ে গেছে
SIGWINCH28,28,20IGNউইন্ডো পুনরায় আকার সংকেত (4.3 বিএসডি, সূর্য)
SIGUNUSED-,31,-শব্দঅব্যবহৃত সংকেত (SIGSYS হবে)

(সংকেত 29 হয়SIGINFO / SIGPWR একটি আলফা কিন্তুSIGLOST একটি spark উপর।)

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, যেহেতু রিয়েল-টাইম সংকেত সংখ্যার পরিসীমা ইউনিসেক্স জুড়ে পরিবর্তিত হয়।)

স্ট্যান্ডার্ড সিগন্যালের বিপরীতে, রিয়েল-টাইম সিগন্যালগুলির কোন পূর্বনির্ধারিত অর্থ নেই: রিয়েল-টাইম সিগন্যালগুলির পুরো সেটটি অ্যাপ্লিকেশান-সংজ্ঞায়িত উদ্দেশ্যে ব্যবহার করা যেতে পারে। (উল্লেখ্য, তবে, লিনাক্স থ্রেডস বাস্তবায়ন প্রথম তিনটি রিয়েল-টাইম সংকেত ব্যবহার করে।)

একটি unhandled রিয়েল টাইম সংকেত জন্য ডিফল্ট কর্ম গ্রহণকারী প্রক্রিয়া শেষ করা হয়।

রিয়েল টাইম সিগন্যালগুলি নিম্নলিখিত অনুসারে বিশিষ্ট হয়:

  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 / kernel / rtsig-MAX ফাইল। একটি সম্পর্কিত ফাইল, জন্য / proc / sys / kernel / rtsig-MAX , বর্তমানে কতগুলি রিয়েল-টাইম সিগন্যাল বর্তমানে সারিবদ্ধ হয় তা খুঁজে বের করতে ব্যবহার করা যেতে পারে।

কনফিগারিং

POSIX.1

গুরুত্বপূর্ণ: ব্যবহার মানুষ কমান্ড ( % মানুষ ) আপনার কম্পিউটারে কোন কমান্ড ব্যবহার করা হয় তা দেখতে।