“KONKURENSI”
Di Susun Kelompok 4 :
Puji syukur kepada Allah SWT atas segala limpahan rahmat-Nya yang telah
memberikan pengetahuan, kesehatan, dan kesempatan bagi kami untuk dapat
menyelesaikan makalah ini.
Hal
BAB I PENDAHULUAN
BAB II PEMBAHASAN
A. Kesimpulan.....................................................................................20
PENDAHULUAN
A. Latar Belakang
B. Rumusan Masalah
A. Pengertian Konkurensi
Konkurensi merupakan landasan unum perancangan sistem operasi.
Proses-proses disebut konkuren jika proses-proses berada pada saat yang
sama. Pada proses-proses konkuren yang berinteraksi mempunyai beberapa
masalah yang harus diselesaikan:
1. Mutual Exclusion
2. Sinkronisasi
3. Deadlock
4. Startvation
B. Prinsip-prinsip Konkurensi
Konkurensi meliputi hal-hal sbb:
Alokasi waktu pemroses untuk proses-proses
Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
Komunikasi antarproses
Sinkronisasi aktivitas banyak proses.
Aplikasi terstruktur.
Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki
banyak thread yang independen. Thread-thread tersebut harus dapat
bekerjasama untuk mencapai tujuan proses.
1. Mutual Exclusion
Mutual exclusion adalah jaminan hanya satu proses yang mengakses
sumber daya pada satu interval waktu tertentu. Sumber daya yang tidak
dapat dipakai bersama pada saat bersamaan.
Sering terjadi pada peralatan pencetakan (printer). Daemon printer
adalah proses yang melakukan penjadwalan dan pengendalian pencetakan
berkas-berkas di printer. Ruang disk ini disebut direktori spooler.
Direktori spooler membagi disk menjadi sejumlah slot. Slot-slot diisi
berkas yang akan dicetak. Terdapat variabel in yang menunjuk slot bebas
pada ruang disk yang akan dipakai untuk menyimpan berkas yang ingin
dijadwalkan untuk dicetak. Bagian program yang sedang mengakses
memory atau sumber daya yang dipakai bersama disebut critical section.
Jika proses pada critical section memblokir proses-proses lain dalam
antrian, maka akan terjadi startvation dan deadlock.
Kesuksesan proses-proses konkurensi memerlukan pendefinisian
critical section dan memaksakan mutual exclusion di antara proses-proses
konkuren yang sedang berjalan. Pemaksaan mutual exclusion merupakan
landasan pemrosesan konkuren. Fasilitas atau kemampuan menyediakan
dukungan mutual exclusion harus memenuhi kriteria sbb:
2. Sinkronisasi
Latar Belakang :
- Akses-akses yang dilakukan secara bersama-sama ke data yang sama,
dapat menyebabkan data menjadi tidak konsisten.
- Untuk menjaga agar data tetap konsisten, dibutuhkan mekanisme-
mekanisme untuk memastikan pemintaan ekseskusi dari proses yang
bekerja.
- Race Condition: Situasi dimana beberapa proses mengakses dan
memanipulasi data secara bersamaan. Nilai terakhir dari data
bergantung dari proses mana yang selesai terakhir.
- Untuk menghindari Race Condition, proses-proses secara bersamaan
harus disinkronisasikan.
Ada tiga hal yang selalu memjadi masalah pada proses sinkronisasi:
3. Deadlock
Deadlock adalah suatu kondisi dimana dua proses atau lebih tidak
dapat meneruskan eksekusinya oleh pemroses. Pada umumnya deadlock
terjadi karena proses mengalami startvation, yaitu suatu job yang sedang
dieksekusi dan eksekusi job tersebut tidak ada hentinya, tidak diketahui
kapan berhentinya proses tersebut atau bahkan job yang antri bisa
dikatakan mempunyai status mati, padahal proses-proses lain sedang
menunggu sumber daya proses.
Deadlock merupakan kondisi terparah karena banyak proses dapat
terlibat dan semuanya tidak dapat mengakhiri prosesnya secara benar.
b. Karakteristik Deadlock
Kondisi yang dapat menimbulkan terjadinya deadlock:
1. Mutual exclusion. Apabila proses telah menggunakan suatu
resource, mka tidak boleh ada proses lain yang menggunakan
resource tsb. Hanya satu proses yang dapat menggunakan sebuah
resource pada satu waktu.
2. Hold & Wait. Pada suatu proses sedang mengakses suatu
resource, proses tsb dapat meminta ijin untuk mengakses
resource lain yang dipakai oleh proses lain.
3. No Preemption. Jika suatu proses meminta ijin untuk mengakses
resource, sementara resource tersebut tidak tersedia, maka
permintaan ijin tidak dapat dibatalkan.
4. Circular Wait Condition. Jika proses P0 sedang mengakses
Resource R1 dan minta ijin untuk mengakses resource R1 dan
minta ijin untuk mengakses resource R2, dan pada saat yang
bersamaan P1 sedang mengakses resource R2 dan mint ijin untuk
mengakses R1.
e. Pencegahan Deadlock
1. Mutual exclusion.
Harus tetap menjaga resource-resource yang bersifat non-
shareable. Yaitu, proses menahan sebuah resource, proses lain
yang meminta resource tsb harus menunggu sampai proses
melepaskannya. Jika terjadi pada perangkat I/O dan berkas, maka
sulit untuk menghindari mutual exclusion pada sumber daya non
shareable.
2. Hold & Wait.
Apabila suatu proses minta ijin untuk mengakses suatu resource,
maka proses tersebut tidak boleh membawa resource yang
lainnya. Sebleum proses meminta resource, maka harus melepas
semua resource yang dibawa.
3. Non Preemption.
1. Terminasi Proses
Metode ini akan menghapus proses-proses yang terlibat pada
kondisi deadlock dengan mengacu pada beberapa syarat.
Beberapa syarat yang termasuk dalam metode ini adalah, sebagai
berikut:
- Menghapus semua proses yang terlibat dalam kondisi
deadlock (solusi ini terlalu mahal).
- Menghapus satu persatu proses yang terlibat, sampai kondisi
deadlock dapat diatasi (memakan banyak waktu).
- Menghapus proses berdasarkan prioritas, waktu eksekusi,
waktu untuk selesai, dan kedalaman dari rollback.
4. Startvation
Startvation adalah keadaan dimana pemberian akses bergantian terus
menerus, dan ada suatu proses yang tidak mendapatkan gilirannya. Juga
dapat dimaksudkan bahwa kondisi bila beberapa proses-proses menunggu
alokasi sumber daya sampai tak berhingga, sementara proses-proses lain
dapat memperoleh alokasi sumber daya.
Hal ini disebabkan bias pada kebijaksanaan atau strategi alokasi sumber
daya. Kondisi seperti ini harus dihindari pada sistem operasi karena tidak
adil, tapi dikehendaki penghindaran dilakukan seefisien mungkin.
Penanganan ini merupakan persoalan yang sulit untuk menemukan kriteria
yang benar, adil dan efesien dalam suatu strategi Sistem Operasi.
Jika pemberian hak akses bergantian terus menerus antara P1 dan P3,
maka P2 tidak pernah memperoleh pengaksesan sumber daya R, meski
tidak ada deadlock. Pada situasi ini, P2 mengalami situasi yang disebut
dengan startvation.
A. Kesimpulan
Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.
menciptakan suatu sistem operasi, sistem operasi tersebut umumnya harus bisa
menjalankan beberapa proses (lebih dari satu proses) pada saat yang bersamaan.
Pada proses-proses yang konkuren atau berada pada saat yang bersamaan,