GNU/Linux >> Belajar Linux >  >> Linux

Proses Zombie vs Mati?

Keduanya Zombie dan defunct sama. ZOMBIE adalah salah satu dari state of the process sementara tidak ada defunct state, Anda dapat melihatnya dari kode sumber kernel Anda.

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

Kondisi zombie berarti telah keluar tetapi belum dibersihkan .

Anda dapat membuka halaman manual proc(1) dan lihat /proc/[pid]/stat ini Informasi status tentang proses. Ini digunakan oleh ps(1) .


Untuk Linux, proses "mati" dan "zombie" adalah sama.

Dari man ps :

Proses ditandai <defunct> adalah proses mati (disebut "zombie") yang tersisa karena induknya tidak menghancurkannya dengan benar. Proses ini akan dihancurkan oleh init(8) jika proses induk keluar.

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

Seperti kata Achal mati ditambahkan oleh ps. Sebenarnya, mereka bukanlah hal yang sama.

Misalnya, hanya tid 10941 yang merupakan zombie di tabel berikut. Utas lainnya ada di stat D, bukan Z.

$ grep prometheus foo/bar/sos_commands/process/ps_-elfL
4 Z root      10941  10920  10941  0    6  80   0 -      0 exit   Mar14 ?  00:11:41 [prometheus] <defunct>
1 D root      10941  10920  11010  0    6  80   0 - 621811 wait_o Mar14 ?  00:11:08 [prometheus] <defunct>
1 D root      10941  10920  11025  0    6  80   0 - 621811 wait_o Mar14 ?  00:08:13 [prometheus] <defunct>
1 D root      10941  10920  11057  0    6  80   0 - 621811 wait_o Mar14 ?  00:11:12 [prometheus] <defunct>
1 D root      10941  10920  11060  0    6  80   0 - 621811 wait_o Mar14 ?  00:11:42 [prometheus] <defunct>
1 D root      10941  10920  11298  0    6  80   0 - 621811 wait_o Mar14 ?  00:11:05 [prometheus] <defunct>


Linux
  1. Cara mematikan proses zombie di Linux

  2. Alihkan status kunci Fn

  3. Cara terbaik untuk mematikan proses status Zombie dan D di linux

  1. Apa Proses Zombie Dan Bagaimana Menemukan &Membunuh Proses Zombie?

  2. Apa itu Proses Linux, Utas, Proses Ringan, dan Status Proses

  3. ps:perintah tidak ditemukan

  1. Perintah Linux ps

  2. Linux:Temukan dan Bunuh Proses Zombie

  3. Buat proses zombie