मूल रूप से, kill
कमांड केवल एक प्रक्रिया को मार सकता है, केवल बाद में kill
आपको कोई संकेत भेजने की अनुमति देने के लिए बढ़ाया गया था ।
यूनिक्स (1979) के संस्करण 7 के बाद से डिफ़ॉल्ट प्रक्रिया को एक तरह से संकेत देने के लिए किया गया है जिसे पकड़ा जा सकता है और या तो इनायत से या नजरअंदाज किया जा सकता है ( SIGTERM सिग्नल भेजकर ), लेकिन इसका उपयोग गलीचा को नीचे खींचने के लिए भी किया जा सकता है। एक प्रक्रिया (एक SIGKILL सिग्नल kill -9
भेजता है जिसे पकड़ा नहीं जा सकता है और इस तरह इसे नजरअंदाज नहीं किया जा सकता है)।
पृष्ठभूमि
कम्प्यूटिंग, और विशेष रूप से यूनिक्स, रूपक के साथ व्याप्त है।
प्रक्रियाओं के लिए मुख्य रूपक एक जीवित चीज है जो पैदा होता है, जीवित होता है और मर जाता है।
यूनिक्स में init को छोड़कर सभी प्रक्रियाओं में माता-पिता होते हैं , और कोई भी प्रक्रिया जो अन्य प्रक्रियाओं को जन्म देती है , उनमें बच्चे होते हैं । प्रक्रियाएं अनाथ हो सकती हैं (यदि उनके माता-पिता की मृत्यु हो जाती है) और यहां तक कि लाश बन सकती है , अगर वे अपनी मृत्यु के बाद चारों ओर लटकाते हैं।
इस प्रकार, kill
कमांड इस रूपक के साथ फिट बैठता है।
यूनिक्स पुरातत्व
से मैन्युअल पृष्ठ यूनिक्स (संस्करण जहां के संस्करण 4 से kill
, पेश किया गया था के साथ ps
) हम पाते हैं:
NAME
kill - do in an unwanted process
SYNOPSIS
kill processid ...
DESCRIPTION
Kills the specified processes.
The processid of each asynchronous process
started with `&' is reported by the shell.
Processid's can also be found by using ps (I).
The killed process must have
been started from the same typewriter
as the current user, unless
he is the superuser.
SEE ALSO
ps(I), sh(I)
मुझे इस आदमी पृष्ठ का अंतिम भाग विशेष रूप से पसंद है:
BUGS
Clearly people should only be allowed to kill
processes owned by them, and having the same typewriter
is neither necessary nor sufficient.
जब तक पांचवां संस्करण चारों ओर आ kill
गया था , तब तक किसी भी सिग्नल को भेजने की अनुमति देने के लिए कमान पहले ही ओवरलोड हो चुकी थी।
से यूनिक्स प्रोग्रामर्स मैनुअल, पांचवें संस्करण (p70):
If a signal number preceded by "-" is given
as an argument, that signal is sent instead of
kill (see signal (II)).
डिफ़ॉल्ट हालांकि एक सिग्नल 9 भेजने के लिए था, क्योंकि सिग्नल 15 अभी तक मौजूद नहीं था (देखें p150)।
साथ संस्करण 6kill
आदमी पृष्ठ अब उल्लेख ही टाइपराइटर बग।
यह केवल यूनिक्स के संस्करण 7 के साथ था जो सिग्नल 15 को पेश किया गया था (देखें सिग्नल देखें (2) और v7 के लिए किल (1) मैन पेज) और kill
सिग्नल 9 का उपयोग करने के बजाय उस पर स्विच किया गया।