21 Januari 2015

Kongkurensi & Mutual Exclusion

Prinsip Kongkurensi
Definisi
-Merupakan sebuah kondisi dimana terdapat lebih dari satu proses berada pada saat yang sama.
-Proses-proses yang konkuren memiliki beberapa masalah:
*Mutual Exclusion
*Starvation
*Deadlock
-Kongkurensi merupakan kegiatan yang berhubungan dengan :
*Alokasi waktu pemroses untuk proses-proses yang aktif.
*Pemakaian bersama dan persaingan untuk mendapatkan sumber daya.
*Komunikasi antar proses.
*Sinkronisasi aktivitas banyak proses

Konteks Kongkurensi
-Kongkurensi dapat muncul pada konteks yang berbeda, yaitu:
Untuk banyak aplikasi
Untuk strukturisasi dari aplikasi
Untuk strukturisasi dari satu proses
Untuk strukturisasi sistem operasi

Masalah Yang Timbul
-Kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi.
-Kecepatan proses pada sistem dipengaruhi oleh :
*Aktivitas-aktivitas proses-proses lain.
*Cara sistem operasi menangani interupsi.
*Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi.

Masalah lain Kongkurensi
-Mutual Exclusion
Sumber daya yang tidak dapat dipakai bersama pada saat bersamaan.
-Starvation
Startvation adalah keadaan dimana pemberian akses bergantian terus-menerus, dan ada suatu proses yang tidak mendapatkan gilirannya.
-Deadlock
Deadlock merupakan kondisi terparah karena banyak proses dapat terlibat dan semuanya tidak dapat mengakhiri prosesnya secara benar.

Penanganan
-Mengetahui proses-proses yang aktif.
-Alokasi dan dealokasi beragam sumber daya untuk tiap proses aktif.
-Proteksi data dan sumber daya fisik masing-masing proses dari gangguan (intervensi) proses-proses lain.
-Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.

Interaksi Antar Proses
-Proses-proses saling tidak peduli (independen)
-Proses-proses saling mempedulikan secara tidak langsung
-Proses-proses saling peduli secara langsung

Mutual Exclusion
Definisi Mutual Exclusion
-Kondisi dimana terdapat sumber daya yang tidak dapat dipakai bersama pada waktu yang bersamaan (misalnya : printer, disk drive).
-Kondisi demikian disebut sumber daya kritis, dan bagian program yang menggunakan sumber daya kritis disebut critical region / section.
-Hanya satu program pada satu saat yang diijinkan masuk ke critical region.

-Sistem operasi menyediakan layanan (system call) yang bertujuan untuk mencegah proses lain masuk ke critical section yang sedang digunakan proses tertentu.
-Pemograman harus menspesifikasikan bagian-bagian critical section, sehingga system operasi akan menjaganya.
-Pemaksaan atau pelanggaran mutual exclusion menimbulkan :
Deadlock
Starvation

Contoh Mutual Exclusion
-Mutual exclusion adalah sebuah jaminan bahwa sebuah sumber daya komputer (ex. Harddisk) hanya dipakai 1 proses pada suatu waktu.
-Misalnya ada sebuah jaringan komputer sebuah Bank, dimana server untuk penyimpanan data terpusat.
*Seorang nasabah dapat melakukan penyimpanan maupun penarikan dari cabang mana saja dan kapan saja termasuk pengambilan lewat ATM.
*Sehingga jika ingin data tepat, jika ada salah satu nasabah melakukan transaksi, record nasabah bersangkutan harus dikunci supaya record tersebut tidak dapat akses oleh orang lain.
*Setelah transaksi selesai, record tempat data nasabah disimpan, record baru dibuka kembali. Ini adalah salah satu contoh penjaminan bahwa satu sumber daya hanya bisa dipakai oleh satu proses.


Tidak ada komentar:

Posting Komentar