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.

Comments

Popular posts from this blog

Bermain dengan Python dan Twitter (Part 2 Analisis Sentimen Sederhana)

UTS MPPL F 5113100121

Manajemen Waktu_5113100121