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.
penerima (receiving process) atau oleh mailbox.
• Pengiriman yang tidak diblok: Proses pengiriman pesan dan mengkalkulasi operasi.
• Penerimaan yang diblok: Penerima mem blok samapai pesan tersedia.
• Penerimaan yang tidak diblok: Penerima mengembalikan pesan valid atau null.
Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada saat yang bersamaan. tujuan utama sinkronisasi adalah menghindari terjadinya inkonsitensi 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 dan starvation. Sinkronisasi umumnya dilakukan dengan bantuan perangkat sinkronisasi. Penyelesaian terhadap masalah ini sangat penting karena perkembangan teknologi sistem komputer menuju ke sistem multiprocessing, terdistribusi dan paralel yang mengharuskan adanya proses-proses kongkuren.
Kemungkinan Sinkronisasi Gagal
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 exclution : Jika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.
• 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 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.
Itu tadi pengertian Sinkronisasi Pada Sistem Operasi yang saya ringkas dari berbagai sumber Semoga bisa memberi bermanfaat untuk anda.
Salam Admin-M
0 Komentar
Penulisan markup di komentar