Cara Membedakan Kebuntuan dan Kelaparan

Perbedaan yang menonjol antara kebuntuan dan kelaparan adalah kebuntuan terjadi ketika setiap proses memegang sumber daya dan menunggu untuk mendapatkan sumber daya yang dipegang oleh proses lain sementara kelaparan terjadi ketika suatu proses menunggu untuk jangka waktu yang tidak terbatas untuk mendapatkan sumber daya yang diperlukan.

Sebuah sistem komputer melakukan beberapa proses secara bersamaan. Sebuah proses memuat ke memori pada saat eksekusi. Proses dibuat dan diakhiri secara terus menerus. Sistem operasi memelihara Process Control Block (PCB) untuk setiap proses. PCB mencakup informasi seperti id proses, penghitung program, informasi manajemen memori, dan banyak lagi. Sistem operasi menghapus PCB setelah proses berakhir. Kebuntuan dan kelaparan adalah dua situasi yang terkait dengan proses.

Topik bahasan kami tentang:

  1. Apa itu Kebuntuan? – Definisi, Fungsionalitas 2. Apa itu Kelaparan? – Definisi, Fungsionalitas 3. Perbedaan Antara Kebuntuan dan Kelaparan – Perbandingan Perbedaan Kunci

Istilah Utama

Kebuntuan, Proses, Sistem Operasi, Kelaparan

Yang perlu anda ketahui tentang Deadlock?

Proses adalah program yang sedang dieksekusi. Ini membutuhkan berbagai sumber daya saat mengeksekusi. Pertama, proses meminta sumber daya. Setelah mendapatkan sumber daya, ia menggunakannya dan melepaskan sumber daya. Sebagai contoh, asumsikan ada satu set proses. Setiap proses memegang sumber daya dan menunggu untuk mendapatkan sumber daya yang dipegang oleh proses lain. Kita menyebut situasi seperti ini sebagai jalan buntu.

Kebuntuan dapat terjadi ketika kondisi berikut terjadi secara bersamaan.

Mutual Exclusion – Hanya satu proses yang dapat menggunakan sumber daya pada satu waktu.

Tahan dan Tunggu – Sebuah proses yang menyimpan setidaknya satu sumber daya sedang menunggu untuk memperoleh sumber daya tambahan yang dipegang oleh proses lain.

Tanpa Preemption – Sumber daya dilepaskan oleh proses yang menahannya setelah menyelesaikan tugas.

Circular Wait – Asumsikan bahwa ada empat proses yang disebut P1, P2, P3, dan P4. P1 sedang menunggu sumber daya yang dipegang oleh P2. P2 sedang menunggu sumber daya yang dipegang oleh P3. P3 sedang menunggu sumber daya yang dipegang oleh P4 dan P4 sedang menunggu proses yang dipegang oleh P1. Kita menyebut situasi seperti ini sebagai penantian melingkar.

Diberikan di bawah ini adalah beberapa mekanisme untuk menghilangkan kebuntuan setelah terjadi:

Preemption – Mendapatkan sumber daya dari suatu proses dan mengalokasikannya ke yang lain.

Rollback – Saat terjadi deadlock, gulung semuanya ke kondisi aman terakhir dan alokasikan sumber daya secara berbeda untuk menghindari situasi deadlock.

Selain itu, dimungkinkan juga untuk menghentikan satu atau beberapa proses. Tapi, ini adalah metode yang mahal.

Yang perlu anda ketahui tentang Kelaparan?

Kelaparan adalah situasi yang terjadi ketika suatu proses menunggu sumber daya untuk jangka waktu yang lebih lama. Proses memiliki prioritas. Proses prioritas tinggi mendapatkan sumber daya yang dibutuhkan dalam waktu minimum. Namun, ini menyebabkan proses berprioritas rendah menunggu proses yang diperlukan untuk menyelesaikan tugas. Ketika proses ini menunggu untuk waktu yang tak terbatas, kita menyebutnya kelaparan sumber daya kelaparan.

Selanjutnya, solusi untuk mengatasi kelaparan adalah penuaan. Teknik ini secara bertahap meningkatkan prioritas proses yang menunggu dalam sistem untuk waktu yang lama. Ketika prioritas meningkat, proses dapat memperoleh sumber daya yang dibutuhkan.

Perbedaan Antara Kebuntuan dan Kelaparan

Definisi

Deadlock adalah suatu keadaan yang terjadi dengan sekumpulan proses dimana setiap proses menunggu suatu kejadian yang hanya dapat disebabkan oleh proses lain dalam himpunan tersebut. Kelaparan, di sisi lain, adalah situasi di mana suatu proses terus-menerus ditolak sumber daya yang diperlukan untuk memproses pekerjaannya. Jadi, inilah Perbedaan yang menonjol antara Deadlock dan Starvation.

Terjadi

Deadlock terjadi ketika setiap proses menahan sumber daya dan menunggu sumber daya yang dipegang oleh proses lain sementara kelaparan terjadi ketika suatu proses menunggu sumber daya untuk jangka waktu yang lama.

melanjutkan

Dalam situasi kebuntuan, semua proses terkait tidak dapat dilanjutkan. Namun, dalam kelaparan, hanya beberapa proses yang menunggu sumber daya, tetapi yang lain dapat melanjutkan. Maka dari itu, ini juga merupakan perbedaan antara Deadlock dan Starvation.

Kata terakhir

Ada beberapa proses yang berjalan dalam sistem operasi. Deadlock dan starvation adalah dua situasi yang bisa terjadi ketika ada proses. Perbedaan yang menonjol antara kebuntuan dan kelaparan adalah kebuntuan terjadi ketika setiap proses memegang sumber daya dan menunggu untuk mendapatkan sumber daya yang dipegang oleh proses lain sementara kelaparan terjadi ketika suatu proses menunggu untuk jangka waktu yang tidak terbatas untuk mendapatkan sumber daya yang diperlukan.

Sumber bacaan:
  1. “Apa Itu Kebuntuan?” Belajar malam ini, Tersedia di sini . 2. “Sistem Operasi | Kelaparan dan Penuaan dalam Sistem Operasi.” GeeksforGeeks, 9 Februari 2018, Tersedia di sini . 3. “Kelaparan (Ilmu Komputer).” Wikipedia, Wikimedia Foundation, 15 Des 2018, Tersedia di sini .
Sumber gambar:
  1. “Deadlock” Oleh Niqueco – Karya sendiri (CC0) melalui Commons Wikimedia

Related Posts