Vector by Harry Chandra With Adobe Illustrator. Diberdayakan oleh Blogger.

                                            
                            
                            


STIMIK
                               SINAR NUSANTARA



T U G A S  S T U D I   S I S T E M  O P E R A S I
 
Deadlock





Mata Kuliah :
Sistem Operasi

Disusn Oleh: :

Muhammad Al Farsi
12.5.00191
Muldianto
12.5.00169
Rio Adi Arnomo
12.5.00175
Rizki Nur Rohim
12.5.00176
Harry Chandra Mukti
12.5.00230








SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
STMIK SINAR NUSANTARA
 SURAKARTA

Deadlock

Proses terlibat di dalam deadlock jika proses menunggu suatu kejadian tertentu yang tidak akan pernah terjadi. Deadlock terjadi ketika proses-proses mengakses sumber daya secara eksklusif. Terjadi trade-off antara overhead mekanisme penyelesaian deadlock dan manfaat-manfaat yang diperoleh. Pada kasus-kasus tertentu seperti pada sistem pengendalian proses waktu nyata ( real-time procces control system ).

I.                   Model Deadlock
Urutan kejadian operasi perangkat masukkan/keluaran adalah
1.      Meminta ( request )     : meminta layanan perangkat masukkan/keluaran.
2.      Memakai ( use )                             : memakai perangkat masukkan/keluaran.
3.      Melepaskan ( release ) : melepaskan pemakaian perangkat masukkan/keluaran.
Model deadlock dua proses dan dua sumber daya. Deadlock dapat digambarkan sebagai graph.
Misalnya :
1.      Dua proses P0 dan P1
2.      Dua sumber daya R0 dan R1
R0
P0
P1
R1
 







(A)                                                                                                 ( B )

Gambar ( A ) menunjukkan P0 meminta daya R0, ditandai busur daerah dari proses P0 ke sumber daya R0. Gambar ( B ) sumber daya R1 dialokasikan ke P1, ditandai busur berarah dari sumber daya R1 ke proses P1.

Skenario yang  menimbulkan deadlock
Dapat terjadi scenario berikut :
1.      P0 dialokasikan R0
2.      P1 dialokasikan R1
Scenario ini digambarkan pada gambar diatas ( A ).
Kemudian
1.      P0 sambil masih menggenggam R0, meminta R1.
2.      P1 sambil masih menggenggam R1, meminta R0.










Kejadian ini mengakibatka deadlock karena sama-sama prose P0 dan P1 akan saling menunggu.

                                                     

R0
P0
P1
R1
R0
P0
P1
R1
 














Graph deadlock ini digambarkan sebagai graph melingkar. Terjadinya deadlock ditandai munculnya (terjadinya) graph melingkar. Deadlock tidak hanya terjadi pada dua proses dan dua sumber daya, deadlock dapat terjadi dengan melibatkan lebih dari dua proses dan dua sumber daya.


I.1. Syarat-syarat perlu bagi terjadinya deadlock

Coffman, et al. menyatakan empat syarat terjadinya deadlock, yaitu :
1.    Mutual exclusion (mutual exclusion condition)
2.    Kondisi genggam dan tunggu (hold and wait condition)
3.    Kondisi non-preemption (non-preemption condition)
4.    Kondisi menunggu secara sirkuler (circular wait condition)

Mutual exclusion (mutual exclusion condition)
Sumber daya saat itu diberikan pada tepat satu proses.



Kondisi genggam dan tunggu (hold and wait condition)
Proses-proses yang sedang menggenggam sumber daya, menunggu sumber daya-sumber daya baru.

Kondisi non-preemption (non-preemption condition)
Sumber daya-sumber daya yang sebelumnya diberikan tidak dapat diambil paksa dari proses yang sedang menggenggamnya. Sumber daya-sumber daya harus secara eksplisit dilepaskan dari proses yang menggenggamnya.

Kondisi menunggu secara sirkuler (circular wait condition)
Harus terdapat rantai sirkuler dari dua proses atau lebih, masing-masing menunggu sumber daya yang digenggam oleh anggota berikutnya pada rantai itu.
Ketiga syarat pertama merupakan syarat perlu (necessary condition) bagi terjadinya deadlock. Bila tidak ada ketiga kondisi itu, maka tdak mungkin terjadi deadlock. Deadlock baru benar-benar terjadi bila kondisi keempat terpenuhi. Bila salah satu dari keempat kondisi itu tidak terpenuhi maka deadlock tidak terjadi.


