Sinkronisasi Pada Sistem Operasi

Apa itu Sinkronisasi ? kenapa Sistem Operasi Membutuhkan Sinkronisasi? Seperti kita ketahui bahwa hidup saling berkaitan satu sama lain, begitu juga Sinkronisasi Pada Sistem Operasi. Hal ini jika tidak ada penopang dalam menjalankan suatu sistem, maka akan menemui suatu kendala yang berakibat ketidakkonsistenan pada data, sehingga data tidak menjadi konkuren. 

Pengertian dari Sinkronisasi adalah Akses bebarengan untuk berbagi dua bersama dapat mengakibatkan inkosistensi data. Pemeliharaan konsistensi data memerlukan mekanisme untuk memastikan eksekusi dari proses kerjasama. 

Tujuan dari sinkronisasi itu sendiri ialah untuk menghindari terjadinya inkonsitensi data karena pengaksesan oleh beberapa proses yang berbeda serta untuk mengatur urutan jalannya proses-proses sehingga dapat berjalan dengan baik dan sesuai apa yang di harapkan.

Masalah pada Sistem Operasi Sinkronisasi bisa terdapat dari masalah lainnya, seperti   Masalah Race Condition  Critical Section
  • Arti dari Race Conditon adalah situasi di mana beberapa proses mengakses dan memanipulasi data bersama pada saat besamaan.
  • Arti dari masalah Critical Section adalah sebuah segmen kode di mana sebuah proses yang mana sumber daya bersama diakses
Critical Section mempunyai beberapa kode :
  • 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.
Kunci untuk mencegah masalah ini dan di situasi yang lain yang melibatkan shared memori, shared berkas, and shared sumber daya yang lain adalah menemukan beberapa jalan untuk mencegah lebih dari satu proses untuk melakukan proses writing dan reading kepada shared data pada saat yang sama.

Bagaimana pun setiap kali sebuah proses mengakses shared memory atau shared berkas atau melakukan sesuatu yang kitis akan menggiring kepada race conditions. Bagian dari program dimana shaed memory diakses disebut Critical Section atau Critical Region. Walau pun dapat mencegah race conditions, tapi tidak cukup untuk melakukan kerjasama antar proses secara pararel dengan baik dan efisien dalam menggunakan shared data, kita butuh 4 kondisi agar menghasilkan solusi yang baik yakni :
  • Tidak ada dua proses secara bersamaan masuk ke dalam citical section.
  • Tidak ada asumsi mengenai kecepatan atau jumlah cpu.
  • Tidak ada proses yang berjalan di luar critical secion yang dapat mengeblok proses lain.
  • Tidak ada proses yang menunggu selamamya untuk masuk critical section.
Solusi untuk mengatasi masalah Critical Section, yaitu:
  •  Mutual exclutionJika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.
  •  ProgressJika 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 bias ditunda.
  • 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.
Mungkin itu saja yang dapat saya berikan, info ini saya dapat dari berbagai sumber, jika masih ada kekurangan silahkan anda searching kembali tentang Sinkronisasi Pada Sistem Operasi. Semoga bisa memberi bermanfaat untuk anda, terimakasih...

Sign up here with your email address to receive updates from this blog in your inbox.