Concurency merupakan landasan umum perancangan sistem operasi. Proses-proses disebut concurrensy jika proses-proses (lebih dari satu proses) berada pada saat yang sama. Proses-proses yang mengalami kongkuren dapat berdiri sendiri (independen) atau dapat saling berinteraksi, sehingga membutuhkan sinkronisasi atau koordinasi proses yang baik. Untuk penanganan kongkuren, bahasa pemograman saat ini telah memiliki mekanisme kongkurensi dimana dalam penerapannya perlu dukungan sistem operasi dimana bahasa berada.
Mutual Exclusion adalah Suatu kondisi dimana setiap sumber daya diberikan tepat pada satu proses pada suatu waktu (kondisi-kondisi untuk solusi). Tiga kondisi untuk menentukan mutual Exclusion diantaranya :
1. Tidak ada dua proses yang pada saat bersamaan berada di critical region.
2. Tidak ada proses yang berjalan diluar critical region yang bisa menghambat proses lain
3. Tidak ada proses yang tidak bisa masuk ke critical region
Sinkronisasi
adalah Komunikasi antara proses yang membutuhkan place by calls untuk mengirim dan menerima data primitive. Terdapat rancangan yang berbeda-beda dalam implementasi setiap primitive. Pengiriman pesan mungkin dapat diblok (blocking) atau tidak dapat dibloking (nonblocking) – juga dikenal dengan nama sinkron atau asinkron.
Deadlock
ialah suatu kondisi permanen dimana proses tidak berjalan lagi ataupun tidak ada komunikasi lagi antar proses. Deadlock disebabkan karena proses yang satu menunggu sumber daya yang sedang dipegang oleh proses lain dan demikian juga sebaliknya
Starvation
adalah keadaan dimana satu atau beberapa proses ‘kelaparan’ karena terus dan terus menunggu kebutuhan sumber dayanya dipenuhi. Namun, karena sumber daya tersebut tidak tersedia atau dialokasikan untuk proses lain, akhirnya proses yang membutuhkan tidak bisa memilikinya Kondisi seperti ini merupakan akibat dari keadaan menunggu yang berkepanjangan
Penanganan Deadlock ( Belum Terjadi )
Pencegahan
Penanganan ini dengan cara mencegah terjadinya salah satu karakteristik penyebab deadlock. Penanganan ini dilaksanakan pada saat deadlock belum terjadi pada sistem
Penghindaran
Memprediksi apakah tindakan yang diambil sistem, dalam kaitannya dengan permintaan proses akan sumber daya, dapat mengakibatkan terjadi deadlock
Penanganan Deadlock ( Sudah Terjadi )
Pengabaian (Ignore)
Sistem mengabaikan terjadinya deadlock dan pura-pura tidak tahu kalau deadlock terjadi. Biasanya userlah yg menanganinya dg menekan tombol Ctrl+Alt+Del untuk terminasi atau merestart komputernya
Pendeteksian dan Pemulihan
Proses pendeteksian akan menghasilkan informasi apakah sistem sedang deadlock atau tidak serta proses mana yang mengalami deadlock. Kemudian, proses yg mengalami deadlock tadi akan dipulihkan
0 comments:
Posting Komentar
Bebas, Sopan, No Sara. :)