II.                Metode –metode mengatasi deadlock
Ragam metode untuk mengatasi deadlock dapat dikelompokkan menjadi tiga, yaitu :
1.      Metode pencegahan terjadinya deadlock (deadlock prevention)
2.      Metode penghindaran terjadinya deadlock (Deadlock avoidance)
3.      Metode deteksi dan pemulihan dari deadlock (deadlock detection and recovery)

Metode pencegahan terjadinya deadlock (deadlock prevention)
Metode ini berkaitan dengan pengkondisian sistem sehingga menghilangkan kemungkinan terjadinya deadlock. Namun metode ini sering menghasilkan penggunaan sumber daya yang buruk.

Metode penghindaran terjadinya deadlock (Deadlock avoidance)
Tujuan metode ini adalah menghindarkan kondisi-kondisi yang paling mungkin menimbulkan deadlock agar memperoleh utilasi sumber daya yang lebih baik. Penghindaran bukan berarti menghilangkan semua kemungkinan terjadinya deadlock.  Sistem operasi memeriksa semua permintaan sumber daya secara hati-hati. Jika sistem operasi mengetahui bahwa alokasi sumber daya menimbulkan resiko deadlock.

Metode deteksi dan pemulihan dari deadlock (deadlock detection and recovery)
Metode deteksi digunakan pada sistem yang menijinkan terjadinya deadlock danmenetukan proses-proses dan sumber daya-sumber daya yang terlibat deadlock secara presisi. Metode pemulihan dari deadlock berupaya untuk menghilangkan deadlock dari sistem beroperasi kembali, bebas dari deadlock.

III.             Pencegahan Deadlock
Havender (HAV-68) mengemukakan bahwa jika sembarang syarat dari keempat syarat terjadinya deadlock tidak terpenuhi maka tidak akan terjadi terpenuhi, berikut strategi-strategi dari Havender :
1.      Tiap proses harus meminta semua sumber daya yang diperlakukan 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.
3.      Memberi pengurutan linear terhadap tipe-tipe sumber daya pada sema proses, yaitu jika proses telah dialokasikan uatu tipe sumber daya, proses hanya boleh berikutnya meminta sumber daya-sumber daya tipe pada urutan yang berikutnya.

Saran yang diberikan Havender merupakan cara meniadakan salah satu dari syarat perlu. Syaat perlu pertama jelas tidak bias ditiadakan kalau tidak menghendaki kekacauan hasil.

III.1. Meniadakan Mutual Exclusion
Deadlock disebabkan terdapatnya pengaksesan eksklusif terhadap sumber daya. Jika tidak ada sumber daya eksklusif untuk satu proses tunggal maka tidak pernah akan dijumpai deadlock.pengaksesan sumber daya seolah-olah tidak eksklusif walau sebenarnya tetap eksklusif, hanya dengan spooting berarti permintaan-permintaan itu diantrikan di harddisk. Job-job di antrian spooler akan dilayani satu persatu.

Terdapat masalah terhadap teknik ini adalah
1.      Tidak setiap sumber daya eksklusif dapat di-spooling, misalnya tabel proses.
2.      Kompetisi terhadap ruang harddisk untuk spooling dapat menuntun ke deadlock.

Mutual exclution benar-benar tidak dapat dihndari, hanya mampu diperkecil granularitas/lama waktu berlangsungnya.

III.2. Meniadakan Syarat Hold and Wait
Metode untuk meniadakan syarat hold and wait dapat dilakukan dengan cara
1.      Mengalokasikan semua sumber daya atau tidak sama sekali
2.      Hold and release

Mengalokasikan semua sumber daya atau tidak sama sekali
Proses hanya dilayani permintaanya bila semua sumber daya yang diperlukan terseia. Teknik ini berbasis pada kaidah memperoleh semua atau tidak sama sekali.
1.      Jika semua sumber daya tersedia, proses dialokasikan semua sumber daya yang diperlukannhya dan berjalan sampai selesai.
2.      Jika tidak tersedia sedikitnya satu sumber daya maka proses harus menunggu sampai semua sumber daya yang diperlikannya tersedia untuk dialokasikan padanya.
Masalah
1.      Sukar mengetahui lebih dulu semua sumber daya yang diperlukan suatu proses karena di awal proses tidak diketahui berapa sumber daya yang akan diperlukan.
2.      Cara ini dapat mengakibatkan penggunaan sumber daya yang sangat tidak efisien.

