Apa itu Konkurensi ?
Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren, jika proses-proses berada pada saat yang sama.
Metode Multitasking
Multitasking adalah sebuah metode dimana banyak pekerjaan (proses) diolah dengan menggunakan sumber daya CPU yang sama dalam waktu yang hampir bersamaan.
Metode Multiprosessing
Multiprosessing adalah kemampuan pemprosesan komputer yang dilakukan secara serentak. Hail ini dimungkinkan dengan menggunakan dua CPU atau lebih dalam sebuah sistem komputer.
Metode Multiprogramming
Multiprogramming kegiatan menjalankan beberapa program pada memori pada satu waktu dan CPU digunakan secara bergantian.
Masalah yang harus diselesaikan konkurensi
Beberapa masalah yang harus diselesaikan:
- Mutual Exclusion
- Sinkronisasi
- Deadlock
- Startvation
Prinsip - prinsip konkurensi
Konkurensi meliputi hal-hal sebagai berikut :
- Alokasi waktu pemroses untuk proses-proses
- Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
- Komunikasi antarproses
- Sinkronisasi aktivitas banyak proses.
Konkurensi dapat muncul pada konteks berbeda, antara lain:
- Banyak aplikasi (multiple application).
- Aplikasi terstruktur.
- Struktur sistem operasi.
- Untuk Strukturisasi Satu Proses.
Interaksi antar proses
Pada sistem dengan banyak proses (konkuren),terdapat 2 katagori interaksi, yaitu:
Proses-proses Saling Tidak Peduli (Independen).
Proses-proses ini tidak dimaksudkan untuk bekerja untuk mencapai tujuan tertentu. Pada multiprogramming dengan proses-proses independen, dapat berupa batch atau sesi interaktif, atau campuran keduanya.
Proses-proses Saling Mempedulikan Secara Tidak Langsung.
Proses-proses tidak perlu saling mempedulikan identitas proses-proses lain, tapi sama-sama mengakses objek tertentu, seperti buffer masukan atau keluaran. Proses-proses itu perlu bekerja sama (cooperation) dalam memakai bersama objek tertentu.
Kesulitan yang ditimbulkan konkurensi
Masalah yang dihadapi proses-proses kongkurensi pada multiprogramming dan multiprocessing serupa, yaitu: kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi. Beberapa kemungkinan yang terjadi tidak dapat diprediksi seperti:
Kecepatan proses pada sistem tergantung padabeberapa hal, antara lain:
- Aktivitas proses-proses lain
- Cara sistem operasi menangani interupsi
- Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi.
Beberapa kesulitan yang dapat muncul, di antaranya adalah:
- Pemakaian bersama sumber daya global.
- Pengelolaan alokasi sumber daya agar optimal.
- Pencarian kesalahan pemrograman.
Proses-proses konkuren mengharuskan beberapa hal yang harus ditangani, antara lain:
- Sistem operasi harus mengetahui proses-proses yang aktif
- Sistem operasi harus mengalokasikan dan mendealokasikan beragam sumber daya untuk tiap prosesaktif. Sumber daya yang harus dikelola, antara lain: Waktu Pemroses, Memori, Berkas Berkas, Perangkat I/O.
- Sistem operasi harus memproteksi data dan sumber daya fisik masing-masing proses dari gangguan proses-proses lain.
- Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.
Pokok penyelesaian masalah konkurensi
Pada dasarnya penyelesaian masalah kongkurensiterbagi menjadi 2, yaitu:
- Mengasumsikan adanya memori yang digunakan bersama.
- Tidak mengasumsikan adanya memori yang digunakanbersama.
Adanya memori bersama lebih memudahkan penyelesaian masalah kongkurensi. Metode memori bersama dapat dipakai untuk singleprocessor ataupun multiprocessor yang mempunyai memori bersama. Penyelesaian ini tidak dapat digunakan untuk multiprocessor tanpa memori bersama atau untuk sistem tersebar.
Penutup
Jadi itulah pembahasan mengenai konkurensi. Semoga bermanfaat, jika ada yang ditanyakan jangan sungkan bertanya dikolom komentar. Terimakaish.
No comments:
Post a Comment
Komentar yang bermutu Insyaallah akan mendapatkan berkah