Minggu, 03 Desember 2017

Pengertian dan Kondisi Deadlock

Deadlock terjadi jika proses menunggu suatu kejadian tertentu yang tidak pernah terjadi. Sekumpulan proses berkondisi deadlock bila setiap proses yang ada di kumpulan menunggu suatu kejadian yang hanya dapat dilakukan proses lain yang juga berada di kumpulan itu.

Prinsip Deadlock:Deadlock dapat didefinisikan sebagai blocking permanen pada beberapa proses yang saling berkompetisi maupun berkomunikasi untuk memperoleh suatu sumber daya

Sumber daya dapat dikatagorikan secara umum menjadi:
1. Reusable resource
Didefinisikan sebagai :Sumber daya yang dapat digunakan dengan aman oleh satu proses pada suatu saat. Terdapat tiga kondisi perlakukan sumber daya oleh proses yaitu : request – hold – release.
Contoh reusable resource :
  • Processor
  • I/O channel
  • Main memory dan secondary memory
  • Device
  • File
  • Database
  • Semaphore
    Contoh deadlock yang melibatkan reusable resource
    Misal terdapat dua proses yang berkompetisi untuk mengakses disk file (D) dan tape drive (T)
    Deadlock terjadi jika masing-masing proses memegang (hold) sumber daya dan meminta (request) sumber daya yang lain yang dipegang oleh proses yang lain. Cara mengatasinya dengan memberi batasan pada disain sistem untuk perintah request (Constraint on design system).


    2. Consumable resource
    Merupakan sumber daya yang dapat dibuat atau dilenyapkan. Kondisi tidak terblock menghasilkan proses-proses yang siap melepaskan sumber daya saat suatu sumber daya diperlukan oleh sebuah proses sumber daya tersebut akan muncul.
    Contoh consumable resource :
    • interrupt
    • sinyal
    • message
    • informasi dalam I/O buffer
    Contoh Deadlock yang melibatkan consumable resource :

    Deadlock terjadi jika pesan Recive terblock di salah satu proses.

    Beberapa kondisi yang memungkinkan terjadinya deadlock:
    • Mutual exclusion :hanya satu proses yang boleh menggunakan sebuah sumber daya pada suatu saat
    • Hold and wait :suatu proses dapat mememegang (hold) sumber daya yang sebenarnya ditunggu-tunggu oleh proses lain
    • No preemption :Tidak ada sumber daya yang dapat dipaksa lepas dari suatu proses yang memegangnya
    • Circular wait :Rantai tertutup yang menyatakan suatu proses memegang sumber daya yang diperlukan oleh proses lain sehingga terjadi saling menunggu
    Circular Wait


    Tidak ada komentar:

    Posting Komentar

    Lihat Juga

    Mengenal Keempat Tipe Kecerdasan Buatan (AI)

    Kecerdasan Buatan (AI) telah menjadi topik utama dalam banyak diskusi teknologi dan inovasi saat ini. Namun, bagaimana kita mendefinisikan d...

    Halaman