Cara ini dapat menjadi sangat tidak efisien
Msalnya proses memerlukan sepuluh disk maka proses meminta sepuluh disk dan menerima disk di awal proses.
1.      Jika kesepuluh disk memang diperlukan sepanjang eksekusi proses maka tidak ada pemborosan yang serius.
2.      Jika proses meminta dan menerima seluruh disk yang diperlukan sebelum eksekusi dimulai menyebabkan sumber daya-sumber daya menganggur selama waktu yang lama, sementara proses-proses yang memerlukan harus menunggu.




Hold and release
Setiap kali terjadi permintaan suatu sumber maka proses harus melepas sumber daya lain yang telah digunakan. Pada saat itu, hanya satu sumber daya yang sialokasikan untuk proses.
Masalah
Teknik ini idak mungkin sebab terdapat proses yang mensyaratkan harus memegang beberapa sumber daya sekaligus untuk melanjutkan eksekusinya.

III.3. Meniadakan Non-preemption
Peniadaaan non-preemption mencegah proses-proses lain harus menunggu. Seluruh proses menjadi pre-emption agar tidak ada kejadian tunggu menunggu.

Masalah
Tidak mungkin meniadakan non-preemption
Misalnya :
Saat proses A menulis ke printer, tiba-tiba dihentikan oleh proses B yang juga akan menulis ke printer yang sama. Bila kondisi pre-emption ini dimungkinkan maka kedua proses akan mencetak secara tidak benar.

III.4. Meniadakan Menunggu Sirkular
Kondisi ini dapat ditiadakan dengan bermacam cara, antara lain :
1.      Proses hanya dibolehkan menggenggam satu sumber daya pada suatu saat
2.      Penomoran global semua sumber daya

Proses hanya dibolehkan menggemgam satu sumber daya pada satu saat
Jika perlu sumber daya yangke dua, proses harus melepas sumber daya yang pertama (sama dengan hold and release). Tehnik ini tidak dimungkinkan karena terdapat proses yang mengharuskan memegang lebih dari satu sumber daya pada saat yang sama saat menyelesaikan prosesnya.
Penomoran global semua sumber daya
Proses dapat meminta proses kapanpun menginginkan tapi permintaan harus dibuat terurut secara numerik. Cara ini tidak akan menimbulkan siklus.
Masalah
Tidak ada cara pengurutan nomor sumber daya yang memuaskan semua pihak.

IV.             Penghidaran Deadlock
Gagasan penghindaran deadlock adalah hanya memberi akses ke permintaan sumber daya yang tidak mungkin menimbulkan deadlock. Strategi ini biasanya diimplementasikan dengan pengalokasi sumber daya memeriksa dampak-dampak pemberian akses ke suatu permintaan.
·         Jika pemberiaan akses sumber daya tidak mungkin menuju deadlock, sumber daya diberikan ke peminta.
·         Jika tidak aman (memungkin timbulnya deadlock), proses yang meminta di suspend sampai suatu waktu permintaannya aman diberikan. kondisi ini biasanya  terjadi setelah satu sumber daya atau lebih yang semula dipegang oleh proses-proses aktif lain dilepaskan.
Agar dapat mengevaluasi safe-nya state sistem individu, penghindaran deadlock mengharuskan semua proses menyatakan jumlah kebutuhan sumber daya maksimum sebelum di eksekusi.begitu eksekusi dimulai, tiap prosesapakah pemberian dapat menuntun ke deadlock dengan memeriksa apakah proses-proses yang telah aktif dapat secara selamat selesai. Jika dapat berakhir secara selamat, state sistem setelah alokasi adalah selamat(safe) maka sumber daya dialokasikan ke proses yang meminta. Jika pemberian sumber daya mempunyai potensi menuntun ke state deadlock, maka pengalokasi sumber daya men-suspend proses yang meminta sampai sumber daya dapat diberikan dengan selamat.
Untuk penghidaran deadlock diperlikan pengertian mengenai state selamat(safe state)  dan state tak selamat(unsafe state).

