Metode & Algoritma | List Tutorials | Source Code | About | Sitemap
Konsultan Tesis
Bimbingan dan Konsultasi Tesis Informatika bersama team Project Graduate Indonesia. Konsultasi hanya untuk yang sudah me-Like FB kami (Silahkan LIKE tombol ini jika belum).
. Scroll kebawah untuk memasukan kode AntiSpam Protection. Hasil konsultasi akan kami kirimkan ke email Anda.

Pengertian Deadlock




.


Metode dan Algoritma | Pengertian Deadlock . Anda bisa melakukan konsultasi tentang Pengertian Deadlock melalui form di samping kanan !!!



Deadlock secara harfiah adalah kebuntuan. Di dalam sistem operasi berarti suatu kondisi di mana sekumpulan proses tidak dapat berjalan kembali atau tidak adanya komunikasi antar proses. Definisi lainnya yaitu sekumpulan proses yang terblok yang tiap proses tersebut memegang sumber daya dan menunggu
untuk mendapatkan sumber daya yang dipegang oleh proses di dalam kumpulan tersebut.
IlustrasiDeadlock
Penyebab utama terjadinya deadlock adalah terbatasnya sumber daya yang akan digunakan oleh proses-proses. Tiap proses berkompetisi untuk memperebutkan sumber daya yang ada. Jadi deadlock berhubungan erat dengan tersedianya sumber daya dari komputer.
Penyebab utama terjadinya deadlock adalah terbatasnya sumber daya yang akan digunakan oleh proses-proses. Tiap proses berkompetisi untuk memperebutkan sumber daya yang ada. Jadideadlock berhubungan erat dengan tersedianya sumber daya dari
komputer.
Karakteristik Deadlock
Menurut Coffman(1971) ada empat kondisi yang dapat menyebabkan terjadinya deadloock. Keempat kondisi tersebut tidak dapat berdiri sendiri, saling mendukung.
1. Mutual Eksklusif: hanya ada satu proses yang bisa menggunakan sumber daya tersebut. Jika ada proses lain yang meminta sumber daya tersebut, maka proses itu harus menunggu sampai sumber daya dilepaskan.
2. Memegang dan Menunggu: proses yang meminta sumber daya sudah memegang sumber daya lainnya(meminta sumber daya tambahan).
3. Tidak ada Preemption: sumber daya yang sudah dialokasikan untuk sebuah proses tidak bisa diminta oleh proses lain. Sumber daya hanya bisa dilepaskan secara sukarela atau setelah proses tersebut selesai menggunakannya.
4. Circular Wait(menunggu berputar): kondisi seperti rantai yaitu saling menunggu smber daya yang dipakai oleh proses yang menunggu sumber daya tersebut.
Method untuk Menangani Deadlock
Pada prinsipnya kita dapat menangani deadlock dengan beberapa cara:
1. Menggunakan protokol untuk pencegahan atau penghindaran deadlock, memastikan bahwa sistem tidak akan memasuki kondisi deadlock.
2. Kita bisa mendeteksi terjadinya deadlock lalu memperbaiki.
3. Kita juga bisa mengabaikan deadlock, hal ini dilakukan pada sistem operasi berbasis UNIX.

Untuk memastikan sistem tidak memasuki deadlock, sistem dapat menggunakan pencegahan deadlock atau penghindaran deadlock. Penghindaran deadlock membutuhkan informasi tentang sumber daya yang mana yang akan suatu proses meminta dan berapa lama akan digunakan. Dengan informasi tersebut dapat diputuskan apakah suatu proses harus menunggu atau tidak. Hal ini disebabkan oleh keberadaan sumber daya, apakah ia sedang digunakan oleh proses lain atau tidak. Jika sebuah sistem tidak memastikan deadlock akan terjadi, dan juga tidak didukung dengan pendeteksian deadlock serta pencegahannya, maka kita akan sampai pada kondisi deadlock yang dapat berpengaruh terhadap performance system karena sumber daya
tidak dapat digunakan oleh proses sehingga proses-proses yang lain juga terganggu. Akhirnya sistem akan berhenti dan harus direstart.

