Aku hanya belajar tentang .rev
file dengan WinRAR - di mana jika Anda memiliki volume RAR 10-bagian, misalnya, ditambah satu .rev
(pemulihan) Volume - yang .rev
volume yang akan dapat "memperbaiki" setiap satu rusak .rar
volume.
Bagaimana ini mungkin? Saya tidak mengerti bagaimana satu volume dapat memiliki semua data untuk memperbaiki setiap / semua volume yang rusak secara individual.
Saya kira itu mungkin sebagai pengganti volume yang tidak dipecah "linear", seperti yang saya bayangkan, di mana setiap volume RAR menyimpan file individual yang berbeda dari keseluruhan yang dikemas di dalamnya; tetapi, mungkin .rev
perbaikan dimungkinkan ketika volume RAR dipandang sebagai satu file terus menerus dari bit dan byte, sehingga untuk berbicara, dan bahwa mungkin ada beberapa sihir CRC'ish (ah hem, "pekerjaan perbaikan") yang terlibat untuk memperbaiki byte yang rusak.
Tapi saya tidak mengerti bagaimana Anda dapat memiliki 9 volume kerja dengan 1 rusak, namun memiliki volume pemulihan yang dapat memperbaiki salah satu volume. Bagaimana satu volume dapat menyimpan data "semua" volume?
sumber
Jawaban:
Mari kita ambil kasus yang sangat sederhana.
Anda memiliki empat volume dan volume pemulihan, masing-masing dengan 1 bit informasi di dalamnya:
Volume pemulihan akan berisi hasil dari masing-masing bit ini XOR d bersama-sama:
Jadi, volume pemulihan kami berisi bit tunggal
1
.Sekarang, katakanlah volume 1 gagal.
Jika kita XOR volume yang tersisa 2, 3 dan 4 dengan bit pemulihan di tempat volume gagal kita dapatkan:
Jadi, ini memberitahu kita bahwa jilid 1 berisi
1
, karena itu adalah hasil dari persamaan.Sebagai gantinya, kami berpura-pura volume 2 mati, jadi kami mengganti nilainya dalam persamaan dengan bit pemulihan:
Jadi kita tahu bahwa volume 2 berisi
0
, karena itu adalah hasil dari persamaan.Jika volume 3 atau 4 gagal, keduanya akan menghasilkan
1
dalam persamaan ini.Jadi, jika salah satu volume gagal, volume pemulihan dapat digunakan untuk merekonstruksi data berdasarkan volume yang tersisa. Ini mungkin bentuk koreksi kesalahan paling sederhana yang bisa Anda miliki. Jika dua volume gagal, Anda tidak dapat memulihkan apa pun.
sumber
Untuk cara yang sangat sederhana untuk memahami bagaimana hal ini bisa terjadi, bayangkan jika volume pemulihan berisi jumlah dari volume lainnya. Dengan daftar angka, salah satu dari mereka, dan jumlahnya, Anda selalu dapat merekonstruksi nomor yang hilang.
Misalnya, perhatikan dua angka ini, 13, 88, 17, 43. Jika Anda tahu ada satu nomor yang hilang dan dua digit terakhir dari jumlah semua angka itu adalah 81, Anda bisa menemukan nomor yang hilang itu. 13 + 88 + 17 + 43 = 161. Satu-satunya angka dua digit yang dapat Anda tambahkan untuk membuat angka yang berakhiran 81 adalah 20.
Katakanlah Anda memiliki 20 dan kehilangan 43. 13 + 88 + 17 + 20 = 138. Satu-satunya angka dua digit yang dapat Anda tambahkan untuk membuat angka yang berakhiran 81 adalah 43.
Dengan demikian nomor pemulihan memungkinkan Anda menemukan satu nomor yang hilang.
sumber