Page 110 - C:\Users\RENO\Documents\MK Sistem Operasi\Folder Baru\
P. 110

tiket.  Dengan  demikian,  tiket  yang  seharusnya  menjadi  miliknya  tanpa  perlu

                          usaha  berlebih,  sekarang  harus  dia  perebutkan  dengan  orang  lain  yang
                          kebetulan mendaftar pada saat yang bersamaan.

                                Kembali kepada  masalah Readers/Writers, seperti  yang telah dikatakan
                          di atas bahwa inti dari permasalahan ini adalah adanya beberapa pembaca dan

                          penulis  yang  ingin  mengakses  suatu  berkas  secara  simultan.  Sebagai  syarat
                          bahwa  data  yang  terkandung  dalam  berkas  tersebut  tetap  konsisten,  maka

                          setiap kali berkas tersebut ditulis, maka hanya ada boleh maksimal satu penulis

                          yang  menulisnya.  Untuk  pembaca,  hal  ini  tidak  perlu  dikhawatirkan  sebab
                          membaca  suatu  berkas  tidak  mengubah  isinya.  Dengan  kata  lain,  pada  suatu

                          saat diperbolehkan untuk beberapa pembaca untuk membaca berkas tersebut.
                          Akan  tetapi,  ketika  ada  yang  sedang  menulis,  tidak  boleh  ada  satupun  yang

                          membaca.  Ini  berarti  bahwa  thread  penulis  menjalankan  tugasnya  secara

                          eksklusif.
                     d.  Dining Philosopher

                          Masalah  Dining  Philosophers,  diketahui  sejumlah  (N)  filusuf  yang  hanya
                          memiliki  tiga  status,  berpikir,  lapar,  dan  makan.  Semua  filusuf  berada  di

                          sebuah  meja  makan  bundar  yang  ditata  sehingga  di  depan  setiap  filusuf  ada

                          sebuah piring  berisi  mie dan di antara dua piring  yang  bersebelahan terdapat
                          sebuah sumpit.


                   2.  Deadlock  terjadi  karena  adanya  sekumpulan  proses  yang  di  blok  dimana  setiap

                      proses membawa sumber daya yang dibawa oleh proses yang lain.
                   3.  Cara mengatasi agar tidak terjadi deadlock pada sebuah proses adalah tiap proses

                      harus meminta semua sumber daya yang diperlukan sekaligus dan tidak berlanjut

                      sampai  semuanya  diberikan.  Jika  proses  telah  sedang  memegang  sumber  daya
                      tertentu, untuk permintaan berikutnya proses harus melepas dulu sumber daya yang

                      dipegangnya. Pada sistem kebanyakan permintaan terhadap sumber daya dilakukan
                      sebanyak sekali saja. Sistem sudah harus dapat mengenali bahwa sumber daya itu

                      aman atau tidak (tidak terkena deadlock), setelah  itu baru dialokasikan.  Ada dua

                      cara yaitu:





                                                                                                   96
   105   106   107   108   109   110   111   112   113   114   115