2017-12-26 129 views
10

क्या ज़ोंबी और निष्क्रिय प्रक्रियाओं के बीच कोई अंतर है? मुझे विकिपीडिया लेख मिला है जहां यह लिखा गया है कि ये दोनों एक जैसे हैं। उस मामले कारण है कि यह एक ही प्रक्रिया के लिए 2 अलग शर्तों के लिए आवश्यक है में:ज़ोंबी बनाम Defunct प्रक्रियाओं?

https://en.wikipedia.org/wiki/Zombie_process

+0

केवल कुछ के लिए 2 शब्द होने से बाकी कंप्यूटर व्यवसाय के सापेक्ष बहुत अच्छा संबंध है। डेटाबेस में सबकुछ में 5+ नाम होते हैं, अक्सर अलग-अलग हिस्सों के लिए एक ही शब्द का पुन: उपयोग करते हैं। https://askubuntu.com/questions/201303/what-is-a-defunct-process-and-why-doesnt-it-get-killed – chicks

उत्तर

7

लिनक्स के लिए "मृत" और "ज़ोंबी" प्रक्रियाओं एक ही हैं।

man ps से:

प्रक्रियाओं चिह्नित <defunct> मृत प्रक्रियाओं (तथाकथित "लाश") जो रहेगा, क्योंकि उनके माता पिता उन्हें ठीक से नष्ट नहीं किया गया है। माता-पिता प्रक्रिया से बाहर निकलने पर इन प्रक्रियाओं को init (8) द्वारा नष्ट कर दिया जाएगा।

PROCESS STATE CODES 
    Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to describe the state of a process: 
    D uninterruptible sleep (usually IO) 
    R running or runnable (on run queue) 
    S interruptible sleep (waiting for an event to complete) 
    T stopped by job control signal 
    t stopped by debugger during the tracing 
    W paging (not valid since the 2.6.xx kernel) 
    X dead (should never be seen) 
    Z defunct ("zombie") process, terminated but not reaped by its parent 
0

दोनों Zombie और defunct ही हैं। ZOMBIEstate of the process में से एक है जबकि defunct स्थिति नहीं है, तो आप इसे अपने कर्नेल स्रोत कोड से देख सकते हैं।

enum proc_state { 
    UNUSED, /*** processes in initial state **/ 
    EMBRYO, 
    SLEEPING, 
    RUNNABLE, 
    RUNNING, 
    ZOMBIE /** processes in final state **/ 
}; 

ज़ोंबी राज्य का मतलब है जहां यह बाहर निकल गया है लेकिन अभी तक साफ कर दिया गया है।

आप proc(1) का मैन पेज खोल सकते हैं और इस /proc/[pid]/stat प्रक्रिया के बारे में स्थिति जानकारी देखें। इसका उपयोग ps(1) द्वारा किया जाता है।

संबंधित मुद्दे