Pencegahan Deadlock
Pencegahannya sebagai berikut:
1. Masalah Mutual Eksklusif
Kondisi ini tidak dapat dilarang, jika aksesnya perlu bersifat spesial untuk satu proses,maka hal ini harus didukung oleh kemampuan sistem operasi. Jadi diusahakan agar tidak menggunakan kondisi spesial tersebut sehingga sedapat mungkin deadlock dapat dihindari.
2. Masalah Kondisi Menunggu dan Memegang Penanggulangan deadlock dari kondisi ini lebih baik dan
menjanjikan, asalkan kita dapat memegang sumber daya untuk menunggu sumber daya lain, kita dapat mencegah deadlock. Caranya ialah dengan meminta semua sumber daya yang ia butuhkan sebelum
proses berjalan. Tetapi masalahnya sebagian proses tidak mengetahui keperluannya sebelum ia berjalan. Jadi untuk mengatasi hal ini, kita dapat menggunakan algoritma bankir. Sistem operasi atau sebuah protokol mengatur hal ini. Hasil yang dapat terjadi adalah sumber daya lebih harus dispesifikasikan dan kelaparan sumber daya, atau proses yang membutuhkan sumber daya yang banyak harus menunggu sekian lama untuk mendapatkan sumber daya yang ia butuhkan.
3. Masalah tidak preemption
Hal ketiga ialah jangan sampai ada preemption pada sumberv daya yang telah dialokasikan. Untuk memastikan hal ini, kita dapat menggunakan protocol. Jadi jika sebuah proses meminta sumber daya yang tidak dapat ia penuhi saat itu juga, maka proses mengalami preempted. Dengan kata lain ada sumber daya
dilepaskan dan diberikan ke proses yang menunggu, dan proses itu akan menunggu sampai kebutuhan sumber dayanya dipenuhi. Cara lain yaitu dengan mengecek apakah sumber daya yang dicari proses tersedia atau tidak. Jika ada maka langsung dialokasikan tetapi jika tidak maka kita cek apakah ada proses lain yang sedang menunggu sumber daya juga. Jika ya maka kita ambil sumber daya dari proses yang sedang menunggu tersebut dan memberikan kepada proses yang meminta sumber daya tersebut. Jika tidak tersedia juga maka proses tersebut harus menunggu. Dalam menunggu beberapa dari sumber dayanya dapat saja dipreempted jika ada proses yang memintanya. Cara ini efektif untuk proses yang menyimpan dalam memory atau register.
4. Masalah lingkaran tunggu
Masalah ini dapat ditangani oleh sebuah protocol yang menjaga agar sebuah proses tidak membuat lingkaran sikus yang dapat mengakibatkan deadlock dengan cara memberikan penomoran kepada sumber daya, dan bila suatu proses meminta sumber daya lagi maka ia hanya dapat meminta sumber daya yang nomornya lebih tinggi dari yang ia minta sebelumnya.

Penghindaran Deadlock
Algoritma Bankir
Menurut Djikstra(1965) algoritma penjadwalan dapat menghindari deadlock dan algoritma penjadwalan tersebut dikenal dengan algoritma bankir. Algoritma ini dapat digambarkan, ada seorang bankir yang akan meminjamkan kepada peminjam-peminjamnya. Setiap peminjam memberikan batas pinjaman maksimum. Tentu saja bankir tahu bahwa peminjam tidak akan meminjam dana maksimum secara langsung melainkan bertahap. Bankir memprioritaskan kepada peminjam yang meminjam dana lebih banyak, sedangkan yang lain disuruh menunggu hingga peminjam yang lebih besar mengembalikan dananya, baru setelah itu ia
meminjamkan kepada peminjam yang lain. Jadi algoritma bankir disini mempertimbangkan apakah
permintaan proses sesuai dengan jumlah sumber daya yang ada dan sekaligus memperkirakan jumlah sumber daya yang mungkin diminta lagi. Jangan sampai ketika ada proses yang meminta sumber daya tetapi sumber dayanya habis atau tidak ada lagi jika tidak maka akan terjadi deadlock.
Secara umum algoritma bankir dibagi menjadi 4 struktur data:
1. Tersedia: jumlah sumber daya yang tersedia
2. Alokasi: jumlah sumber daya yang dialokasikan untuk setiap proses
3. Maksimum: jumlah permintaan sumber daya oleh proses
4. Kebutuhan: maksimum-alokasi(sisa sumber daya yang dibutuhkan oleh proses setelah dikurangi dengan yang dialokasikan)

