BAB VIII DEADLOCK ...

dokumen-dokumen yang mirip
MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM VIII Deadlock

DEADLOCK. Haryono Setiadi, ST, M.Eng

Bab 6. Deadlock POKOK BAHASAN: TUJUAN BELAJAR:

SISTEM OPERASI. Deadlock.

Sinkronisasi dan Deadlock Sistem Operasi

Konsep Deadlock. Kelompok 54.7 Ferry Sulistiyanto ( ) Ibnu Mubarok ( )

Sistem Operasi. Kongkurensi

Sistem Operasi. Deadlock

Komunikasi & Sinkronisasi Proses

Fairuz El Said Sekedar Berbagi Sistem Operasi (SO) Konkurensi KONGKURENSI

DEADLOCK PADA WINDOWS DAN LINUX

Sistem Operasi Komputer. Pembahasan Deadlock

Sinkronisasi & Deadlock AGUS PAMUJI. SISTEM OPERASI - Sinkronisasi & Deadlock

Sistem Operasi Pertemuan 6 Concurrency: Deadlock & Starvation. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

Bab 7: Deadlock. Permasalahan Deadlock

SISTEM OPERASI DEADLOCK

Operating System. Synchronization & Deadlock. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

MAKALAH DEADLOCK. DIAJUKAN UNTUK MEMENUHI TUGAS MATA KULIAH Sistem Operasi Dosen Penampu Bapak Adi Sucipto, Ir., M.Kom. oleh :

BAB 2 LANDASAN TEORI

Deadlock. Pada kasus ini juga bisa terjadi kelaparan, yaitu ada proses yang tidak terlayani

Masalah Deadlock. Contoh Persimpangan Jalan. Resource-Allocation Graph. Deadlock

Deadlock. Gambaran Umum Deadlock

Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.

