Pages

Selasa, 29 Oktober 2019

Tugas Sistem Operasi IV


Soal latihan :

1. Pada proses kongkuren yang berinteraksi yang mempunyai beberapa masalah yang harus diselesaikan, yaitu :
- Mutual excusion
- Deadlock
- Starvation
- Sinkronisasi

2. Kongurensi merupakan landasan umum perancangan sistem operasi. apa yang anda ketahui tentang proses yang konguren. jelaskan!

3. Terdapat dua prosees 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 kedua sumber daya. kondisi tersebut dapat terjadi deadlock, jelaskan!

4. Terdapat tiga buah proses P1,P2 dan P3. memrlukan pengaksesan sumber daya tidak merata. Jelaskan bagaimana starvision itu terjadi.

Jawab !


1. - Adalah jaminan hanya satu proses yang mengakses sumber daya pada suatu interval waktu tertentu. Proses-proses yang lain dilarang mengerjakan hal yang sama. Bagian program yang sedang mengakses memori atau sumber daya yang dipakai bersama disebut Critical Section/Region. Mutual Exclusion merupakan jaminan untuk mengatasi kondisi pacu agar tidak boleh 2 proses atau lebih memasuki Critical Section secara bersamaan.
Kesuksesan proses- proses kongkuren memerlukan pendefinisian Critical Section dan memaksakan Mutual Exclusion di antara proses-proses kongkuren yang sedang berjalan. Pemaksaan Mutual Exclusion merupakan landasan pemrosesan kongkuren.
Pemaksaan adanya mutual eclusion menimbulkan dua maslah, yaitu:
- Deadlock.
- Startvation.
Kriteria penyelesaian mutual exclusion:
1.      Mutual exclusion harus dijamin, hanya satu proses pada saat yang
diijinkan masuk ke critical section.
2.      Prosesyang berada di noncritical section,  dilarang memblocked proses lain yang ingin masuk critical section.
3.      Harus dijamin proses yang ingin masuk critical section tidak menunggu
selama waktu yang tak berhingga.
4.      Ketika tidak ada proses pada critical section maka proses yang ingin
masuk critical section harus diijinkan masuk tanpa tertunda.
5.      Tidak ada asumsi mengenai kecepatan relative proses atau jumlah
proses yang ada.

- Deadlock adalah suatu kondisi dimana dua proses atau lebih saling menunggu proses yang lain untuk melepaskan resource yang sedang dipakai. Karena beberapa proses itu saling menunggu, maka tidak terjadi kemajuan dalam kerja proses-proses tersebut. Deadlock adalah masalah yang biasa terjadi ketika banyak proses yang membagi sebuah resource yang hanya boleh dirubah oleh satu proses saja dalam satu waktu.
Di kehidupan nyata, deadlock dapat digambarkan dalam gambar berikut.Pada gambar diatas, deadlock dianalogikan sebagai dua antrian mobil yang akan menyeberangi jembatan. Dalam kasus diatas, antrian di sebelah kiri menunggu antrian kanan untuk mengosongkan jembatan (resource), begitu juga dengan antrian kanan. Akhirnya tidak terjadi kemajuan dalam kerja dua antrian tersebut.Misal ada proses A mempunyai resource X, proses B mempunyai resource Y.
Kemudian kedua proses ini dijalankan bersama, proses A memerlukan resource Y dan proses B memerlukan resource X, tetapi kedua proses tidak akan memberikan resource yang dimiliki sebelum proses dirinya sendiri selesai dilakukan. Sehingga akan terjadi tunggu-menunggu.

- Starvation adalah kondisi yang biasanya terjadi setelah deadlock. Proses yang kekurangan resource (karena terjadi deadlock) tidak akan pernah mendapat resource yang dibutuhkan sehingga mengalami starvation (kelaparan).
Namun, starvation juga bisa terjadi tanpa deadlock. Hal ini ketika terdapat kesalahan dalam sistem sehingga terjadi ketimpangan dalam pembagian resouce. Satu proses selalu mendapat resource, sedangkan proses yang lain tidak pernah mendapatkannya. Ilustrasi starvation tanpa deadlock di dunia nyata dapat dilihat di bawah ini.Pada gambar diatas, pada antrian kanan terjadi starvation karena resource (jembatan) selalu dipakai oleh antrian kiri, dan antrian kanan tidak mendapatkan giliran

- Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan. Tujuan utama sinkronisasi adalah menghindari terjadinya inkonsistensi data karena pengaksesan oleh beberapa proses yang berbeda (mutual exclusion) serta untuk mengatur urutan jalannya proses-proses sehingga dapat berjalan dengan lancar dan terhindar dari deadlock atau starvation.
2. Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama. Dikatakan sebagai landasan umum perancangan sistem operasi karena dalam menciptakan suatu sistem operasi, sistem operasi tersebut umumnya harus bisa menjalankan beberapa proses (lebih dari satu proses) pada saat yang bersamaan.
3. Terdapat dua proses P1 dan P2
-          Dua sumber kritis R1 dan R2
-          Proses P1 dan P2 harus mengakses kedua sumber daya itu (R1 dan R2).
-          R1 diberikan pada P1 sedang R2 diberikan pada P2.
-          Karena untuk melanjutkan eksekusi memerlukan dua sumber daya sekaligus maka proses akan saling menunggu sumber daya lain selamanya.
Syarat terjadinya deadlock:
-          Mutual exclusion
Tiap sumber daya saat diberikan pada satu proses.
-          Hold and wait Condition
Proses-proses yang sedang menggenggam sumber daya, menunggu
sumberdaya-sumberdaya baru
-          Non Preemption Condition
Sumberdaya - sumberdaya yang sebelumnya duberikan tidak dapat
diambil paksa dari proses itu.  Sumberdaya –  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 :
1.      Pencegahan terjadinya deadlock
2.      Pengindaran terjadinya deadlock
3.      Deteksi dan pemulihan deadlock

3. Terdapat 3 (tiga) proses P1,P2 dan P3. P1,P2 dan P3.memerlukan akses sumber daya R secaraperiodik. Selanjutnya : P1 sedang diberi sumber daya R, P2 dan P3 blocked menunggu sumber sumber daya R. Ketika P1 keluar dari critical region, P2 dan P3 diijinkan mengakses R. Asumsi P3 diberi hak akses.  Kemudian setelah selesai, hak akses kembali diberikan ke P1 yang saat itu membutuhkan sumber daya R. Jika pemberian hak akses bergantian terusmenerus antara P1 dan P3 , maka P2 tidak pernah memperoleh akses sumber daya R, meski tidak ada deadlock. Pada situasi ini P2 disebut mengalami startvation.



Tidak ada komentar:

Posting Komentar