GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Membuat Proses Zombie Dummy di Ubuntu 18.04 LTS

Sebagai penguji perangkat lunak, terkadang kita perlu mengetahui seperti apa proses zombie di sistem kita. Kita dapat menjalankan berbagai pengujian jika kita mengetahui secara spesifik program dan ID proses mana yang terkait dengan proses zombie tersebut.

Apa itu Proses Zombie?

Sebuah proses zombie atau mati di Linux adalah proses yang telah selesai, tetapi entri masih tetap dalam tabel proses karena kurangnya korespondensi antara proses induk dan anak. Biasanya, proses induk terus memeriksa status proses anaknya melalui fungsi wait(). Ketika proses anak selesai, fungsi tunggu memberi sinyal kepada orang tua untuk benar-benar keluar dari proses dari memori. Namun, jika induk gagal memanggil fungsi tunggu untuk anak-anaknya, proses anak tetap hidup dalam sistem sebagai proses mati atau zombie. Proses zombie ini mungkin menumpuk, dalam jumlah besar, di sistem Anda dan memengaruhi kinerjanya.

Saat Anda menjalankan perintah teratas dan zombie sedang berjalan, itu akan ditunjukkan oleh baris kedua dari output sebagai berikut:

Namun, jika tidak ada proses zombie yang berjalan di sistem Anda, Anda dapat membuat dummy untuk tujuan pengujian seperti yang dijelaskan dalam artikel ini. Kami menjalankan proses ini di Ubuntu 18.04.

Membuat Proses Zombie

Di bagian ini, kita akan menulis program c untuk menjalankan proses zombie di sistem kita.

Buka editor teks dan masukkan kode berikut:

Kode

#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>int main ()
{
pid_t child_pid;child_pid = fork ();
if (child_pid > 0) {
sleep (60);
}
else {
exit (0);
}
return 0;
}

Simpan file ini sebagai zombie.c

Proses zombie yang dibuat melalui kode ini akan berjalan selama 60 detik. Anda dapat menambah durasi waktu dengan menentukan waktu (dalam detik) dalam fungsi sleep().

Buka Terminal dan jalankan perintah berikut untuk mengkompilasi program ini:

$ cc zombie.c -o zombie

Sekarang file yang dapat dieksekusi dengan nama zombie akan dibuat.

Harap dicatat bahwa Anda perlu menginstal kompiler GNU C jika belum diinstal pada sistem Anda melalui perintah berikut:

$ sudo apt-get install build-essential

Sekarang jalankan program zombie melalui perintah berikut:

./zombie

Anda akan melihat output berikut:

Anda dapat menggunakan ID proses induk (PPID) dan ID proses anak (PID) selama pengujian; misalnya dengan membunuh proses zombie ini melalui perintah kill.

Saat proses ini berjalan, Anda dapat melihat kinerja sistem di jendela Terminal lain melalui perintah teratas. Anda akan dapat melihat 1 proses zombie melalui baris kedua dari output.

Perintah ps sekarang juga akan menampilkan proses yang mati ini dan program zombie yang bertanggung jawab untuk itu:

$ ps axo stat,ppid,pid,comm | grep -w defunct

Perintah ini akan memberi Anda status, parentID, ID proses, program yang menjalankan proses zombie (program zombie yang kita jalankan dalam tutorial ini).

Anda sekarang telah belajar cara membuat proses zombie dummy sederhana. Ini akan memberi Anda gambaran tentang tampilannya di sistem Anda dan bagaimana Anda dapat menggunakannya untuk tujuan pengujian.


Ubuntu
  1. Cara Meningkatkan Ubuntu 15.10 ke Ubuntu 16.04 LTS

  2. Cara Meningkatkan Ubuntu 14.04 LTS ke Ubuntu 16.04 LTS

  3. Buat proses zombie

  1. Cara Meningkatkan Ubuntu 18.04 LTS ke Ubuntu 20.04 LTS

  2. Cara membuat Gambar Docker dengan Dockerfile di Ubuntu 16.04 LTS

  3. Cara membuat dan menjalankan skrip Shell di Ubuntu 20.04 LTS

  1. Cara membuat dan menjalankan program C menggunakan Ubuntu 20.04 LTS

  2. Cara membuat Proses Dummy Zombie dalam Bahasa Pemrograman C di Debian 10

  3. Cara Membuat File ISO di Ubuntu 18.04 LTS