IV.1. State selamat dan State tak selamat
State selemata (safe state)
Dinyatakan safe state jika tidak deadlock dan terdapat cara yang memenuhi semua permintaan yang di tunda tanpa menghasilkan deadlock dengan menjalankan proses-proses secara hati-hati menikuti suatu urutan tertentu.
Contoh :
Pada sistem dengan 10 sumber daya yang setipe, proses A memerluka sumber daya maksimum sebanyak  10, sedang saat ini menggemgam 2, proses B memerlikan sumber daya maksimum sebanyak 3, sedang saat ini menggemgam 1 sumber daya. Proses C memerlukan sumber daya sebanyak 7 sedang saat ini menggenggam sumber daya 3. Masih tersedia 4 sumber daya.
Proses
Jumlah sumber daya
Maksimum sumber daya dibtuhkan
A
2
10
B
1
3
C
3
7
Tersedia                                                                                   4
Gambar 7.3 Contoh state selamat (safe state)
State pada gambar 7-3 dinyatakan sebagai selamat (safe) karena terdapat barisan pegalokasian yang dapat memungkinkan semua proses selesai. Dengan penjadwalan secara hati-hati, system dapat terhindarkan dari deadlock. Barisan tersebut adalah:
Langkah satu : Aloasikan 4 sumber daya ke C, sehingga sumber daya tertinggal 1 dan nantikan sampai proses C berakhir.
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
2
10
B
1
3
C
7
7
Tersedia    0
Maka setelah proses C selesai menjadi
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
2
10
B
1
3
C
0
-
Tersedia    7

Langkah 2 : Alokasikan 5 sumber daya ke proses B, nantikan proses B sampai berakhir
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
2
10
B
3
3
C
0
-
Tersedia    5

Maka setelah proses B selesai menjadi
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
2
10
B
0
-
C
0
-
Tersedia    8

Langkah 3 : Alokasikan 8 sumber daya ke A, nantikan proses sampai berakhir.
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
10
10
B
0
-
C
0
-
Tersedia    0

Maka setelah proses A menjadi
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
0
-
B
0
-
C
0
-
Tersedia    0

State Tak Selamat (unsafe state)
State dinyatakan sebagai state tak selamat jika tidak ada terdapat cara untuk memenuhi semua permintaan yang saat ini ditunda dengan menjalankan proses-proses dengan suatu urutan.

Contoh :
Gambar di bawah ini seperti gambar 7-2 menunjukan state selamat. State ini dapat berubah menjadi state tak selamat bila alokasi sumber daya tak terkendali.
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
2
10
B
1
3
C
3
7
Tersedia    4

State tersebut dapat menjadi state tak selamat apabila
·         Dua permintaan sumber daya oleh proses A dilayani, kemudian
·         Permintaan satu sumber daya oleh proses B dilayani

Maka state menjadi
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
4
10
B
1
3
C
3
7
Tersedia    1
Gambar 7-4 contoh state tak selamat (unsafe state)
State ini pada gambar 7-4 adalah state tak selamat, pada state ini tidak terdapat barisan pengalokasian yang dapat membuat semua proses selesai. Misalnya barisan pengalokasian yang ditempuh adalah :
Langkah 1 : Alokasi 1 sumber daya ke proses B, sehingga sumber daya tersedia tinggal 1 dan nantikan sampai proses B berakhir.
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
4
10
B
3
3
C
3
7
Tersedia    0

Maka setelah proses B selesai menjadi
Proses
Jumlah sumber daya digemgang
Maksimum sumber daya dibutuhkan
A
4
10
B
0
-
C
3
7
Tersedia    3

Saat ini hanya tersedia tiga sumber daya sementara dua proses yang sedang aktif masing-masing memutuhkan enam dan empat sumber daya. Rangkain keterangan di atas adalah untuk alokasi sumber daya sejenis. Alokasi dan pengertian-pengertian mengenai state selamat dan state tak selamat dapat diperluas untuk sumber daya yang sejenis.
Perlu diketahui bahwa state tak selamat bukan berarti deadlock, hanya menyatakn bahwa state tersebut berkemungkinan meuju deadlock.

