Concurrency Sistem Operasi
Concurrence: Sesuatu yang terjadi bersama-sama. (2/lebih)
Contoh : Ada sebuah file, diakses oleh dua/lebih proses bersama-sama.
Masalah yang dihadapi:
- Akses File.
- Resource Terbatas.
- Sulitnya OS mengatur alokasi resource secara optimal.
- Sulitnya mencari kesalahan programming.
Istilah-istilah pada concurrency:
- Atomic Operation
- instruksi yang "tampaknya" tidak dapat dibagi
- Dieksekusi semua atau tidak sama sekali
- Bagian program yang tidak dapat di interupt.
- Critical Section
- Bagian tertentu dari kode yang membutuhkan akses ke shared resources.
- Tidak boleh dijalankan ketika ada proses lain yang sedang menjalankan bagian tersebut.
- Race Condition
Penanganan
- Mutex : Sesuatu yang dibutuhkan untuk memastikan tidak ada proses lain yang menjalankan critical section.
Singkatnya : Kunci/LOCK
Mekanisme: Menggunakan hardware dan software.
Kesalahan Penggunaan:
Menyebabkan:
- Starvation : Situasi dimana suatu proses tidak pernah dijalankan oleh prosesor.
- Deadlock
Semaphore: Kurang lebih=sinyal. Awawlnya diisi bilangan integer non negatif.
SemWait mengurangi nilai semaphore dan jika hasilnya minus maka proses yang memanggil akan di blok.
SemSignal menambah nilai semaphore dan hasilnya lebih dari 0, maka proses yang memanggil SemWait bisa masuk ke ready queue lagi.
Contoh : Ada sebuah file, diakses oleh dua/lebih proses bersama-sama.
Masalah yang dihadapi:
- Akses File.
- Resource Terbatas.
- Sulitnya OS mengatur alokasi resource secara optimal.
- Sulitnya mencari kesalahan programming.
Istilah-istilah pada concurrency:
- Atomic Operation
- instruksi yang "tampaknya" tidak dapat dibagi
- Dieksekusi semua atau tidak sama sekali
- Bagian program yang tidak dapat di interupt.
- Critical Section
- Bagian tertentu dari kode yang membutuhkan akses ke shared resources.
- Tidak boleh dijalankan ketika ada proses lain yang sedang menjalankan bagian tersebut.
- Race Condition
Penanganan
- Mutex : Sesuatu yang dibutuhkan untuk memastikan tidak ada proses lain yang menjalankan critical section.
Singkatnya : Kunci/LOCK
Mekanisme: Menggunakan hardware dan software.
Kesalahan Penggunaan:
Menyebabkan:
- Starvation : Situasi dimana suatu proses tidak pernah dijalankan oleh prosesor.
- Deadlock
Semaphore: Kurang lebih=sinyal. Awawlnya diisi bilangan integer non negatif.
SemWait mengurangi nilai semaphore dan jika hasilnya minus maka proses yang memanggil akan di blok.
SemSignal menambah nilai semaphore dan hasilnya lebih dari 0, maka proses yang memanggil SemWait bisa masuk ke ready queue lagi.
Comments
Post a Comment