Posted by : KODE ILMU Kamis, 20 November 2014


CONCURRENCY



Adalah situasi ketika 2 atau lebih suatu hal yang berjalan pada waktu yang bersamaan.

Masalah yanhg dihadapi
·       bahaya berbagai global resource
·         sulitnya OS mengatur alokasi resources secara optimal
·         sulitnya mencari kesalahan

 Istilah pada concurrency
·       ATOMIC OPERATION
a.       operasi yang bersifat atomic (tampaknya tidak bisa di sela)
b.      Dieksekusi semua atau tidak sama sekali
c.       Bagian program yang tidak dapat interrupt
·       
       CRITICAL SECTION
a.       Operasi yang tidak bisa disela ( tidak bisa dijalankan ketika ada proses lain yang sedang menjalankan bagian tersebut
b.      Bagian tertentu dari kode yang membutuhkan akses ke shared resources
·     
          RACE CONDITION
a.       Hasil eksekusi program tergantung pada siapa yang dijalankan terlebih dahulu

 Cara Menangani
·         MANUAL EXECUTION
a.       Sesuatu yang dibutuhkan  untuk memastikan tidak ada proses lain yang menjalankan critical section, ketika ada proses yang sedang dijalankan
b.      Mekanisme menggunakan hardware (disable/enable interrupt)
Menggunakan software (software object/variable)
        
·         Kesalahan pengguna dapat menyebabkan
a.       Starvation, yaitu situasi ketika prosesor tidak dapat menjalankan suatu proses
b.      Deadlock saling menunggu resource dari yang lainnya dan menyebabkan dua proses tidak dapat berjalan

·         SEMAPHORE
Merupakan sebuah nilai integer yang digunakan sebagai sinyal dalam komunikasi antar proses.
Memiliki berbagai kemungkinan nilai seperti
a.       Inisialisasi, yang diisi dengan bilangan integer non negative
b.      Semwait , mengurangi nilai semaphore dan jika hasilnya minus, maka proses akan diblock
c.       Semsignal , menambah nilai semaphoredan jika hasilnya lebih dari 0 maka proses akan memanggil semwait sehingga bisa masuk ke state ready lagi.

·         Pipe merupakan komunikasi sekuensial antar proses. Kelemahan dari pipe adalah hanya bisa digunakan oleh proses saling berhubungan. Terdapat dua jenis pipe antara lain :
a.       Unnamed pipe , digunakan untuk komunikasi antara proses induk dengan proses anak
b.      Named pipe, merupakan komunikasi antar proses yang menggunakan pipe dan diberi nama.


Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © KODE ILMU - Skyblue - Powered by Blogger - Designed by Johanes Djogan -