Konkurensi SISTEM OPERASI Slide perkuliahan

Slides:



Advertisements
Presentasi serupa
LOGO Kelompok 5 Rifki Baidhowi Ida Fitriana Satya Bagus F Sistem Operasi Kelas E Teknik Informatika Sistem Operasi Kelas E Teknik.
Advertisements

Media pembelajaran 3 Metode Pada Penjadwalan
MODUL KULIAH Mata kuliah SISTEM OPERASI II ( 3 sks )
Kelompok 5 “Sinkronisasi Proses” Sistem Operasi Kelas F
Tim Teaching Grant Mata Kuliah Sistem Operasi
SINKRONISASI Pertemuan 5.
STRUKTUR DASAR ALGORITMA
STRUKTUR PERULANGAN Perulangan adalah instruksi yang dapat mengulang sederetan Instruksi secara berulang-ulang sesuai persyaratan yang ditetapkan. Struktur.
Dosen: Jajang Kusnendar, M.T
Arief Cahyo S Rachmad Wahyudi S Abdul Qodir Jailani M. Choirur Rozi Rahmat Aidil FR
PERTEMUAN 6 Algoritma Presented by : Sity Aisyah, M.Kom
Dahlan Abdullah PERTEMUAN – 6 KULIAH SISTEM OPERASI SINKRONISASI & DEADLOCK.
Concurrency M-03.
Pertemuan ke 3 Konsep Proses
Pertemuan 4 Manajemen Proses 2.
Instruksi Runtutan Instruksi Pemilihan dan Instruksi Perulangan dalam Pascal Minggu XII.
Sinkronisasi Proses Catur Iswahyudi.
Oleh : Wahyu Andhyka Kusuma
Masalah Klasik Komunikasi Antar Proses
SINKRONISASI.
Sistem Operasi Sinkronisasi Proses.
SINKRONISASI DAN DEADLOCK
Sinkronisasi dan Deadlock Proses
JENIS PERULANGAN While.. Do Beda antara while..Do dengan repeat..Until
Concurrency 1: Mutual Exclusion dan Sinkronisasi
Operasi Perulangan pada FORTRAN Pertemuan 6
MUTUAL EXCLUSION.
MUTUAL EXCLUSION.
Konkurensi: Mutual Exclusion dan Sikronisasi
KONKURENSI.
KONKURENSI.
SINKRONISASI DAN DEADLOCK
Sinkronisasi Proses.
While … do … Repeat … until … For … to … do …
Wahyu nurjaya wk, st., m.kom.
Konkurensi.
SINKRONISASI.
PROSES BAB 2 By Abdul Kadir.
STRUKTUR DASAR ALGORITMA
Kongkurensi (Concurrency)
Mutual Exclusion Edi Sugiarto, S.Kom.
STRUKTUR DASAR ALGORITMA
Sinkronisasi Proses.
SINKRONISASI & DEADLOCK
STRUKTUR DASAR ALGORITMA
Sinkronisasi dan Deadlock
“Sinkronisasi Proses”
SINKRONISASI PADA THREAD
Manajemen Memori SISTEM OPERASI Slide perkuliahan
Algoritma Pemrograman
Memori Virtual SISTEM OPERASI Slide perkuliahan
Konkurensi (Cont’d) SISTEM OPERASI Slide perkuliahan
Konkurensi (Cont’d) SISTEM OPERASI Slide perkuliahan
Konkurensi (Cont’d) SISTEM OPERASI Slide perkuliahan
Konkurensi 2 Sinkronisasi dan Semaphore
Memori Virtual SISTEM OPERASI Slide perkuliahan
TEGUH IMAN HERMANTO, M.Kom
Struktur Dasar Algoritma dan Runtunan
PERCABANGAN DAN PERULANGAN
Seleksi Kondisi merupakan perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu. Operator yang digunakan.
Koordinasi Antar Proses DI DALAM SISTEM TERDISTRIBUSI
Memori Virtual SISTEM OPERASI Slide perkuliahan
STRUKTUR PERULANGAN.
Kongkurensi.
Konkurensi SISTEM OPERASI Slide perkuliahan
SINKRONISASI PROSES Kelompok 1 Achmad Syarifudin S Ade Putra Gustama
Sesi 5. Sinkronisasi Proses
STRUKTUR DASAR ALGORITMA
SISTEM OPERASI MODUL Mutual exclusion Maria Cleopatra, S.Kom
Oleh : Rahmat Robi Waliyansyah, M.Kom.
Transcript presentasi:

