You are on page 1of 3

TUGAS CONCURRENCY

AHMAD DZULFIKAR SR

115060801111060

1. Concurrency : Concurrency merupakan landasan umum perancarangan system operasi . keadaan disebut concurrency adalah disaat ada proses-proses yang berada pada saat saat yang bersamaan. Proses-proses ini dapat berdiri sendiri tapi juga dapar berinteraksi dengan proses-proses yang lain, sehingga membutuhkan sinkronasi atau koordinasi yang baik. 2. Contoh Concurrency 3. Atomic Process, Mutual exclusion, dan critical section a. Atomic Process Merupakan serangkaian dari satu atau lebih instruksi(baris program) yang tak dapat dibagi, sehingga tidak ada proses lain yang dapat melakukan interrupt pada proses tersebut. b. Mutual Exclusion Keadaan dimana sebuah proses yang berada dalam keadaan critical section yang mengakses suatu resource tidak dapat diganggu oleh proses lain yang ingin mengakses resource yang sama. c. Critical Section Suatu bagian dari code dalam sebuah proses yang membutuhkan akses ke suatu resource dan tidak dapat dijalankan apabila ada proses lain yang berada pada bagian code yang sama. 4. Tingkat Awarness (kesadaran) antar proses dan resikonya : Tingkat Awarness Hubungan Pengaruh Unaware Kompetisi Hasil dari satu proses tidak bergantung dari proses lain. Timing dari proses berpengaruh Indirectly Aware Kerjasama Hasil dari satu dengan cara proses bergantung berbagi pada informasi yang didapatkan dari proses lain. Timing dari proses berpengaruh. Directly Aware Kerjasama Hasil dari satu dengan cara proses bergantung komunikasi pada informasi

Masalah Control yang Mungkin Mutual Exclusion Deadlock Starvation

Mutual Exclution Deadlock Starvation Data Coherence

Deadlock Starvation

TUGAS CONCURRENCY

AHMAD DZULFIKAR SR

115060801111060

yang didapatkan dari proses lain. Timing dari proses berpengaruh.

5. Penyebab dari Critical Section Critical section biasanya digunakan saat program multithreading, dimana program tersebut terdiri dari banyak thread, akan mengubah nilai dari variabel. Dalam hal ini critical section diperlukan untuk melindungi variabel dari concurrent access yang dapat membuat nilai dari variabel tersebut menjadi tidak konsisten. 6. Semaphore dan Cara Kerjanya Semaphore adalah nilai integer yang digunakan sebagai sinyal untuk proses. Hanya 3 operasi yang dapat dilakukan oleh semaphore. Dan semuanya adalah Atomic Operation : Initialize, Increment, dan Decrement. a. Semaphore dapat di inisialisasi menjadi non negative bilangan integer. b. Operasi semWait mengurangi nilai dari semaphore. Jika nilai semaphore menjadi negative, maka proses yang menjalankan semWait akan di blok. Jika tidak negative maka proses akan terus berjalan. c. Operasi semSignal menambah nilai dari semaphore. Jika hasil penambahan kurang dari atau sama dengan nol, maka proses yang diblok oleh semWait akan di unblok. 7. Monitor dan Cara Kerjanya Monitor adalah sebuah modul perangkat lunak terdiri dari satu atau lebih prosedur, sebuah rangkaian inisialisasi, dan data lokal. Cara kerja Monitor : a. Variabel data lokal hanya dapat diakses oleh prosedur pada monitor bukan oleh prosedur eksternal lain. b. Sebuah proses masuk ke monitor dengan melibatkan satu dari prosedur monitor. c. Hanya satu proses yang dapat dijalankan di monitor dalam suatu waktu. Prosesproses lain yang telah melibatkan monitor akan diblok, menunggu monitor dapat digunakan kembali. 8. Kenapa ada monitor sedangkan sudah ada semaphore. Karena meskipun semaphore menyediakan alat yang fleksibel dan kuat untuk menjalankan mutual exclution dan untuk koordinasi proses, tetapi sangat sulit untuk menghasilkan program yang benar . Maka digunakanlah monitor.

TUGAS CONCURRENCY

AHMAD DZULFIKAR SR

115060801111060

9. Analisa Konsep Concurrency pada Linux dan Windows a. Pada Windows Beberapa single-user mikrokomputer sistem operasi seperti MS-DOS menyediakan sedikit atau tidak sama sekali arti dari pemrosesan yang konkuren. berikut dampak yang paling mungkin ketika pemrosesan yang konkuren dimasukkan ke dalam suatu sistem operasi 1. Mutual exclusion, yaitu terdapat dua proses yang pada saat bersamaan berada dalam critical region yang bisa menghambat proses lain 2. Deadlock, yaitu suatu keadaan dimana sistem seperti terhenti karena setiap proses memiliki sumber daya yang tidak bisa dibagi dan menunggu untuk mendapatkan sumber daya yang sedang dimiliki oleh proses lain 3. Starvation, Yaitu proses seolah-olah berhenti, menunggu request akses ke critical section diperbolehkan 4. Sinkronisasi

You might also like