Sistem Komputer - Kongkurensi


Sistem Komputer - Pengertian kongkurensi

Perkembangan sistem komputer mendatang adalah menuju ke sistem multi- processing, multiprogramming, terdistribusi dan paralel yang mengharuskan adanya proses-proses yang berjalan bersama dalam waktu yang bersamaan. Hal demikian merupakan masalah yang perlu perhatian dari perancang sistem operasi. Kondisi dimana pada saat yang bersamaan terdapat lebih dari satu proses disebut dengan kongkurensi (proses-proses yang kongkuren). 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.

Prinsip-prinsip kongkurensi Kongkurensi merupakan kegiatan yang berhubungan dengan :
a. Alokasi waktu pemroses untuk proses-proses yang aktif.

b. Pemakaian bersama dan persaingan untuk mendapatkan sumber daya.

c. Komunikasi antar proses.

d. Sinkronisasi aktivitas banyak proses

Masalah kongkurensi dapat terjadi pada :
a. Banyak aplikasi.
Multiprogramming memungkinkan banyak proses sekaligus dijalankan. Proses-proses dapat berasal dari aplikasi-aplikasi berbeda. Pada sistem sistem multiprogramming bisa terdapat banyak aplikasi sekaligus yang dijalankan di sistem komputer.

b. Strukturisasi sebuah aplikasi yang terdiri dari kumpulan proses. Perluasan prinsip perancangan modular dan pemograman terstruktur adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai kumpulan proses. Dengan sekumpulan proses, maka tiap proses menyediakan satu layanan spesifik tertentu.

c. Strukturisasi sebuah proses. Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki banyak thread yang independen. Thread-thread tersebut harus dapat bekerjasama untuk mencapai tujuan proses. Strukturisasi satu aplikasi dapat dilakukan dengan banyak proses atau banyak thread. Sistem operasi modern telah mendukung banyak thread yang berkinerja lebih bagus dibanding proses dalam kondisi/lingkungan yang lebih terkendali.
Contoh : Suatu word processor antara lain mempunyai kemampuan :
  • Menerima masukan dari keyboard
  • Menerima masukan dari mouse atau perangkat penunjuk yang lain (asinkron)
  • Pemisahan kata-kata
  • Memformat baris menjadi rata kanan, kiri atau kanan-kiri
Aplikasi ini dapat diterapkan dengan banyak proses atau thread yang masing- masing mempunyai tugas tertentu. Dengan demikian, saat dilakukan penataan tampilan di layar, aplikasi sekaligus dapat menerima masukan dari mouse yang segera akan diteruskan ke aplikasi untuk mendapat perhatian.

d. Strukturisasi sistem operasi Keunggulan strukturisasi dapat diterapkan ke pemrograman sistem. Beberapa sistem operasi aktual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai kumpulan proses. Sistem operasi bermodelkan client/server.


Kesulitan-kesulitan dalam kongkurensi, kecepatan proses pada sistem dipengaruhi oleh :

a. Aktivitas-aktivitas proses-proses lain

b. Cara sistem operasi menangani interupsi

c. Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi

Beberapa kesulitan yang muncul :
a. Pemakaian bersama sumber daya global. Apabila terdapat dua proses yang menggunakan variabel global yang sama serta keduanya membaca dan menulis ke variabel itu,maka urutan terjadinya pembacaan dan penulisan terhadap variabel itu menjadi kritis.

b. Pengelolaan alokasi sumber daya agar optimal. Apabila proses A meminta suatu kanal masukan/keluaran tertentu dan dipenuhi, kemudian terjadi proses A di suspend sebelum menggunakan kanal tersebut. Jika sistem operasi mengunci kanal (tidak memperbolehkan atau mencegah proses lain untuk menggunakannya), maka tindakan tersebut menghasilkan inefisiensi.

c. Pencarian kesalahan pemrograman. Pencarian kesalahan pada pemograman kongkuren lebih sulit dibanding pencarian kesalahan pada program-program sekuen.

Penanganan kongkurensi adalah dengan :
a. Mengetahui proses-proses yang aktif. Sistem operasi mengelola senarai proses di sistem operasi. Senarai ini berupa senarai PCB proses. Senarai berjumlah sesuai jumlah state yang diimplementasikan sistem operasi. 

b. Mengatur alokasi dan dealokasi beragam sumber daya untuk tiap proses yang aktif. Sumber daya yang harus dikelola antara lain :

  • Waktu pemroses
  • Memori Berkas-berkas (file)
  • Peralatan masukan/keluaran
  • Dan sebagainya
c. Proteksi data dan sumber daya fisik proses. Proteksi data dan sumber daya fisik masing-masing proses dari gangguan (interfensi) proses-proses lain.

d. Hasil-hasil proses harus independen. Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.

Sistem Komputer - Pengertian kongkurensi, lanjut sob langsung aja klik sistem komputer untuk melanjutkan materi kita ini.

0 comments:

Posting Komentar

Silahkan jika ada pertanyaan dan beri tanggapan anda dengan berkomentar disini ...