Pemulihan Deadlock
1. Terminasi Proses
Abort semua proses yang deadlock
Metode ini akan mematahkan deadlock cycle, tetapi bisa saja proses-proses yang deadlock telah dikomputasi dalam waktu yang lama dan hasil-hasil komputasi parsial harus dibuang, sehingga ada kemungkinan harus dikomputasi ulang. Abort satu proses pada satu waktu sampai deadlock tereliminir.
Metode ini sangat mungkin mendatangkan overhead, setelah setiap proses di-abort, algoritma pendeteksian deadlock harus diminta kembali untuk menentukan apakah masih ada proses-proses yang deadlock. Jika terminasi parsial digunakan, kita harus menentukan proses-proses deadlock yang mana yang harus diterminasi. Penentuan ini pada dasarnya berkaitan dengan ekonomi. Kita harus abort proses-proses yang terminasinya minimum cost. Sayangnya, minimum cost tidak ditentukan satu hal. Banyak faktor yang
mempengaruhi pemilihan proses, mencakup:
- Apa prioritas dari proses
- Berapa lama proses telah mengkomputasi dan berapa lama lagi proses akan mengkomputasi sebelum menyelesaikan tugasnya
- Berapa banyak dan apa tipe dari sumber daya yang digunakan oleh proses
- Berapa sumber daya lagi yang dibutuhkan proses supaya selesai
- Berapa banyak proses yang perlu diterminasi
- Apakah proses interactive atau batch
2. Preempt Sumber Daya
Mengeliminasi deadlock menggunakan preempt sumber daya berarti kita berturut-turut preempt beberapa sumber daya dari suatu proses dan memberikan sumber daya ini ke proses lain sampai deadlock cycle patah.
Pada preempt sumber daya, tiga isu perlu dibicarakan:
- Memilih korban
Seperti pada terminasi proses, kita harus menentukan sumber daya dan proses mana yang akan dipreempt dengan minimum cost. Faktor cost mencakup parameter-parameter seperti jumlah dari sumber daya yang ditahan proses-proses yang deadlock dan jumlah waktu dari proses yang telah digunakan selama eksekusinya.
- Rollback
Jika kita preempt sebuah sumber daya dari sebuah proses, proses tidak dapat berlanjut dengan eksekusi normal karena proses kehilangan beberapa sumber daya yang diperlukan. Kita harus rollback proses ke beberapa safe state dan restart dari state tersebut. Secara umum, sulit untuk menentukan safe state.
Solusi termudah adalah dengan total rollback, abort proses, dan restart.
- Starvation
Dalam sebuah sistem di mana pemilihan korban berdasar primer pada faktor cost, dapat terjadi suatu proses tidak pernah menyelesaikan tugasnya karena suatu sumber daya selalu di-preempt pada proses yang sama. Kita harus memastikan bahwa sebuah proses dapat dipilih sebagai korban hanya dengan batasan waktu tertentu. Solusi pada umumnya adalah dengan menambahkan jumlah rollback ke dalam faktor cost.




Source Code ActionScript AS3 ASP.NET AJAX C / C++ C# Clipper COBOL ColdFusion DataFlex Delphi Emacs Lisp Fortran FoxPro Java J2ME JavaScript JScript Lingo MATLAB Perl PHP PostScript Python SQL VBScript Visual Basic 6.0 Visual Basic .NET Flash MySQL Oracle Android
Related Post :


Project-G
Judul: Pengertian Deadlock
Rating: 100% based on 99998 ratings. 5 user reviews.
Ditulis Oleh hank2

Anda sedang membaca artikel tentang Pengertian Deadlock, Semoga artikel tentang Pengertian Deadlock ini sangat bermanfaat bagi teman-teman semua, jangan lupa untuk mengunjungi lagi melalui link Pengertian Deadlock.


Posted by: Metode Algoritma Updated at: 05.25

Label

