Senin, 20 Desember 2010

Kongkurensi

PERSAINGAN DAN KERJASAMA ANTAR PROSES

• Persaingan antar proses terjadi ketika beberapa proses akan menggunakan sumber daya yang sama.
• Tidak ada pertukaran informasi diantara proses-proses yang sedang bersaing, tetapi eksekusi dari satu proses dapat menimbulkan akibat bagi proses-proses lain yang sedang bersaing.
• Jika ada 2 proses yang akan mengakses ke suatu sumber daya tunggal, kemudian satu proses dialokasikan ke sumber daya tersebut oleh sistem operasi, maka proses yang lainnya akan menunggu.
• Pada kasus yang ekstrim, proses yang menunggu tersebut ada kemungkinan tidak akan pernah mendapatkan akses ke sumber daya sehingga tidak akan pernah selesai dengan sempurna.
• Hal ini juga terjadi akibat antar proses yang saling tidak peduli.
• Persaingan antar proses terjadi ketika beberapa proses akan menggunakan sumber daya yang sama.
• Tidak ada pertukaran informasi diantara proses-proses yang sedang bersaing, tetapi eksekusi dari satu proses dapat menimbulkan akibat bagi proses-proses lain yang sedang bersaing.
• Jika ada 2 proses yang akan mengakses ke suatu sumber daya tunggal, kemudian satu proses dialokasikan ke sumber daya tersebut oleh sistem operasi, maka proses yang lainnya akan menunggu.
• Pada kasus yang ekstrim, proses yang menunggu tersebut ada kemungkinan tidak akan pernah mendapatkan akses ke sumber daya sehingga tidak akan pernah selesai dengan sempurna.
• Hal ini juga terjadi akibat antar proses yang saling tidak peduli.

PRINSIP-PRINSIP KONGKURENSI

Kongkurensi meliputi hal-hal berikut :
• alokasi waktu pemroses untuk proses-proses
• pemakaian bersama & persaingan untuk mendapatkan sumber daya
• komunikasi antar proses
• sinkronisasi aktivitas banyak proses
Kongkurensi dapat muncul pada 3 konteks yang berbeda, yaitu
• Banyak aplikasi (multiple application)
 Multiprogramming memungkinkan banyak proses sekaligus sehingga terdapat banyak aplikasi yang dijalankan pada sistem komputer. Banyak proses ini juga sangat berguna untuk sistem komputer tunggal (single user) karena sambil menunggu proses selesainya layanan (misal transfer berkas oleh modem atau pencetakan oleh printer) pemakai dapat berinteraksi dengan aplikasi lain seperti aplikasi game atau mengetik pada text editor.
• Aplikasi terstruktur
 Perluasan prinsip-prinsip perancangan modular dan pemrograman terstruktur adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai sekumpulan proses aplikasi. Dengan sekumpulan proses, maka tiap proses mempunyai satu layanan spesifik yang ditentukan.
• Strukturisasi sistem operasi
 Keunggulan-keunggulan strukturisasi dapat juga diterapkan ke pemrograman sistem. Beberapa sistem operasi aktual yang dipasarkan dan dalam riset telah diimplementasikan sebagai sekumpulan proses.
• Masalah yang dihadapi dengan proses kongkuren pada multiprogramming dan multiprocessing adalah serupa, yaitu bahwa kecepatan eksekusi proses-proses yang terdapat pada sistem tidak dapat diprediksi. Dengan demikian beragam kemungkinan yang dapat terjadi tidak dapat diprediksi.
• Beberapa kesulitan yang dapat muncul diantaranya :
 1. Pemakaian bersama sumberdaya global
 2. Pengelolaan alokasi sumberdaya agar optimal
 3. Pencarian kesalahan pemrograman

Hal-hal yang harus ditangani sistem operasi dengan adanya proses kongkuren :
• Sistem operasi harus mengetahui proses-proses yang aktif
• Sistem operasi harus alokasi dan dealokasi beragam sumberdaya untuk tiap proses aktif
• Sistem operasi harus memproteksi data dan sumberdaya fisik masing-masing proses dari gangguan proses-proses lain
• Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.

Tidak ada komentar:

Posting Komentar