Homepage » hogyan kell » Mit csinál az „Ellenőrzi a lemezt” valójában az égés után, hogy ellenőrizze az adatokat?

    Mit csinál az „Ellenőrzi a lemezt” valójában az égés után, hogy ellenőrizze az adatokat?

    A 'lemez ellenőrzése' funkció nagyszerű annak biztosítására, hogy a frissen égett lemez jól kiderüljön, de hogyan működik pontosan? A mai SuperUser Q&A bejegyzés válaszol egy kíváncsi olvasó kérdésére.

    A mai Kérdések és válaszok munkamenet a Jóvagyon - a Stack Exchange alosztályának, a közösség által vezérelt Q&A webhelyek csoportjának köszönhetően..

    Fotó cobalt123 (Flickr) jóvoltából.

    A kérdés

    A SuperUser olvasó user1301428 azt szeretné tudni, hogy a lemezeket hogyan égették be:

    Mi igazolja az égés után a lemezt, hogy igazolja az adatokat? Elképzelhető, hogy valamilyen összehasonlítás van az eredeti fájlok és a lemezen leégett fájlok között, de valaki tudja, hogy valóban milyen alacsony szinten van?

    Úgy értem, létrehozza a forrás- és céltartalom tartalmát, majd összehasonlítja őket? Ha igen, tárolja-e az égetett tartalom hash-ját RAM-ban? Vagy elmenti egy ideiglenes fájlba a merevlemezen? Létezik-e naplófájl arról, hogy mi történik?

    Csak kíváncsi, hogy pontosan tudja, hogyan működik ez a funkció. És a Windows Image Burnerre utalok.

    Hogyan működik a lemezellenőrzési folyamat?

    A válasz

    A SuperUser közreműködői Frank Thomas és Synetech válaszolnak számunkra. Először fel, Frank Thomas:

    Tekintse meg ezeket az MSDN-oldalakat a Windows API-ban az IBurnVerification felület és az IMAPI_BURN_VERIFICATION_LEVEL enum számára.

    Adatlemezek esetében gyors módban néz ki, hogy nem ellenőrzi az egész lemezt, csak egy szektorválasztékot. Ezután megbizonyosodik arról, hogy az API hívja a READ_DISC_INFO-t és a READ_TRACK_INFO-t az új lemez ellen..

    A teljes ellenőrzés érdekében elvégzi a fenti ellenőrzéseket, majd teljes ellenőrző összeget állít fel az új lemez utolsó munkamenetére az égett memóriaáramra számított ellenőrző összeg ellenében. Az ellenőrző összegeket ramban kell tárolni, de valószínűleg rövid élettartamú értékek. Ne feledje, hogy az összehasonlítás a lemez memóriájával ellentétes, nem maga a forrásmédia, így ha a forrásadatok nem olvastak helyesen, akkor helytelenül íródik. Az ellenőrzés nem fogja észlelni ezt.

    Zenei lemezek esetében a READ_TRACK_INFO és a lemez tartalmának ellenőrzésére összpontosít, de nem végez ellenőrzőösszeg számítást. A zene teljes ellenőrzési módja nincs.

    Ezt követi a Synetech válasza:

    Frank szépen magyarázta a Windows-specifikus ellenőrzést. Általánosabb választ fogok adni.

    • Mit tesz a lemez ellenőrzése az égés után az adatok ellenőrzéséhez?
    • Úgy értem, létrehozza a forrás- és céltartalom tartalmát, majd összehasonlítja őket? Ha igen, tárolja-e az égetett tartalom hash-ját RAM-ban? Vagy elmenti egy ideiglenes fájlba a merevlemezen? Létezik-e naplófájl arról, hogy mi történik?

    Ez minden bizonnyal az egyik módja az összehasonlítás megvalósításának: hash one file (remélhetőleg elég nagy olvasású alacsony ütközési algoritmus esélye), ismételje meg a másikra, és hasonlítsa össze a hasheket. Ha így történik a hitelesítés, akkor a meghajtó-LED vaku egy ideig látható lesz, majd a CD / DVD-LED egy ideig villog.

    A hitelesítés végrehajtásának másik módja egy fájl blokkjának olvasása, majd ugyanazt a mondatot a másik fájlból, összehasonlítani, majd ismételni addig, amíg a fájl vége el nem ér. Ebben az esetben a két meghajtó LED-jeit előre és hátra váltja fel.

    Természetesen, ha a merevlemez és az optikai meghajtó nem rendelkezik LED-ekkel, akkor nem lesz olyan nyilvánvaló. De mégis láthatod valamit, mint a ProcessMonitor, mert egy-egy olvasási sorozatot fog naplózni az egyikből, majd a másikból egyetlen, nagy sorozatban vagy váltakozó, kis darabokban..

    • Elképzelhető, hogy valamilyen összehasonlítás van az eredeti fájlok és a lemezen leégett fájlok között, de valaki tudja, hogy valóban milyen alacsony szinten van?

    Valójában mindössze annyit tesz, hogy a meghajtó gyorsítótárát úgy kell öblíteni, hogy az összehasonlító függvény az adatok tárolását az aktuális lemezről, a memória gyorsítótár helyett. Nyilvánvaló, hogy ez egy kritikus lépés, mert ha a hitelesítés gyorsítótárból történik, akkor ez nem jelenti azt, ami valójában a lemezen van, így a korrupció könnyen elcsúszhat.

    Láthatjuk, hogy összehasonlítás történik-e a meghajtóról vagy a RAM gyorsítótárából a gyorsasággal. Ha kézzel végez egy egyszerű összehasonlítást (azaz WinDiff, WinMerge vagy hashing eszközzel), akkor észre fogod venni, hogy az összehasonlítás a vártnál sokkal gyorsabban történik, mert a memóriában tárolt fájlokat olvassa. A gyorsítótárat ki kell öblíteni ahhoz, hogy azt az aktuális lemezről olvassa. Az optikai meghajtók (és más cserélhető adathordozók, mint például a flash-meghajtók és a memóriakártyák) esetében a meghajtó egyszerű kiadása elegendő a gyorsítótár kiöblítéséhez, de a merevlemezek esetében ez nem olyan egyszerű (bár általában ez nem számít, mert ez nem fontos, mert a az új másolat a tesztelni kívánt).


    Van valami, amit hozzá kell adni a magyarázathoz? Kikapcsolja a megjegyzéseket. Szeretne további válaszokat olvasni más tech-savvy Stack Exchange felhasználóktól? Nézze meg a teljes beszélgetés szálát itt.