IV.2. Algoritma Banker oleh Dijkstra
Algoritma ini disebut algoritma banker karena memodelkan banker di kota kecil  yang berurusan dengan dengan sekumpulan nasabah yang memoho kredit. Pada algoritma banker ini, kondisi mutual exclusion, hold and wait, dan preemption diijinkan dan proses-proses melakukan klaim pengguna ekslusive sumber daya-sumber daya yang diperlukan. Proses-proses diijinkan menggenggam sumber daya sambil meminta dan menunggu sumber daya lain serta sumber daya itu tidak dijinkan di-preempt proses lain.
Proses-proses dapat meminta satu sumber daya pada suatu waktu. Sistemoperasi dapat meberikan aksessumber daya atau menolak permintaan. Jika ditolak, proses masih menggengam sumber daya yang telah dialokasikan untuknya dan menunggu selama waktu sehingga permintaanya dapat diberikan.
Sistem hanya memberikan permintaan yang menghasilhkan, state selamat. Permintaan proses yang akan menghasilkan state tak selamat secara berulang ditolak sampai permintaan dipenuhi. Tentunya karena sistem selalu memelihara agar dalm state safe, cepat atau lambat semua permintaan dapat terpenuhi dan semua proses dapat berakhir.
Implementasi algoritma ini dijelaskan secara rinci pada buku stallings [STA-95].
IV.3. Kelemahan Algoritma Banker
1.      Proses-proses jarang mengetahui di awal roses jmlah maksimum sumber daya yang akan diperlukan.
2.      Jumlah proses tidak tetap, secara dinamis beragam begitu pemakai-pemakai baru login dan logout.
3.      Sumber daya yang dihitung sebagai tersedia dapat saja tiba-tiba ditingalkan sehingga sebenarnya menjadi tidak tersedia.
V.                Deteksi dan Pemulihan Deadlock
V.1. Deteksi adanya Deadlock
Deteksi deadlock Adalah tehnik untuk menentukan apakah deadlock terjadi serta mengindentifikasi proses-proses dan sumber daya- sumber daya yang terlihat deadlock. Umumnya algoritma-algoritma deteksi yang digunakan adlah menentukan keberadaan menunggu sirkular (circular wait). Penggunaan algortma deadlock melibatkan overhead pada saat berjalan karena secara periodik dijalankan mendeteksi menunggu sirkular. Sembarang algoritma pendeteksian siklus pada graph berarah dapat digunakan.
Periodik yang biasa dilakukan adalah memonitor permintaan dan pelepasan sumber daya. Setiap terdapat permintaaan dan pelepasan maka dilakukan pembaruan graph dan deteksi adanya silklus. Bila terdapat siklus berarti terjadi kondisi menunggu sirkular deadlockterjadi.
V.2. Pemulihan dari deadlock
Begitu sistem terdapat deadlock, harus diputuskan dengan menghilangkan satu syarat perlu atau lebih. Biasanya  beberapaproses akan kehilangan sebagian atau semua kerja yang telah dilakukan. Hal ini merupakan ongkos yang harus di bayar dibanding terjadi deadlock yang berarti semua proses tidak menghasilkan apa pun. Pemulihan dari deadlock dirumitkan oleh faktor-faktor berikut :
Ø  Belum tentu dapat menentukan adanya deadlock secepatnya.
Ø  Kebanyakan system tidak memiliki fasilitas atau mempunyai fasilitas-fasilitas buruk untuk men-suspend proses, menghilangkan dari system dan me-resume proses di lain waktu. Pada system waktu nyata yang harus berfungsi terus-menerus, proses-proses tidak dapat di suspend dan di resume.
Ø  Bahkan jika terdapat kemampuan suspend dan resume yang efektif. Kemampuan ini melibatkan sejumlah overhead berarti dan memerlukan perhatian operator yang berkemampuan tinggi(operator seperti ini tidak selalu tersedia).
Ø  Pemulihan memerlukan sejumlah  kerja yang berarti.
Pada system operasi dengan hanya 3 state dasar (running, ready, blocked), maka tidak ada cara lain kecuali dilakukan penyingkiran terhadap proses itu (kill proses). Pada system operasi modern, system biasanya menerapkan state suspendedblocked dan suspendedready, dimana sumber daya dilepas tetapi proses masih di memori dan akan ditetapkan kembali sumber daya untuk proses itu begitu terjadi resume.
Teknik pemulihan yang biasa digunakan adalah menghilangkan proses-proses dari system dan pengklaiman kembali (reclaim) sumber daya-sumber daya yang dipegang proses-proses itu. Proses yang dihilangkan biasanya akan cacat, tapi proses-proses lain dapat menyelesaikan prosesnya.
Pendekatan dibawah ini dapat dilakukan untuk pemulihan deadlock :
1.      Abaikan semua proses yang terlibat deadlock. Teknik ini merupakan cara termudah dan solusi yang paling sering dipilih.
2.      Back-up semua proses yang terlibat deadlock kesuatu checkpoint yang didefinisikan sebelumnya dan dijalankan kembali semua proses itu. Teknik ini memerlukan mekanisme rollback dan restart. Resiko pendekatan ini adalah deadlock semula dapat terjadi lagi. Tetapi karena ketidaktentuan pemrosesan kongkuren, biasanya menjamin tidak akn terjadi deadlock serupa.
3.      Secara berurutan abaikan proses-proses sampai deadlock tidak ada lagi. Setelah masing-masing penyingkiran, algoritma deteksi harus dijalankan untuk melihat apakah masih terdapat deadlock.
4.      Secara berturutan preempt sumber daya-sumber daya sampai tidak deadkock lagi. Sebagaimana item 3, pemilihan berdasrkan ongkos yang digunakan dan algoritma deteksi harus dijalankan setelah tiap preempt. Proses yang kehilangan sumber daya karena preemption harus dikembalikan (roll-back) ketitik sebelum memperoleh sumber daya.
Untuk item 3 dan 4, criteria pemilihan proses yang akan disingkirkan atau disupend adalah dengan criteria-kriteria sebagai berikut:
Ø  Waktu pemrosesan yang telah dijalankan paling kecil
Ø  Jumlah baris keluaran yang diproduksi paling kecil
Ø  Mempunyai estimasi sisa waktu eksekusi terbesar.
Ø  Jumlah total sumber daya terkecil yang telah dialokasikan
Ø  Prioritas terkecil
Hal yang harus diperhatikan dalam penyingkiran proses-proses adalah  sistem harus mengembalikan berkas yang dimodifikasi ke keadaan asli karena berpengaruh terhadap konsisten data sistem itu.
VI.             Strategi penanggulangan deadlock terpadu
Teknik mempunyai keunggulan dan kelemahan, maka dalam penanggulangan deadlock lebih efisien menggunakan strategi-strategi berbeda untuk situasi yang berbeda pula. Silberchatz menyarankan satu pendekatan terpadu, yaiu :
Ø  Kelompok sumber daya menjadi sejumlah kelas sumber daya.
Ø  Gunakan strategi pengurutan linear seperti yang didefinisikan pada pencegahan menunngu sirkular. Strategi ini digunakan untuk mencegah deadlock di antara kelas sumber daya bebeda.
Ø  Dalam satu kelas daya, gunakan algoritma yang paling cocok untuk kelas sumber daya itu.

























