Apa yang sebenarnya dilakukan 'Verifikasi Disk' Setelah Pembakaran untuk Memverifikasi Data?
Fitur 'verifikasi cakram' sangat bagus untuk memastikan cakram Anda yang baru terbakar ternyata baik, tetapi bagaimana tepatnya kerjanya? T&J Super Pengguna hari ini memiliki jawaban untuk pertanyaan pembaca yang penasaran.
Sesi Tanya Jawab hari ini datang kepada kami berkat SuperUser-subdivisi Stack Exchange, pengelompokan situs web Q&A berbasis komunitas.
Foto milik cobalt123 (Flickr).
Pertanyaan
SuperUser reader user1301428 ingin tahu bagaimana cakram diverifikasi setelah dibakar:
Apa yang benar-benar memverifikasi cakram setelah pembakaran sebenarnya untuk memverifikasi data? Saya membayangkan itu adalah semacam perbandingan antara file asli dan file yang telah dibakar pada disk, tetapi apakah ada yang tahu bagaimana itu benar-benar dilakukan pada level rendah?
Maksud saya, apakah itu membuat hash dari sumber dan konten tujuan, lalu membandingkannya? Jika demikian, apakah ia menyimpan hash dari konten yang dibakar dalam RAM? Atau apakah itu menyimpannya dalam file sementara di hard drive? Apakah ada file log tentang apa yang terjadi?
Hanya ingin tahu persis bagaimana fitur ini bekerja. Dan saya mengacu pada Windows Image Burner.
Bagaimana proses verifikasi disk bekerja??
Jawabannya
Kontributor SuperUser, Frank Thomas dan Synetech, memiliki jawaban untuk kita. Pertama, Frank Thomas:
Lihat halaman MSDN ini di windows API untuk antarmuka IBurnVerification dan IMAPI_BURN_VERIFICATION_LEVEL enum.
Untuk cakram data, sepertinya dalam mode cepat itu tidak checksum seluruh cakram, hanya pilihan sektor. Kemudian memastikan bahwa API memanggil READ_DISC_INFO dan READ_TRACK_INFO berhasil melawan disk baru.
Untuk verifikasi penuh, ia melakukan pemeriksaan di atas, kemudian melakukan pemeriksaan penuh pada sesi terakhir pada disk baru terhadap checksum yang dihitung pada aliran memori yang dibakar. Checksum harus disimpan dalam ram, tetapi kemungkinan besar nilai tersebut berumur pendek. Perhatikan bahwa perbandingannya adalah terhadap gambar disk dalam RAM, bukan media sumber itu sendiri, jadi jika sumber data tidak membaca dengan benar, itu akan ditulis secara tidak benar. Verifikasi tidak akan mendeteksi ini.
Untuk disk musik, ini berfokus pada memeriksa READ_TRACK_INFO dan daftar isi disk, tetapi tidak melakukan perhitungan checksum. Tidak ada mode verifikasi lengkap untuk musik.
Diikuti oleh jawaban dari Synetech:
Frank menjelaskan verifikasi khusus Windows. Saya akan memberikan jawaban yang lebih umum.
- Apa yang dilakukan Verifikasi disk setelah pembakaran sebenarnya dilakukan untuk memverifikasi data?
- Maksud saya, apakah itu membuat hash dari sumber dan konten tujuan, lalu membandingkannya? Jika demikian, apakah ia menyimpan hash dari konten yang dibakar dalam RAM? Atau apakah itu menyimpannya dalam file sementara di hard drive? Apakah ada file log tentang apa yang terjadi?
Itu tentu saja salah satu cara perbandingan dapat diimplementasikan: hash satu file (mudah-mudahan dengan kemungkinan besar algoritma tabrakan cukup dibaca-besar), ulangi untuk yang lain, dan membandingkan hash. Jika begitulah verifikasi dilaksanakan, maka Anda akan dapat melihat flash drive-LED untuk sementara waktu, kemudian CD / DVD-LED flash untuk sementara waktu.
Cara lain untuk mengimplementasikan verifikasi adalah dengan membaca blok dari satu file, kemudian blok yang sama dari file lain, membandingkannya, lalu ulangi sampai akhir file tercapai. Dalam hal ini, Anda akan melihat LED dari dua drive bolak-balik.
Tentu saja, jika hard-drive dan optical drive tidak memiliki LED, maka tidak akan sejelas itu. Tetapi Anda masih bisa melihatnya dengan sesuatu seperti ProcessMonitor karena akan mencatat serangkaian bacaan dari satu, kemudian yang lain baik dalam satu, ledakan besar atau bergantian, semburan kecil.
- Saya membayangkan itu adalah semacam perbandingan antara file asli dan file yang telah dibakar pada disk, tetapi apakah ada yang tahu bagaimana itu benar-benar dilakukan pada level rendah?
Sebenarnya, yang harus dilakukan adalah membersihkan cache drive sehingga fungsi perbandingannya adalah membaca data dari disk sebenarnya, bukan dari cache memori. Jelas ini adalah langkah penting karena jika verifikasi dilakukan dari cache, maka itu tidak mewakili apa yang sebenarnya ada di disk, sehingga korupsi dapat dengan mudah menyelinap melalui.
Anda dapat melihat apakah perbandingan dilakukan dari drive atau dari cache di RAM dengan seberapa cepat itu terjadi. Jika Anda secara manual melakukan perbandingan sederhana (mis. Dengan WinDiff, WinMerge, atau dengan hashing dengan alat hashing), Anda akan melihat bahwa perbandingan terjadi jauh lebih cepat dari yang diharapkan karena membaca file dari cache memori. Anda harus membersihkan cache untuk memaksanya membaca dari disk yang sebenarnya. Untuk drive optik (dan media lain yang dapat dilepas seperti flash drive dan kartu memori), cukup mengeluarkan drive sudah cukup untuk membersihkan cache, tetapi untuk hard drive, itu tidak semudah itu (walaupun biasanya itu tidak masalah karena salinan baru adalah yang ingin Anda uji).
Punya sesuatu untuk ditambahkan ke penjelasan? Berbunyi dalam komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang mengerti teknologi lainnya? Lihat utas diskusi lengkap di sini.