42519007 SINKRONISASI Sinkronisasi merupakan suatu proses pengaturan jalannya beberapa proses pada waktu yang bersamaan untuk menyamakan waktu dan data supaya tidak terjadi inkonsitensi data akibat adanya akses data secara konkuren agar hasilnya bagus dan sesuai dengan apa yang diharapkan 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 diharapkan Fungsi dari sinkronisasi adalah mengadakan mekanisme-mekanisme agar bisa dipastikan proses eksekusi berjalan walaupun adanya akses-akses data yang sama yang dilakukan secara bersamaan yang menyebabkan data tidak konsisten RACE CONDITION Race Condition merupakan situasi dimana beberapa proses mengakses dan memanipulasi data secara bersamaan. Nilai terakhir dari data bergantung dari proses mana yang selesai terakhir. Untuk menghindari race condition, proses-proses secara bersamaan harus disinkronisasikan. Proses A dan B, mereka memutuskan untuk antre untuk sebuah berkas untuk dicetak. Situasi ini digambarkan sebelumnya CRITICAL SECTION Critical Section adalah sebuah segmen kode dimana sebuah proses memiliki sumber daya bersama yang diakses terdiri dari entry section, kode yang digunakan untuk masuk ke dalam critical section, critical section, kode dimana hanya ada satu proses yang dapat dieksekusi pada satu waktu, exit section, akhir dari critical section, mengizinkan proses lain dan remainder section, merupakan kode istirahat setelah masuk ke critical section SEMAPHORE Semaphore adalah pendekatan yang memiliki prinsip bahwa dua proses atau lebih dapat bekerja sama dengan menggunakan penanda-penanda sederhana. Semaphore dapat diinisialisasi dengan nilai non negatif terdapat dua operasi terhadap semaphore, yaitu down dan up