नहीं। ओओएम किलर द्वारा एक प्रक्रिया की मौत हो जाने के बाद, यह मर चुका है। आप इसे पुन: प्रारंभ कर सकते हैं (संसाधनों को अनुमति दे रहे हैं), और यदि यह कुछ ऐसा है जो सिस्टम द्वारा प्रबंधित किया जाता है (इनटैब के माध्यम से, शायद), तो यह उस तरह से पुन: प्रारंभ हो सकता है।
संपादित करें: एक विचार प्रयोग के रूप में, इस बारे में सोचें कि किसी प्रक्रिया के पुनरुत्थान का क्या अर्थ होगा। यहां तक कि यदि आप पूरी प्रक्रिया स्थिति को स्टोर कर सकते हैं, तो आप नहीं चाहते हैं क्योंकि मारे गए प्रक्रिया को स्मृति की स्थिति के लिए कारण हो सकता है।
तो संभवतः आप संभवतः सबसे अच्छा कारण यह स्टार्टअप स्थिति (कमांड लाइन, आदि) को स्टोर करना होगा। लेकिन यह कोई अच्छा नहीं है, क्योंकि फिर से, ऐसा हो सकता है कि क्यों सिस्टम पहली जगह मेमोरी से बाहर चला गया!
इसके अलावा, अगर आप इस तरह से एक प्रक्रिया को पुनर्जीवित करते हैं, तो कोई बात नहीं है कि क्या गलत हो सकता है। क्या होगा यदि प्रक्रिया हार्डवेयर को नियंत्रित करती है? क्या होगा अगर प्रक्रिया नियंत्रण एक से अधिक बार नहीं चलाना चाहिए? क्या होगा यदि यह एक टीटी से जुड़ा हुआ था जो अब और नहीं है (क्योंकि एसएसडीडी प्रक्रियाओं में से एक था)?
ऐसी प्रक्रिया के आसपास एक विशाल मात्रा में संदर्भ है जिस पर सिस्टम संभवतः अवगत नहीं हो सकता है। केवल समझदार चीज वह चीज है जो कर्नेल करता है: चूसने वाले को मारो और आगे बढ़ो।
मुझे लगता है कि आप एक हाइबरनेट-द-प्रोसेस-टू-डिस्क रणनीति की कल्पना कर सकते हैं, लेकिन यह देखते हुए कि हम स्मृति (स्वैप सहित) से बाहर हैं, इसका मतलब है कि या तो डिस्क स्थान को पूर्व-सुरक्षित करना या डिस्क स्थान आवंटित करने का निर्णय लेना फ्लाई पर यह करने के लिए। किसी भी रणनीति में से किसी भी प्रक्रिया में प्रक्रिया के आकार से निपटने में सक्षम नहीं हो सकता है।
संक्षेप में: नहीं, आप ओओएम हत्यारे से वापस नहीं आते हैं। यह एक हत्यारा है, आपको बस इससे निपटना होगा।
स्रोत
2009-12-22 15:00:46
मुझे समझ नहीं आता क्यों लोगों को इस बंद करना चाहते हैं का उदाहरण सवाल यह है कि यह बहुत प्रोग्रामिंग उन्मुख है: कार्यक्रमों को ओओएम स्थितियों/आउट-ऑफ-ओओएम स्थितियों से कैसे निपटना पड़ता है। – jldupont