Pengetahuan skripsi Belajar Panduan Film Operasi Sistem Tutorial tesis Biologi Pendidikan Software Buku Psikologi Hukum Hardware Troubleshooting kesehatan Film Horor Perbankan RPP dan Silabus SMA judul Pengembangan Kepribadian Pertemanan Administrasi Keluarga manajemen Hadits Kebidanan RPP dan Silabus SD Metode Pembelajaran tugas akhir Film Drama Virus Linux PTK SD RPP dan Silabus SMP Komputer dan IT Private SEO Tasawuf islam Ekonomi PTK SMP Pengertian Produk contoh program c++ listing c++ Kecerdasan Komputer Tidak Dapat Start Makalah Olahraga Pembelajaran Printer Akuntansi Bahasa Indonesia Cara cari uang dari Internet Judul Skripsi Online Penawaran buah pemrograman c++ Biografi Kemukjizatan Alquran Kurikulum Manajemen Pemasaran Matematika PTK SMA Sejarah Peradaban Islam Teknologi ta tes Administrasi Negara Anak Cara Pakai Jilbab Film Religion Flashdisk Ilmu Komunikasi Internet News Pemrograman Ulumul Quran Unik contoh kkp bsi ebook java programming lingkungan profesi keguruan program cpp Blog CPP Contoh-Tugas-Akhir Film Komedi Hardware-Komputer Manajemen Sumber Daya Manusia Organisasi Pemrograman-Komputer Ramadhan Tugas Akhir BSI Tugas Kuliah blogspot editor vi review sistem informasi Alexa Aliran Khawarij Aneh BlackBerry DBMS Database-Management-System Filsafat Fisika Gmail JQuery Jaringan Kaligrafi Kewarganegaraan Linux System Administrator Modul Praktikum PTK PAUD Saham Shell UNIX Winrar bio contoh tugas akhir fungsi cpu fungsi monitor java materi cpp bsi tips menjadi programer tugas akhir d3 Adsense for domain Archive Auto Blog joomla1.5 Backlink Gratis Bagian Komputer Bimbingan Konseling Budaya CEPAT KAYA Cara pengambilan data yang akurat Contoh-KKP Corel Draw Distro Linux Easy Gif Animator Free Backlink Hjsplit Keperawatan Kriptografi Kumpulan Jurnal Linux CentOS Meningkatkan Page Rank Modul Ms Excel PMB BSI 2012 PMB Nusa Mandiri PTC Berkualitas PTK SMK Pajak Perhotelan Pertanian RPP dan Silabus SMK Sejarah Linux Sejarah UNIX TA BSI Tafsir Teknik Informatika UANG ONLINE Umum alertpay cara parkir domain di google adsense ebook gratis fungsi mouse fungsi printer fungsi ram di android fungsi ram pada android fungsi speaker jasa tugas akhir judul tugas akhir login bsi metode penelitian pengenalan editor vi pengertian dan fungsi keyboard programer ta informatika tipe file database yii framework .data Alexa.com memang misterius Android BOM Bina Sarana Informatika Blog Gratisan Kualitas Mahal CARA GANTI FAVICON BLOGSPOT CARA KILAT SUBMIT DIREKTORY CARA MERUBAH TITLE BLOGSPOT CARI UANG DIINTERNET CPU Cara Instal file .deb di Linux Ubuntu Cara Instal file .sh di Linux Ubuntu Cara Klik iklan ptcclick.com Cara Melakukan Payout di kumpulblogger Cara Memasang Keyword di blogspot Cara Memperbaiki Broken Link Cara Nyepetin Internet Three (3) Cara Upload file 4shared Cara melihat Postingan Terpopuler di Blogspot Chatting dibayar dolar Contoh Soal BSI Contoh soal linux centos Contoh-Skripsi Daftar Isi Blog Database Delphi Dennis Ritchie Desain Web Download E-book Filesystem Linux Flexi unlimited Free Ebook GA Gambar Bangunan Gayus HYIP How to Streamline Body Iklan yang dibayar per Tampil Industri Info CPNS Info Merapi Terkini Info Pendidikan Internet Flexi murah Internet Three (3) Internetan Murah JASA TUGAS AKHIR INFORMATIKA Jaringan Komputer Jurnal Ilmiah Jurnal-Ilmiah Kampus Kartu Nama Ken Thompson Kimia Koruptor Indonesia Kursor Lius Torvalds Logika Algoritma MENGETAHUI HALAMAN YANG TERINDEX MENGETAHUI TEMPAT DOMAIN DIBELI Manajemen Personalia Materi Linux BSI Mematiakan Pop Up Telkomsel Membuat Flowchart Dengan Visio Mengganti Templete bogspot Modul Audio Video Modul Otomotif Mudahnya Mencari Uang di usia Muda Negara Bohongan Office PHP PLN PPC PTC PTC 1 kali klik langsung dibayar PTC AVG 3 PTC LEGIT Pemerintahan Pendaftaran CPNS Pendaftaran PNS (Pegawai Negeri Sipil) Photoshop Populer Programmer RDBMS Remaja yang Sukses Rumus Luas Bangun RUang STMIK Nusa Mandiri Sejarah Semua Tentang Life Style Server Smart Soft Business Card Smartphone Soal Syntaxhighlighter Tahun Baru Tangan kanan bos berasal dari remaja sekitar kantor Target Awal Sebuah Blog Telkomsel Tips Memilih Templete Blog/Web Tips-Blogspot Trik Bermain PPC Trik Mendatangkan Traffic Trik Menstabilkan Koneksi Internet Tutorial Pribadi SEO UNIX Video Website Windows XP2 Windows XP2 bermasalah array artikel tugas akhir baju bsi baju ormik bsi balance alertpay bash Linux beli alertpay biography Linus Torvalds bisnis online cara buat blog cara memilih nama domain yang keren cara mempercepat opera 10 cara mengetahui dimana asal domain di registrasi cara merawat printer canon cara merawat printer infus chronoforms client server contoh contoh baju bsi contoh proposal contoh proposal penelitian copy paste editor vi densus 88 dikit-dikit facebook domain domain adalah domain keren domain murah easyshare printer dock ebook facebook fungsi keyboard pada komputer fungsi papan kekunci fungsi printer dot matrix fungsi printer inkjet fungsi printer komputer fungsi printer laserjet fungsi processor fungsi ram pada hp fungsi ram pada komputer fungsi ram pada laptop fungsi scanner fungsi vga fungsi-teks google adsense kampang google adsense menipu hak akses file linux hak akses pada linux harga printer dot matrix hlookup hosting adalah hosting dan domain murah iframe informasi domain informatika jasa jasa bimbingan tugas akhir jasa pembuatan tugas akhir jasa programmer ta jasa ta informatika jasa tugas akhir sistem informasi jenis file jihad jual alertpay jual beli balance alertpay jual printer dot matrix judul ta informatika judul ta teknik informatika judul tugas akhir informatika jurnal informatika kajian pustaka kaos bsi kaos ormik bsi kecewa dengan google adsense kelebihan open source kernel linux kkp bsi kkp ka kkp manajemen informatika kodak easyshare printer dock 6000 kodak easyshare printer dock series 3 kodak easyshare printer dock series 3 cartridge kodak easyshare printer dock series 3 compatible cameras kode sms di php komponen CPU konsultan konsultan tugas akhir laser printer dot matrix printer logika dan algoritma lower macam-macam distro linux makalah ta informatika makalah tugas akhir informatika masterweb testimoni matriks cpp mematikan pop up telkomsel mencari uang di internet mengedit editor vi menghapus editor vi multi user paket internet 35000 per bulan pdf Free pembuatan ta informatika pengertian alertpay pengertian torrent perbedaan inkjet dan deskjet perbedaan printer inkjet dan printer laser perintah dasar Linux pop up populasi printer dot matrix epson price printer dot matrix murah program proposal tugas akhir sampel shell linux sistem skala suhu skripsi sistem informasi skripsi. ta sms gratis di blog sms gratis online sms kalo pulsa lagi habis software open source statement If statistika struktur direktori linux switch di java switch_expression teror tipe file tips tips komputer traffic trik tugas akhir informatika tugas akhir sistem informasi tugasakhir tvs printer dot matrix price list upper vlookup website bsi xbosyuda