Konkurensi SISTEM OPERASI Slide perkuliahan Sumber : - Modern Operating System, Tanenbaum Operating System, Internal and Design Principles, William Stallings Modul SO, Johni S. Pasaribu Ken Kinanti Purnamasari

KONKURENSI Keadaan dimana terdapat lebih dari satu proses yang dieksekusi pada suatu waktu. Interaksi antar proses : Persaingan (untuk mendapatkan resources) Kerjasama (komunikasi & sinkronisasi)

INTERAKSI PROSES Kompetisi : Tidak saling tahu Kooperasi Bagi-Pakai : Saling tahu tidak langsung Kooperasi Komunikasi : Saling tahu langsung

MASALAH KONKURENSI Mutual Exclusion : satu proses, di suatu waktu Deadlock : proses saling menunggu Starvation : satu proses selalu menunggu

RACE CONDITION Kondisi dimana beberapa proses dapat mengakses (read & write) data / variabel yang sama. Masalah Data yang digunakan suatu proses, dapat diubah (diganggu) oleh proses lain.

CRITICAL Critical Resource : sumber daya yang tidak dapat dipakai bersama pada suatu waktu. contoh : printer, disk Critical Section : bagian program/proses yang mengakses Critical Resource.

MUTUAL EXCLUSION Hanya ada satu proses yang dikerjakan di suatu waktu. Pelanggaran Mutex menyebabkan : Deadlock Starvation

SYARAT MUTEX Hanya ada 1 proses dalam CS dalam suatu waktu. Suatu proses yang tidak berhenti di CS-nya, tidak boleh mengganggu proses lain. Waktu tunggu suatu proses ditentukan di awal. Jika tidak ada proses di CS, proses baru boleh masuk. Tidak ada perkiraan kecepatan eksekusi & jumlah pemroses Suatu proses berada di CS untuk waktu yang terbatas.

PENDUKUNG MUTEX Algoritma yang digunakan untuk mendukung terjadinya Mutual Exclusion dengan busy waiting adalah : Dekker  untuk kasus 2 buah proses Peterson  dapat digeneralisasi untuk n-buah proses Busy waiting = sibuk menunggu tanpa aktivitas lain, sampai diijinkan masuk oleh CS

Program Dekker; const N = 2; var turn : integer; flag : array[0..N-1] of boolean; procedure MasukCriticalSection; begin {mengerjakan kode-kode critical} end; procedure KeluarCriticalSection; {mengerjakan kode-kode yang tidak critical}

procedure Proses0; begin repeat flag[0] := true; turn := 1; while flag[1] do if turn = 1 then flag[0] := false; while turn = 1 do begin end; end; MasukCriticalSection; KeluarCriticalSection; until false

procedure Proses1; begin repeat flag[1] := true; turn := 0; while flag[0] do if turn = 0 then flag[1] := false; while turn = 0 do begin end; end; MasukCriticalSection; KeluarCriticalSection; until false

begin flag[0] := false; flag[1] := false; parbegin proses0; proses1; parend; end;

Program Peterson; const N = 2; var turn : integer; flag : array[0..N-1] of boolean; procedure MasukCriticalSection; begin {mengerjakan kode-kode critical} end; procedure KeluarCriticalSection; {mengerjakan kode-kode yang tidak critical}

procedure Proses0; begin repeat flag[0] := true; turn := 1; while (flag[1] and turn = 1) do begin end; MasukCriticalSection; flag[0] := false; KeluarCriticalSection; until false end; Procedure Proses1; flag[1] := true; turn := 0; while (flag[0] and turn = 0) do begin end; flag[1] := false;

begin flag[0] := false; flag[1] := false; parbegin proses0; proses1; parend; end;

SEMAPHORE Variabel khusus yang digunakan untuk menandai. Semaphore tidak dapat di-interupsi sampai kode program tertentu selesai dikerjakan. Semaphore tidak membutuhkan busy waiting. Memakai konsep wait dan signal.

SEMAPHORE Counting Semaphore nilai bertambah terus Binary Semaphore nilai hanya berupa 0 atau 1

SEMAPHORE Beberapa proses yang berkaitan, menentukan proses lainnya dengan signal-signal. Sebuah proses akan dihentikan proses lainnya ketika mendapatkan signal tertentu. Semaphore merupakan variabel integer yang diakses operasi atomik standar (wait & signal). Terdapat 2 operasi terhadap Semaphore (Blocked & Wake up)

SEMAPHORE do wait (mutex); //critical_section signal (mutex); //remainder section while true

Semaphore, Deadlock & Starvation NEXT … MORE DETAIL ABOUT Semaphore, Deadlock & Starvation