TUGAS (KONGKURENSI)
11. Pada proses-proses kongkuren yang berinteraksi, yang mempunyai beberapa masalah yang harus diselesaikan, yaitu:
· Mutual exclusion
· Deadlock
· Starvation
· Sinkronisasi
Jelaskan masing-masing masalah tersebut diatas.
Jawab:
· Multual exclusion
Mutual Exclusion adalah jaminan hanya satu proses yang mengakses sumber daya pada satu interval tertentu.
Terdapat sumber daya yang tak dapat dipakai bersama pada saat bersamaan (mis. printer). Sumber daya ini disebut dengan sumber daya kritis. Bagian program yang menggunakan sumber daya kritis disebut memasuki critical region/station. Hanya satu program pada satu saat yang diijinkan masuk critical region. Programmer tidak dapat bergantung pada system operasi untuk memehami dan memaksa batasan ini karena maksud program tidak dapat diketahui.
Sistem hanya menyediakan layanan (system call) untuk mencegah proses masuk critical regionyang sedang dimasuki proses lain. Programmer harus menspesifikasi bagianbagian critical region sehingga system operasi akan menjaganya dengan suatu mekanisme untuk mencegah proses lain masuk critical region yang sedang dipakai proses lain. Pemaksaaan adanya mutual exclusion menimbulkan deadlock dan startvation
· Deadlock
Proses disebut deadlock jika proses menunggu suatu kejadian yang tak pernah terjadi. Sekumpulan proses berkondisi deadlock bila setiap proses yang ada menunggu suatu kejadian yang hanya dapat dilakukan proses lain yang juga berada di kumpulan tersebut.
Syarat terjadinya deadlock:
- Mutual exclusion
Tiap sumber daya saat diberikan pada satu proses.
- Hold and wait Condition
Prosesproses yang sedang menggenggam sumber daya, menunggu sumberdaya sumberdaya baru
- Non Preemption Condition
Sumber–daya sumberdaya yang sebelumnya duberikan tidak dapat diambil paksa dari proses itu. Sumber–daya sumberdaya harus secara eksplisit dilepaskan dari proses yang menggenggamnya.
- Circulair Wait Condition
Harus terdapat rantai sirkuler dari dua proses atau lebih, masing masing menunggu sumber daya yang digenggam oleh berikutnya pada rantai itu.
Metode Mengatasi deadlock :
* Pencegahan terjadinya deadlock
*Pengindaran terjadinya deadlock
* Deteksi dan pemulihan deadlock
· Starvation
Proses dikatakan mengalami starvation jika prosesproses itu menunggu alokasi sumber daya sampai tak berhingga, sementara prosesproses lain dapat memperoleh alokasi sumber daya.
· Sinkronisasi
Pada system dengan banyak proses (konkuren), terdapat 3 kategori interaksi, yaitu:
1. Prosesproses tidak saling peduli (independent)
Prosesproses tidak dimaksudkan untuk bekerja bersama untuk mencapai tujuan tertentu.
2. Prosesproses saling mempedulikan secara tidak langsung
Prosesproses tidak perlu saling mempedulikan identitas prosesproses lain tapi samasama mengakses objek tertentu (seperti buffer Input/Output). Prosesproses itu perlu bekerja sama dalam memakai bersama objek tertentu.
3. Prosesproses saling mempedulikan secara langsung
Prosesproses dapat saling bekomunikasi dan dirancang bekerja sama untuk suatu aktivitas.
Interaksi antara prosesproses dan masalahmasalah yang harus diatasi
Derajat
Kepedulian
|
Hubungan
|
Akibat satu proses
terhadap lainya
|
Masalah pengendalian
yang perlu dilakukan
|
Proses tak perduli
|
Persaingan
|
· Hasil satu proses independent terhadap aksi proses lain.
· Pewaktuan proses
dapat berdampak
|
· Mutual exclusion
· Deadlock
· Starvasion
|
Proses secara tak langsungpedul i terhadap proses lain
|
Kerja sama dengan pemakaian bersama
|
· Hasil hasil satu proses dapatbergantung informasi yang diperoleh dari proses lain
· Pewaktuan proses
dapat berdampak
|
· Mutual exclusion
· Deadlock
· Starvasion
· Koherensi data
|
Proses secara langsungpedul i terhadap proses lain
|
Kerja sama dengan komunikasi
|
· Hasilhasil suatu proses dapat bergantung pada informasi yang diperoleh dari proses lain
· Pewaktuan proses
dapat berdampak
|
· Deadlock
· Starvasion
|
2. Kongkurensi merupakan landasan umum perancangan sistem operasi. Apa yang anda ketahui tentang proses yang kongkuren. Jelaskan!
Jawaban:
Konkurensi merupakan landasan umum perancangan system operasi. Prosesproses disebut konkuren jia prosesproses itu berada pada saat yang sama. Prosesproses konkuren dapat sepenuhnya tak bergantung dengan yang lain tapi dapat juga saling berinteraksi. Prosesproses yang berinteraksi memerlukan sinkronisasi agar terkendali dengan baik.
Prosesproses yang berinteraksi mempunyai beberapa masalah yang harus diselesaikan, yaitu:
· Mutual Exclusion
· Deadlock
· StarVation
· Sinkronisasi
Prinsipprinsip konkurensi meliputi :
· Alokasi waktu processor untuk prosesproses
· Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
· Komunikasi antar proses
· Sinkronisasi aktivitas banyak proses.
33. Terdapat dua proses yaitu, proses 1 dan proses 2 (P1 dan P2), dan dua sumber daya yaitu, sumber daya 1 dan sumber daya 2 (R1 dan R2). Proses 1 (P1) dan proses 2 (P2) harus mengakses ke sumber daya. Kondisi tersebut dapat terjadi Deadlock, jelaskan!
Jawaban:
▪ R1 diberikan kepada P 1
▪ R2 diberikan kepada P2
P1 dapat melanjutkan eksekusi jika diberikan kedua sumber daya sekaligus, demikian juga P2 dapat melanjutkan eksekusi jika diberikan kedua sumber daya tersebut, maka kedua proses saling menunggu sumber daya lain selamanya, hal ini disebabkan tidak ada proses yang melepaskan sumber daya yang telah dipegangnya.
34. Terdapat tiga buah proses P1, P2 dan P3. P1, P2 dan P3 memerlukan pengaksesan sumber daya R secara periodik, kondisi demikian dapat terjadi starvision jika hak akses terhadap sumber daya tidak merata. Jelaskan bagaimana starvision itu terjadi.
Jawaban:
Kondisinya adalah sebagai berikut:
– P1 sedang diberi sumber daya R, maka P2 dan P3 menunggu sumber daya (blocked).
– Ketika P1 keluar dar Critical Section, maka P2 dan P3 diijinkan mengakses sumber daya R.
– Diasumsikan bahwa P3 diberi hak akses, apabila setelah selesai hak akses diberikan kepada P1 yang saat itu P1 memerlukan sumber daya R.
Apabila pembelian hak akses terus menerus secara bergantian antara P1 dan P3, maka P2 tidak pernah memperoleh hak pengaksesan sumber daya R. Walaupun Deadlock tidak terjadi, namun P2 mengalami Starvation