Metode-metode penanggulangan deadlock

Prinsip
Kebijaksanaan alokasi sumber daya
Skema-skema
Keunggulan utama
Kelemahan utama
Pencegahan
Konservatif, menurunkan efisiensi sumber daya
Meminta semua sumber daya sekaligus
Bekerja bagus untuk proses-proses yang melakukan satu barisan aktifitas tunggal.
Tidak diperlukan preemption.
Tidak efisien
Memerlukan waktu tunda inisiasi proses.
Preemption
Cocok ketika diterapkan ke sumber daya yang statenya dapat disimpan dan dikembalikan dengan mudah
Preemt akan lebih sering terjadi dari yang diperlukan.
Dapat menjadi restart yang siklus.
Pengurutan sumber daya
Layak dipaksakan lewat pemeriksaan lewat komplikasi.
Tidak perlu komputasi saat berjalan karena masalah diselesaikan sewaktu perancangan sistem.
Preempt tanpa banyak penggunaan
Tak mengijinkan permintaan sumber daya yang meningkat.
Deteksi
Lebih bebas, sumber daya yang diminta diberikan bila mungkin
Dijalankan secara periodik
Tak pernah terdapat waktu tunda inisiasi proses
Memberi fasilitas penanganan on-line
Kehilangan preempt yang inheren
Penghindaran
Memilih jalan tengah antara deteksi dan pencegahan
Memanipulasi untuk menemukan pada setidaknya satu jalur selamat
Tidak diperlikan preemption
Kebutuhan-kebutuhsn sumber daya masa datang harus diketahui
Proses-proses dapat di-block untuk periode yang lama


Read more...

  © Blogger template Foam by Ourblogtemplates.com 2009

Back to TOP