konkurensi

15
Samsul Huda 2011420043-Unitomo

description

teknologi

Transcript of konkurensi

Page 1: konkurensi

Samsul Huda2011420043-Unitomo

Page 2: konkurensi

Konkurensi

Proses-Proses yang disebut kongruen apabila proses-proses (lebih dari satu proses) berada pada saat yang sama. Karena proses tersebut bisa saja tidak saling bergantung tetapi saling berinteraksi.

•Alokasi waktu pemroses untuk semua proses

•Pemakaian bersama dan persaingan untuk mendapatkan sumber daya

•Komunikasi antar proses

•Sistem berbagi memori

•Sistem berkirim pesan

Page 3: konkurensi

Konkurensi

• Komunikasi langsung.

– Sebuah link berhubungan dengan tepat satu proses komunikasi berpasangan

– Diantara pasangan itu terdapat tepat satu link

– Link tersebut biasanya merupakan link komunikasi dua arah

• Komunikasi tidak langsung– Sebuah link dapat terhubung dengan banyak

proses– Setiap pasang proses dapat membagi

beberapa link komunikasi– Link yang ada dapat merupakan link terarah

ataupun link yang tidak terarah

Page 4: konkurensi

Masalah-Masalah kongruen

Ø Mutual exclusion

Ø Deadlock

Ø Starvation

Page 5: konkurensi

Ketika suatu keadaan dimana 2 atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya.Analoginya seperti pada kondisi jalan raya dimana terjadi kemacetan parah. Deadlock adalah efek samping dari sinkronisasi, dimana satu variable digunakan oleh 2 proses.

Ø Mutual exclusion

Page 6: konkurensi

Ø Mutual exclusion

Mutual exclusion harus dijamin, hanya satu proses pada saat yang diijinkan masuk ke critical section

Proses yang berada di noncritical section,  dilarang memblocked proses lain yang ingin masuk critical section.

Harus dijamin proses yang ingin masuk critical section tidak menungguselama waktu yang tak berhingga.

Ketika tidak ada proses pada critical section maka proses yang inginmasuk critical section harus diijinkan masuk tanpa tertunda

Tidak ada asumsi mengenai kecepatan relative proses atau jumlah proses yang ada

Page 7: konkurensi

Sinkronisasi aktivitas banyak proses

• Kerjasama diantara proses dengan pemakaian bersama

Kerjasama diantara proses-proses dalam pemakaian bersama mempunyai masalah

Ø Mutual exclusion

Ø Deadlock

Ø Starvation

Sinkronisasi aktivitas banyak proses yaitu kerja sama diantara proses

Page 8: konkurensi

Proses disebut deadlock jika prose 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.

Page 9: konkurensi

Mutual exclusionTiap sumber daya saat diberikan pada satu proses.

Hold and wait ConditionProses-proses yang sedang menggenggam sumber daya, menunggusumberdaya-sumberdaya baru

Non Preemption ConditionSumberdaya- sumberdaya yang sebelumnya duberikan tidak dapat diambil paksa dari proses itu.  Sumberdaya sumberdaya harus secara eksplisit dilepaskan dari proses yang menggenggamnya

Circulair Wait ConditionHarus terdapat rantai sirkuler dari dua proses atau lebih, masing-masingmenunggu sumber daya yang digenggam oleh berikutnya pada rantai itu.

Page 10: konkurensi

Mengatasi Deadlock

· Pencegahan terjadinya deadlock

· Pengindaran terjadinya deadlock

· Deteksi dan pemulihan deadlock

Page 11: konkurensi

Menghindari Deadlock

• Metode ini memeriksa dampak pemberian akses pada suatu proses, jika pemberian akses tidak mungkin menuju kepada deadlock, maka sumber daya akan diberikan pada proses yang meminta. Jika tidak aman, proses yang meminta akan di-suspend sampai suatu waktu permintaannya aman untuk diberikan. Kondisi ini terjadi ketika setelah sumber daya yang sebelumnya dipegang oleh proses lain telah dilepaskan.

• Kondisi Aman (Safe state)

• Suatu keadaan dapat dinyatakan sebagai safe state jika tidak terjadi deadlock dan terdapat cara untuk memenuhi semua permintaan sumber daya yang ditunda tanpa menghasilkan deadlock. Dengan cara mengikuti urutan tertentu.

• Kondisi Tak Aman (Unsafe state)

• Suatu state dinyatakan sebagai state tak selamat (unsafe state) jika tidak terdapat cara untuk memenuhi semua permintaaan yang saat ini ditunda dengan menjalankan proses-proses dengan suatu urutan.

Page 12: konkurensi

STARVATION

Starvation adalah kondisi yang biasanya terjadi setelah deadlock

Page 13: konkurensi

Race Condition

Race condition adalah suatu kondisi dimana dua atau lebih proses mengakses shared memory/sumber daya pada saat yang bersamaan dan hasil akhir dari data tersebut tergantung dari proses mana yang terakhir selesai dieksekusi sehingga hasil akhirnya terkadang tidak sesuai dengan yang dikehendaki.

Page 14: konkurensi

Kesimpulan

• Suatu proses yang bekerja bersama-sama dan saling berbagi data dapat mengakibatkan race condition atau pengaksesan data secara bersama-sama. Critical section adalah suatu segmen kode dari proses-proses itu yang yang memungkinkan terjadinya race condition. Untuk mengatasi masalah critical section ini, suatu data yang sedang diproses tidak boleh diganggu proses lain.

Solusi prasyarat critical section:

•Mutual Exclusion. . •Terjadi kemajuan (progress). •Ada batas waktu tunggu (bounded waiting). 

Page 15: konkurensi