https://unix.stackexchange.com/a/12818/674
mengatakan
File kunci digunakan oleh program untuk memastikan dua (berperilaku baik) terpisah
contoh program, yang mungkin berjalan secara bersamaan pada satu
sistem, tidak mengakses sesuatu yang lain pada waktu yang sama. Idenya adalah
sebelum program mengakses sumber dayanya, ia memeriksa keberadaan
file kunci, dan jika file kunci ada, error atau tunggu
hilang. Ketika tidak ada, program yang ingin "memperoleh"
sumber daya membuat file, dan kemudian contoh lain yang mungkin
temukan nanti akan menunggu proses ini selesai dengannya. Tentu saja
, ini mengasumsikan program "memperoleh" kunci sebenarnya
melepaskannya dan tidak lupa menghapus file kunci.Ini berfungsi karena sistem file di bawah semua sistem
operasi mirip UNIX memberlakukan serialisasi, yang berarti hanya satu perubahan pada
sistem file yang benar-benar terjadi pada waktu tertentu . Semacam seperti kunci dengan
database dan semacamnya.
Apa yang dimaksud dengan paragraf terakhir?
Benarkah di Linux, sebuah file dapat ditulis secara bersamaan oleh dua proses, dan OS tidak menyediakan sinkronisasi implisit tetapi memerlukan sinkronisasi eksplisit dari programmer?
Apakah file kunci merupakan cara eksplisit untuk menyinkronkan akses ke file yang sama dengan beberapa proses?
Terima kasih.