Concurrency C oncurrency 2 : Deadlock dan Starvation (P ( ertemuan ke ert -15) November 2014

Pencegahan Deadlock pada Alokasi Resource dalam Sistem Operasi Menggunakan Algoritma Greedy

Bab 23. Deadlocks Pendahuluan. Gambar Contoh kasus deadlock pada lalu lintas di jembatan

Penggunaan Brute Force untuk Mendeteksi Potensi Terjadinya Deadlock

Pertemuan 4 KONKURENSI

BAB II TINJAUAN PUSTAKA

DEADLOCK. KELOMPOK : Aurora Marsye Mellawaty Vidyanita Kumalasari Y

Pertemuan #3: Sinkronisasi dan Deadlock

Operating System: An O verview. Ch. 5: Deadlock

Q U I Z 3A - SOLUSI Mngt Memory + Konkurensi 2. By: Endro Ariyanto (END)

KONGKURENSI (KEBERSAMAAN) Haryono Setiadi, ST, M.Eng

1. DEADLOCK. Diagram Graf

7. Pengaturan Proses

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

Sistem Operasi. Deadlock & Penanganannya. Aditya Wikan Mahastama

KONGRUENSI. Pengertian. Mutual Exclusion. Masalah yang harus diselesaikan dalam kongruensi. (lebih. dapat saling berinteraksi.

Q U I Z 3B - SOLUSI Mngt Memory + Konkurensi 2. By: Endro Ariyanto (END)

Deadlock Kasus Pada Sistem Operasi

DEADLOCK PADA DISTRIBUSI DATA DAN PEMECAHANNYA

PEDOMAN WAWANCARA UNTUK PENGAJAR

Koordinasi Antar Proses

PEMAKAIAN GRAF UNTUK PENDETEKSIAN DAN PENCEGAHAN DEADLOCK PADA SISTEM OPERASI

Sistem Operasi. Konkurensi

November Sistem operasi #0

BAB 2 LANDASAN TEORI. Secara umum, sebuah sistem komputer terbagi atas hardware, sistem operasi, program

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4

Interaksi Antar Proses

DEADLOCK & ALGORITMA OSTRICH

DEADLOCK = kompi loe nge-hang tuh..

BAB II TINJAUAN PUSTAKA

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB),

Sistem Operasi. Critical section, konkurensi, mutasi exclusion, starvation dan deadlock. Juliansyahwiran, S. Kom, MTI. Modul ke: Fakultas FASILKOM

Deadlock Ch. 7. Deadlock. SISTIM OPERASI (Operating System) IKI Johny Moningka

KOMPONEN DASAR SISTEM OPERASI, DEADLOCK, DAN IMPLEMENTASI GRAF UNTUK MENDETEKSI DEADLOCK PADA SISTEM OPERASI

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

Oleh : Arief Ristanto ( ) Edwin Kurniawan ( )

Pendeteksian Deadlock dengan Algoritma Runut-balik

Aplikasi Graf dalam Pendeteksian Deadlock

Bab 24. Diagram Graf Pendahuluan

Optimasi Algoritma Banker dengan Algoritma Greedy

PERANGKAT LUNAK SIMULASI ALGORITMA BANKER TUGAS AKHIR JEANY CYNTHYA

Monitor. Makalah Sistem Operasi. Disusun oleh :

Penguncian pada Concurrency Control

Konkurensi. Faikul Umam

PRAKTIKUM SISTEM OPERASI LAPORAN RESMI MODUL 2 KONSEP DASAR SISTEM OPERASI (2)

IMPLEMENTASI PENANGANAN DEADLOCK MENGGUNAKAN METODE TASKKILL

Praktikum 10. Penjadwalan CPU 2 POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI: 1 Penjadwalan CPU Premptive. ü Membuat program simuliasi Pendawalan CPU

Pengantar Teknologi Sistem Informasi 1b. Concurency

Kongkurensi LPOHLVSFOTJ!

Konsed Dasar Penjadualan Proses

PENERAPAN KRIPTOGRAFI DAN GRAF DALAM APLIKASI KONFIRMASI JARKOM

DESKRIPSI PENJADWALAN PROSES

DEADLOCK & RECOVERY SYSTEM

Dosen pengampu : Mohamad Dani Sifat : Tutup buku dan peralatan elektronik

BAB 1 PENDAHULUAN. Algoritma Banker dikemukakan oleh Edsger W.Djikstra dan merupakan salah satu

Deskripsi Penjadwalan Proses

IF3191- Penjadwalan Proses. Henny Y. Zubir. Departemen Teknik Informatika Institut Teknologi Bandung. IF-ITB/HY/24-Aug-03 IF3191 Penjadwalan Proses

SISTEM OPERASI PENJADWALAN PROSES

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

Process Synchronization

T UGAS STUDI KASUS SISTEM OPERASI. Mutual Exclusion. Mata Kuliah : Sistem Operasi [ CF 1322] Disusun Oleh :

Model Proses : 1. Sequential Process / bergantian 2. Multiprogramming 3. CPU Switching peralihan prosedur dalam mengolah 1 proses ke proses lainnya.

Rencana Perkuliahan Sistem Operasi CSG3E3 2015/2016

Penjadwalan Proses. Penjadwalan: pemilihan proses selanjutnya yg akan dieksekusi Melakukan multiplexing CPU Kapan dilakukan penjadwalan?

PENJADWALAN PROSES. Pendahuluan

B. Jawablah dengan ringkas dan lengkap. (Jawaban tidak lebih dari 10 kalimat) (Nilai 40) Solusi: kata kunci dalam huruf miring.

Bab 6: Sinkronisasi Proses. Latar Belakang

SISTEM OPERASI. Sri Kusumadewi

3. Sebutkan perbedaan program dan proses berdasarkan keberadaan,sifat dan unsur pembentukan Jawab : Timeout. Dispatch.

Bab 5. Sinkronisasi Proses POKOK BAHASAN: TUJUAN BELAJAR: 5.1 LATAR BELAKANG

DISTRIBUTED TRANSACTIONS

PRINSIP-PRONSIP KONGKURENSI meliputi halhal berikut : 1. alokasi waktu pemrosesan untuk prosesproses

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

Distributed System. 9 Concurrency Control. Genap 2011/2012. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

Penjadwalan CPU. Badrus Zaman

GARIS GARIS BESAR PROGRAM PENGAJARAN/GBPP (Rencana Kegiatan Belajar Mengajar)

GEJALA MELEMAHNYA BUDAYA KESELAMATAN

Transkripsi:

BAB VIII DEADLOCK 8.1 Resource (Sumber Daya) Ada 2 tipe resource, yaitu : 1. Preemptable resource Resoource yang dapat dibersihkan dari proses yang menggunakannya tanpa efek yang buruk. Mudah diatasi dengan cara realokasi resource dari satu proses ke yang lainnya. 2. Nonpreemptable resource Resoource yang tidak dapat dibersihkan dari proses yang menggunakannya tanpa menyebabkan komputer fail. Proses disebut deadlock, jika proses menunggu suatu kejadian tertentu yang tak akan pernah terjadi atau kondisi dimana 2 proses atau lebih tidak dapat meneruskan eksekusinya. Sekumpulan proses berkondisi deadlock, jika setiap proses yang ada dikumpulan itu menunggu sesuatu kejadian yang hanya dapat dilakukan proses lain yang juga berada di kumpulan itu. Proses menunggu kejadian yang tak akan pernah terjadi. Contoh : P 1 Wait(S) Wait(Q) Wait(Q) Wait(S) Signal(S) Signal(Q) Signal(Q) Signal(S) Pada langkah pertama, kedua proses masih berjalan dengan baik. Pada langkah kedua, proses meminta Q yang ternyata masih dibawa oleh P 1 dan baru akan dilepas setelah signal(q), demikian pula P 1 meminta S yang masih dibawa oleh dan baru akan dilepas setelah signal(s). Sehingga kondisi ini akan menimbulkan deadlock. Deadlock terjadi ketika proses-proses mengakses secara ekslusif sumber daya. Semua deadlock yang terjadi melibatkan persaingan memperoleh sumber daya ekslusif oleh dua proses atau lebih. Adanya deadlock akan mengakibatkan sistem menjadi kacau. 126

Startvation terjadi ketika proses-proses menunggu alokasi sumberdaya sampai tak terhingga, karena bisa pada kebijaksanaan / strategi alokasi sumberdaya, sementara proses-proses lain dapat memperoleh alokasi sumberdaya. 8.2 Indefinite postponement / indefinite blocking / starvation Penundaan penjadwalan sebuah proses selama tak terhingga sementara sistem mengadakan alokasi sumber daya untuk proses yang lain. Penyebabnya adalah prioritas. Cara mengatasinya dengan aging yaitu prioritaas naik dengan bertambahnya waktu. 8.3 Model Deadlock Urutan kejadian pengoperasian perangkat I/O adalah : - meminta / request : meminta palayanan I/O - memakai / use : memakai perangkat I/O - melepaskan / release : melepaskan pamakaian perangkat I/O 8.4 Model deadlock dua proses dan dua sumber daya Deadlock dapat digambarkan sebagai graph. Misalnya : - dua proses, dan P 1 - dua sumber daya kritis, R 0 dan - proses dan P 1 harus mengakses kedua sumber daya tersebut R 0 P 1 kondisi berikut dapat terjadi : - R 0 diberikan ke ( meminta sumber daya R 0 ), ditandai busur (edge) berarah dari proses ke sumber daya R 0 - sedangkan sumber daya dialokasikan ke P 1, ditandai dengan busur (edge) berarah dari sumber daya ke proses P 1. 127

8.5 Skenario yang menimbulkan deadlock Dapat terjadi skenario sebagai berikut : - dialokasikan R 0 - P 1 dialokasikan R 0 P 1 Kemudian, - sambil masih menggenggam R 0, meminta - P 1 sambil masih menggenggam, meminta R 0 Kejadian ini mengakibatkan deadlock karena sama-sama akan saling menunggu. Graph deadlock ini akan digambarkan sebagai graph melingkar. Terjadinya deadlock ditandai munculnya / terjadinya graph melingkar. R 0 P 1 Karena untuk melanjutkan eksekusi memerlukan kedua sumber daya sekaligus, maka kedua proses akan saling menunggu sumber daya lain selamanya. Tak ada proses yang dapat melepaskan sumber daya yang telah dipegangnya karena menunggu sumber daya lain yang tak pernah diperolehnya. Kedua proses dalam kondisi deadlock, tidak dapat membuat kemajuan apapun. Deadlock tidak hanya terjadi pada dua proses dan dua sumber daya, deadlock dapat terjadi dengan melibatkan lebih dari dua proses dan dua sumber daya. Syarat-syarat terjadinya deadlock : 1. Mutual exclution condition Tiap sumber daya saat itu diberikan pada tepat satu proses / proses meng-klaim kontrol eksklusif terhadap sumber daya yang dibutuhkannya. 128

2. Hold and wait condition / kondisi genggam dan tunggu Proses-proses yang sedang menggenggam sumber daya yang telah dialokasikan untuknya sementara menunggu sumber daya sumber daya tambahan yang baru. 3. Non-preemption condition / kondisi non-preemption Sumber daya sumber daya yang sebelumnya diberikan tidak dapat diambil paksa dari proses sampai sumber daya tersebut digunakan sampai selesai. Sumber daya sumber daya harus secara eksplisit dilepaskan dari proses yang menggenggamnya. 4. Circular wait condition / kondisi menunggu secara sirkular Harus terdapat rantai sirkuler / satu lingkaran proses dari dua proses atau lebih dimana setiap proses memegang satu atau lebih sumber daya yang diminta oleh proses berikutnya pada lingkaran tersebut, masing-masing menunggu sumber daya yang digenggam oleh anggota berikutnya pada rantai itu. Ketiga syarat pertama merupakan syarat perlu bagi terjadinya deadlock. Keberadaan deadlock selalu berarti terpenuhi kondisi-kondisi diatas, tidak mungkin terjadi deadlock bila tidak ada ketiga kondisi itu. Deadlock terjadi berarti terdapat ketiga kondisi itu, tetapi adanya ketiga kondisi itu belum berarti terjadi deadlock. Deadlock baru benar-benar terjadi bila syarat keempat terpenuhi. Kondisi keempat merupakan keharusan bagi terjadinya peristiwa deadlock. Bila salah satu dari kondisi tidak terpenuhi maka deadlock tidak terjadi. 8.6 Metode-metode mengatasi deadlock 1. deadlock prevention / metode pencegahan terjadinya deadlock pengkondisian sistem agar menghilangkan kemungkinan terjadinya deadlock. Pencegahan merupakan solusi yang bersih dipandang dari sudut tercegahnya deadlock. Jika mulainya satu atau lebih proses akan menyebabkan terjadinya deadlock, proses tersebut tidak akan dimulai sama sekali. - tiap proses harus meminta resource yang dibutuhkan sekaligus dan tidak bisa berjalan sampai semua di dapat (untuk wait for ) - jika ada resourcce yang tidak terpenuhi, yang lainnya harus dilepas (untuk no preemption ) - urutkan tipe-tipe resource secara linier / linier ordering (untuk circular wait ) 2. deadlock avoidance / metode penghindaran terjadinya deadlock 129

menghindarkan kondisi yang paling mungkin menimbulkan deadlock agar memperoleh sumber daya lebih baik. Penghindaran bukan berarti menghilangkan semua kemungkinan terjadinya deadlock. Jika sistem operasi mengetahui bahwa alokasi sumber daya menimbulkan resiko deadlock, sistem menolak / menghindari pengaksesan itu. Dengan demikian menghindari terjadinya deadlock. Contohnya dengan menggunakan algoritma Banker yang diciptakan oleh Dijkstra. 3. deadlock detection and recovery / metode deteksi dan pemulihan dari deadlock deteksi digunakan pada sistem yang mengijinkan terjadinya deadlock, dengan memeriksa apakah terjadi deadlock dan menentukan proses dan sumber daya yang terlibat deadlock secara presisi. Begitu telah dapat ditentukan, sistem dipulihkan dari deadlock dengan metode pemulihan. Metode pemulihan dari deadlock sistem sehingga beroperasi kembali, bebas dari deadlock. Proses yang terlibat deadlock mungkin dapat menyelesaikan eksekusi dan membebaskan sumber dayanya. 8.7 Pencegahan deadlock 1. tiap proses harus meminta semua sumber daya yang diperlukan sekaligus dan tidak berlanjut sampai semuanya diberikan. 2. Jika proses telah sedang memegang sumber daya tertentu, untuk permintaan berikutnya proses harus melepas dulu sumber daya yang dipegangnya. Jika diperlukan, proses meminta kembali sekaligus dengan sumber daya yang baru. 3. Beri pengurutan linier terhadap tipe-tipe sumber daya pada semua proses, yaitu jika proses telah dialokasikan suatu tipe sumber daya, proses hanya boleh berikutnya meminta sumber daya tipe pada urutan yang berikutnya. Saran pencegahan deadlock diatas merupakan cara meniadakan salah satu dari syarat perlu. Syarat perlu pertama jelas tidak bisa ditiadakan, kalau tidak menghendaki kekacauan hasil. Strategi Burung Onta Strategi ini mengasumsikan kejadian deadlock jarang terjadi jika dibandingkan dengan kejadian komputer crash. Strategi ini disebut strategi burung onta karena kabar yang telah tersebar (yang sebenarnya tidak benar) bahwa burung onta akan menyembunyikan kepalanya ke tanah bila mengetahui adanya bahaya yang mengancamnya. Sehingga solusi yang dilakukan justru sebenarnya tak memperdulikan adanya masalah. Stategi ini sebenarnya berarta adalah sama sekali tidak berusaha mengatasideadlock / tak ada metoda sama sekali untuk mengatasi masalah deadlock. 130