SINKRONISASI PROSES SISTEM OPERASI

Dian Pertiwi


Materi SISTEM OPERASI SEMESTER 3


SINKRONISASI PROSES

PENDAHULUAN

A.  Definisi Sinkronisasi 

Sinkronisasi diperlukan untuk menghindari terjadinya ketidak konsistenan data akibat adanya akses secara konkuren

(Proses perancangan sistem informasi).

 

Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan.Tujuan utama sinkronisasi adalah menghindari terjadinya inkonsistensi data karena pengaksesan oleh beberapa proses yang berbeda.

(mutual exclusion) serta untuk mengatur urutan jalannya proses-proses sehingga dapat berjalan dengan lancar dan terhindar dari deadlock atau starvation.Deadlock dan Starvation keduanya adalah kondisi di mana proses meminta sumber daya telah lama tertunda.

 

B.   Proses sinkronisasi  

Proses sinkronisasi ada 2 proses, yaitu:

1. Sinkronisasi proses

Yaitu mengacu pada gagasan bahwa banyak proses yang nantinya atau pada titik tertentu akan bergabung dalam rangka untuk mencapai suatu kesepakatan tertentu

2. Sinkronisasi data

Yaitu mengacu pada gagasan untuk menjadi beberapa Salinan data dari dataset di dalam konkurensi dengan satu sama lainnya untuk menjaga integritas data.

C.   Manfaat Sinkronisasi

Yaitu sebagai penyimpanan data sementara dan non sementara agar dapat mempermudah pekerjaan.

 

Agenda

TOPIK UTAMA DALAM PRESENTASI INI

RACE CONDITION

CRITICAL SECTION

SEMAPHORE

 

1.RACE CONDITION

•Race condition adalah kondisi di mana beberapa proses mengakses dan memanipulasi data bersama pada saat bersamaan. Nilai akhir dari data bersama tersebut tergantung pada proses yang terakhir selesai. Untuk mencegah race condition, proses-proses yang berjalan bersamaan harus di sinkronisasi.

 

2.CRITICAL SECTION

Critical Section adalah sebuah segmen kode dari sebuah proses yang mana sumber daya diakses bersamaan. Terdiri dari:

Entry Section: kode yang digunakan untuk masuk ke dalam critical section

Critical Section: Kode di mana hanya ada satu proses yang dapat dieksekusi pada satu waktu

Exit Section: akhir dari critical section, mengizinkan proses lain

Remainder Section: kode istirahat setelah masuk ke critical section

SOLUSI UNTUK MENGATASI CRITICAL SECTION

  • MUTUAL SECTION

  • BOUNDED WAITING

  • PROGRESS

 

  1. MUTUAL EXCLUTION

Jika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.

 

  1. PROGRESS

Jika tidak ada proses yang sedang dieksekusi dalam critical section dan ada beberapa proses yang ingin masuk ke critical section mereka, maka pemilihan proses yang akan masuk ke critical section berikutnya tidak bisa ditunda.

 

  1. BOUNDED WAITING

Suatu keterikatan harus ada pada sejumlah proses yang diijinkan masuk ke critical section mereka, setelah adanya proses yang meminta masuk ke critical section dan sebelum permintaan itu diterima.

 

 

3.SEMAPHORE

Semaphore adalah sebuah variabel bertipe integer yang selain saat inisialisasi.Dalam kehidupan nyata, semaphore adalah sistem sinyal yang digunakan untuk berkomunikasi secara visual. Dalam software, semaphore adalah sebuah variabel bertipe integer yang selain saat inisialisasi, hanya dapat diakses melalui dua operasi standar, yaitu increment dan decrement.

Semaphore digunakan untuk menyelesaikan masalah sinkronisasi secara umum. Berdasarkan jenisnya, semaphore hanya bisa memiliki nilai 1 atau 0, atau lebih dari sama dengan 0. Konsep semaphore pertama kali diajukan idenya oleh Edsger Dijkstra pada tahun 1967.

Operasi standar pada semaphore (dalam bahasa pemrograman C):

void kunci(int sem_value) {

while(sem_value <= 0);

sem_value–;

}

void buka(int sem_value) {

sem_value++;

}

1.    Jenis-jenis Semaphore, yaitu:

a)  Binary semaphore. Semaphore ini hanya memiliki nilai 1 atau 0. Sering juga disebut sebagai semaphore primitive

b) Counting semaphore. Semaphore ini memiliki nilai 0, 1, serta integer lainnya. Banyak sistem operasi yang tidak secara langsung mengimplementasikan semaphore ini, tetapi dengan memanfaatkan binary semaphore

2.    Prinsip semaphore :

a) Dua proses atau lebih dapat bekerja sama dengan menggunakan penanda-penanda sederhana

b)    Proses dipaksa berhenti sampai proses memperoleh penanda tertentu

c)    Variabel khusus untuk penandaan ini disebut semaphore

 

 

 


 

 

 


Komentar

Postingan populer dari blog ini

Perulangan pada Javascript

Pengertian Array 1 Dimensi dan 2 Dimensi Berserta Contohnya

DEMOKRASI SEMESTER 2