1 / 24

PENGURUSAN PROSES

PENGURUSAN PROSES. BAB 5. Pengurusan Proses. Setiap proses memerlukan sumber-sumber untuk dilaksanakan. Sumber-sumber dikongsi oleh beberapa proses dalam persekitaran pengaturcaraan berbilang.

shika
Download Presentation

PENGURUSAN PROSES

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PENGURUSAN PROSES BAB 5

  2. Pengurusan Proses • Setiap proses memerlukan sumber-sumber untuk dilaksanakan. • Sumber-sumber dikongsi oleh beberapa proses dalam persekitaran pengaturcaraan berbilang. • Proses-proses perlu diurus dan diselaraskan bila terdapat banyak proses merebut sumber yang terhad untuk mengelakkan masalah kebuntuan dan kebuluran.

  3. Kebuntuan berlaku bila satu set proses yang setiap satunya memegang sumber dan menunggu untuk mendapatkan sumber yang sedang dipegang oleh proses lain di dalam set tersebut. • Ini menyebabkan proses-proses tergendala dan kadang-kala seluruh sistem turut tergendala. • Campur-tangan pihak luar diperlukan untuk menyelesaikan kebuntuan.

  4. Contoh kebuntuan: • Suatu sistem dengan dua pemacu pita T1 dan T2. • Proses P1 dan proses P2 memegang T1 dan T2 masing-masing. • Setiap proses menunggu untuk mendapatkan satu lagi pemacu pita (yang sedang dipegang oleh proses lain).

  5. Kebuluran adalah situasi dimana terdapat proses-proses yang terpaksa menunggu selama-lamanya untuk mendapatkan sumber. • Ia terhasil dari “Penangguhan Tidak Terhingga” • Kebuntuan lebih serius dari kebuluran sebab ia melibatkan lebih daripada satu proses/kerja.

  6. 5.2 Konsep Kebuntuan • Masalah kebuntuan tidak wujud dalam sistem kelompok dimana proses diperuntukkan sumber yang diperlukan sebelum ia dilaksanakan. • Masalah kebuntuan dihadapi dalam sistem interaktif dimana perkongsian sumber dibenarkan.

  7. 5.3 Kes-kes kebuntuan • Kebuntuan biasanya berlaku dalam peruntukan sumber-sumber yang tidak boleh dikongsi dan tidak boleh ditarik-balik seperti fail, pencetak dan pemacu pita. • Kes 1: permintaan fail • Kebuntuan boleh berlaku bila kerja/proses dibenarkan memohon dan memegang fail semasa tempoh perlaksanaannya

  8. Kes 2: pangkalan data • Pangkalan data mempunyai operasi-operasi pertanyaan (query), pencarian/ transaksi, dan kemaskini. • Kebuntuan berlaku bila dua proses ingin mencapai dan mengunci (lock) rekod dalam pangkalan data. • Penguncian (locking) ialah teknik untuk memelihara integriti data.

  9. Peringkat penguncian berlaku pada seluruh pangkalan data, sebahagian pangkalan data, dan rekod. • Kebuntuan boleh dielakkan jika penguncian tidak digunakan. • Tetapi ini akan menyebabkan masalah perlumabaan. • Perlumbaan menimbulkan ketakkonsistenan data sewaktu pengemaskinian data.

  10. Kes 3: peruntukan peranti berdedikasi • Penggunaan peranti berdedikasi seperti pemacu pita (tidak boleh dikongsi) boleh menyebabkan kebuntuan.

  11. Kes 4: peruntukan pelbagai peranti • Kebuntuan berlaku bila beberapa proses memohon capaian peranti (seperti pemacu pita, pencetak, pemplot) dan memegangnya manakala terdapat proses lain yang juga melakukan perkara yang sama

  12. Kes 5: penggelendongan • Penggelendongan (spooling) melibatkan penggunaan cakera sebagai penimbal untuk menyimpan secara sementara bahan pencetakan yang dihantar oleh beberapa pengguna sehingga pencetak bersedia menerima bahan pencetakan itu.

  13. Kebuntuan berlaku jika pencetak memerlukan keseluruhan output dari pengguna sebelum ia memulakan pencetakan manakala ruang penyimpanan dalam cakera telah penuh diisi dengan bahagian-bahagian output (yang tidak lengkap).

  14. Kes 6: perkongsian cakera • Rekabentuk cakera membolehkannya dikongsi oleh proses-proses. • Proses yang berbeza boleh mencapai kawasan cakera yang berlainan. • Kebuntuan berlaku jika tiada kawalan yang baik.

  15. Kes 7: rangkaian • Rangkaian yang sesak (atau sebahagian besar kawasan penimbal I/O digunakan) akan mengalami kebuntuan jika tiada kawalan yang baik. • Peningkatan trafik akan menambah saiz giliran output dan menyebabkan ruang penimbal (buffer) dipenuhi. • Maka kebuntuan berlaku.

  16. 5.4 Syarat-syarat untuk kebuntuan • Empat syarat yang diperlukan bagi penghasilan kebuntuan: 1.Saling eksklusif (mutual exclusion): tindakan yang membenarkan hanya satu proses sahaja mencapai suatu sumber. 2.      Pegangan sumber (resource holding): setiap proses memegang sumber dan memohon sumber yang dipegang oleh proses lain untuk menyelesaikan pemprosesan.

  17. 3.      Tiada primptif (no preemption): sumber diperuntukkan kepada suatu proses sepanjang tempoh ia diperlukan 4.      Penantian membulat (circular wait): setiap proses dalam suatu set menanti antara satu sama lain untuk proses lain dalam set itu melepaskan sumber yang diperlukan • Kebuntuan boleh diselesaikan (ditamatkan) jika salah satu syarat dihalang dari berlaku.

  18. 5.5 Pemodelan kebuntuan • Menurut Holt (1972), syarat-syarat penghasilan kebuntuan boleh dimodelkan dengan graf berarah. • Kebuntuan berlaku kerana wujud penantian membulat. • Setiap proses menunggu sumber dilepaskan oleh proses lain tetapi tidak tercapai.

  19. 5.6 Strategi pengelolaan kebuntuan • Tiga strategi yang digunakan oleh sistem pengendalian untuk mengendalikan kebuntuan : • Halang (prevent) mana-mana satu daripada 4 syarat yang menyebabkan kebuntuan. Penyelesaian (Havender) dengan menggunakan sistem penomboran sumber.

  20. Elak (avoid) kebuntuan jika ia boleh berlaku. Idea asas Algoritma Banker: Proses yang memasuki sistem mesti isytiharkan jumlah sumber yang diperlukannya; jumlah ini tidak boleh melebihi jumlah sumber dalam sistem itu.

  21. Bila proses memohon suatu set sumber, sistem mesti memastikan peruntukan itu memelihara keadaan selamat (safe state) sebelum sumber diperuntukkan. Kekangan Algoritma Banker menyebabkannya kurang praktikal.

  22. Kesan (detect) kebuntuan bila ia berlaku dan pulihkan (recover) sebaik mungkin. Kebuntuan dapat dikesan dengan membina graf berarah dan menentukan samada penantian membulat wujud. Pengesanan dilakukan menurut kala yang sesuai. Kaedah (algoritma) pemulihan biasanya memerlukan sekurang-kurangnya satu proses/kerja (sistem) dikeluarkan dari sistem.

  23. Faktor pemilihan proses/kerja mangsa termasuklah keutamaan proses, masa pemprosesan dan jumlah proses yang akan terjejas.

  24. 5.7 Konsep Kebuluran • Kebuluran ialah hasil dari peruntukan sumber secara konservatif (abadi) dimana perlaksanaan suatu kerja terhalang disebabkan ia terpaksa menunggu sumber yang sentiasa digunakan. • Contoh: “The dinning philosophers” oleh Dijkstra. • Algoritma “aging” boleh digunakan dalam penyelesaian kebuluran dimana sistem akan menyekat proses baru masuk sehingga proses yang kebuluran itu diselesaikan.

More Related