2017-12-26 166 views
10

Zombi ve hatalı süreçler arasında fark var mı? Bu ikisinin aynı olduğu yazılan wikipedia makalesini buldum. Aynı işlem için 2 farklı terimler olması gereklidir yüzden durumunda: Linux içinZombie vs Defunct işlemleri?

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

+0

Sadece bir şey için 2 terime sahip olmak, bilgisayar işinin geri kalanına göre oldukça iyi durumda. Bir veritabanındaki her şey 5'den fazla isme sahiptir ve genellikle farklı sözcükler için aynı kelimeleri tekrar kullanır. https://askubuntu.com/questions/201303/what-is-a-defunct-process-and-why-doesnt-it-get-killed – chicks

cevap

7

"feshedilmiş" ve "zombi" süreçleri aynıdır. man ps itibaren

:

Süreçler <defunct> ölü süreçler, üst bunları düzgün tahrip olmadığı için kalır ("zombi" olarak adlandırılan) işaretli. Ana süreç çıkarsa, bu işlemler init (8) tarafından yok edilecektir.

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

Hem Zombie ve defunct aynıdır. ZOMBIE, defunct durumu yokken state of the process'dan biridir, bunu çekirdek kaynak kodunuzdan görebilirsiniz. Çıktıktan ancak henüz temizlenmiş değil nereye

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

Zombi devlet demektir.

proc(1) man sayfasını açabilir ve bu /proc/[pid]/stat işlemiyle ilgili durum bilgilerini görebilirsiniz. Bu ps(1) tarafından kullanılır.