On Mon, Aug 28, 2006 at 06:34:03PM +0700, Adnan Adhy Kurniawan wrote: > setahu saya flasdisk saat ini sudah sedemikian canggihnya sehingga mampu > mengatasi kondisi cabut pasang sesukanya, hingga saat ini pun saya > memakai metode yang sama dengan mas hans (cabut pasang sesukanya) baik > di windows ataupun di suse 10.1, asal perhatikan led di flasdisknya > kalau lagi tulis atau baca ya jangan dicabut. btw itulah gunanya ada > led di flasdisk tul?
Yang jadi masalah bukan cuma cabut pas SEDANG menulis aja. Tapi juga karena ada write cache (atau asynchronous write). Kebanyakan OS tidak langsung menulis ke disk setiap ada request utk write, tapi dimasukin ke cache dulu. Ntar pas dibutuhkan baru diflush cachenya (flush di sini artinya bener2 ditulis ke disknya). Ini biasanya salah satu tujuannya adalah utk response yg lebih cepat utk desktop applications. (Cache ini biasanya adanya di memory yg lebih cepat drpd yg mau ditulisin.) Jadi utk kasus usb disk, ketika anda mengcopy data ke disknya misalnya, maka biasanya tidak langsung ditulis ke disknya oleh OS-nya, tapi dicache dulu. Baru nanti diflush cachenya ke disk pada saat diperlukan. Jadi kalo disknya sudah dicabut sebelum diflush ya datanya belum tertulis di disknya. Ini sebetulnya tujuan utama kenapa kok harus disync dulu sebelum dicabut. Distro2 modern (seperti Ubuntu Dapper) sudah otomatis melakukan flush cache ini sebelum mencabut pada saat kita click eject di desktop. Kalo mau manual bisa pake perintah 'sync' dr command line, baru 'umount'. Selain itu bisa juga mematikan write cache dg cara menge-mount disknya dg option 'sync' (cari "async" dan "sync" di 'man mount'). Jadi kalo selama ini anda belum pernah menemui masalah dg langsung mencabut, ya itu cuma kebetulan aja atau mungkin selalu dimount synchronously. Coba aja penuhin USB disk yg kosong dg mengcopy files, lalu segera setelah proses copynya selesai dicabut sebelum diflush cachenya, lalu setelah bbrp saat dicolok lagi dan cek file2nya ada nggak. Ronny
signature.asc
Description: Digital signature
