Perbedaan Antara Kebuntuan dan Kelaparan dalam Sistem Operasi OS

Sistem operasi adalah perangkat lunak paling mendasar yang berjalan di komputer. Ia bertanggung jawab untuk mengelola memori dan proses komputer, serta melindungi detail perangkat keras dari program aplikasi yang menggunakannya. Sistem operasi komputer juga memastikan alokasi sumber daya yang adil untuk pengguna dan program yang bertentangan dengan pemerataan antar proses. Sistem penjadwalan yang adil memungkinkan satu proses untuk menggunakan CPU sementara yang lain menunggu dalam antrian. Akibatnya setiap utas mendapat akses yang cukup ke sumber daya terbatas mencegah dua kondisi paling umum yang akan menunda proses sebaliknya: Kebuntuan dan Kelaparan. Keduanya adalah konsep terkait di mana proses tidak memiliki akses ke sumber daya. Artikel ini menyoroti beberapa poin utama membandingkan keduanya di berbagai bidang.

Apa itu Deadlock??

Deadlock adalah suatu kondisi di mana serangkaian thread diblokir karena setiap proses memegang sumber daya mencoba mengakses beberapa sumber daya lain yang sedang ditahan oleh proses lain yang akhirnya mencegah penjadwalan sistem yang adil. Situasi jalan buntu muncul ketika empat kondisi berikut ini berlaku: Pengucilan bersama berarti hanya satu proses yang dapat mengakses sumber daya sekaligus; Tidak ada kondisi preemption berarti sumber daya hanya dapat dirilis secara sukarela dengan proses memegang sumber daya; Tahan & tunggu berarti proses memegang sumber daya dapat meminta sumber daya tambahan yang dimiliki oleh proses lain dan; Circular waiting berarti dua proses atau lebih terjebak dalam rantai melingkar menunggu setiap proses untuk melepaskan sumber daya masing-masing.

Apa itu kelaparan??

Kelaparan adalah suatu kondisi yang muncul ketika suatu proses masuk ke masa tunggu tanpa batas karena proses dengan prioritas rendah tidak pernah mendapat kesempatan untuk mengakses sumber daya karena aliran konstan dari proses prioritas tinggi mengakses sumber daya yang sama. Ini adalah masalah manajemen sumber daya karena suatu proses ditolak akses ke sumber daya yang diperlukan sehingga mendorong proses ke dalam masa tunggu yang tidak terbatas. Itu terjadi karena sumber daya yang dibutuhkan tidak pernah dialokasikan untuk proses yang menyebabkan proses kelaparan untuk sumber daya, maka nama itu. Cara terbaik untuk menghindari kelaparan adalah dengan menggunakan teknik penuaan yang secara bertahap meningkatkan prioritas proses yang berada dalam periode menunggu untuk waktu yang lama untuk memastikan sistem penjadwalan yang adil..

Perbedaan antara Deadlock dan Starvation di OS

  1. Definisi Kebuntuan dan Kelaparan

Kebuntuan dan kelaparan adalah konsep terkait yang mencegah penjadwalan sistem yang adil di mana proses diblokir dari mendapatkan akses ke sumber daya. Jalan buntu, seperti namanya, merujuk pada suatu kondisi di mana serangkaian rangkaian atau proses diblokir karena setiap proses menunggu untuk memperoleh sumber daya yang sedang ditahan oleh proses lain sehingga mengakibatkan situasi jalan buntu di mana program berhenti berfungsi. Kelaparan, di sisi lain, dipicu oleh jalan buntu yang menyebabkan proses membeku karena proses prioritas rendah ditolak akses ke sumber daya yang dialokasikan untuk proses prioritas tinggi.

  1. Kondisi

Kebuntuan mengacu pada kondisi tertentu yang terjadi ketika utas atau proses memasuki masa tunggu karena sumber daya sistem yang diminta ditahan oleh proses lain, yang pada gilirannya sedang menunggu proses lain untuk melepaskan sumber dayanya sehingga menciptakan kebuntuan. Ini disebabkan oleh pemanfaatan sumber daya yang buruk. Kelaparan adalah kondisi penundaan yang tidak terbatas di mana proses prioritas rendah ditolak akses ke sumber daya yang diperlukan karena sumber daya dialokasikan untuk proses prioritas tinggi lainnya. Ini adalah masalah manajemen sumber daya yang memaksa sistem untuk mengalokasikan sumber daya hanya untuk proses prioritas tinggi.

  1. Karakterisasi Deadlock dan Starvation

Deadlock adalah bentuk terakhir dari kelaparan yang disebabkan ketika empat kondisi berikut ini terjadi secara bersamaan: Pengecualian Saling, Tanpa Preemption, Hold & Wait, dan Circular Wait. Kondisi jalan buntu hanya terjadi dalam sistem di mana keempat kondisi tersebut berlaku. Kelaparan terjadi berdasarkan kondisi yang berbeda seperti ketika tidak ada sumber daya yang cukup untuk berkeliling dan prioritas proses mulai semakin rendah atau ketika proses mulai menyerahkan sumber daya ke proses lain tanpa kontrol. Jika proses dengan prioritas rendah meminta sumber daya yang dicadangkan untuk proses dengan prioritas tertinggi, proses tersebut akan hilang selamanya. Kelaparan juga terjadi ketika sumber daya dialokasikan secara sewenang-wenang menyebabkan proses menunggu untuk periode waktu yang lebih lama.

  1. Pencegahan

Kelaparan dapat dicegah dengan menggunakan algoritma penjadwalan yang tepat dengan antrian prioritas yang sebenarnya juga menggunakan teknik penuaan - teknik penjadwalan yang menambahkan faktor penuaan ke prioritas setiap permintaan yang berarti meningkatkan tingkat prioritas proses prioritas rendah yang telah menunggu untuk waktu yang lama. Juga menyediakan lebih banyak sumber daya untuk program harus menghindari kemacetan sumber daya yang berkelanjutan. Untuk mencegah sistem mengalami kebuntuan, proses harus ditolak akses ke satu atau lebih sumber daya sambil secara bersamaan menunggu yang lain dan hanya satu proses yang harus diizinkan untuk mengakses sumber daya sekaligus..

Deadlock vs. Starvation: Comparison Chart

Ringkasan Deadlock VS. Kelaparan

Kebuntuan dan kelaparan adalah konsep terkait dalam sistem operasi multiprosesing atau sistem terdistribusi yang menyebabkan satu atau lebih thread atau proses macet dalam menunggu sumber daya yang mereka butuhkan. Kebuntuan adalah situasi yang muncul ketika satu atau lebih proses meminta akses ke sumber daya yang sama menyebabkan proses membeku, sedangkan kelaparan disebabkan oleh kebuntuan yang mendorong proses ke keadaan penundaan yang tidak ditentukan karena proses ditolak akses ke sumber daya yang dimiliki oleh proses prioritas tinggi dan perlu menunggu selamanya.