Porównywanie dwóch zrzutów eMMC/SPI: sumy kontrolne i różnice
Zrzut jest przydatny tylko wtedy, gdy jest wierną kopią. Dwa odczyty tego samego układu powinny zgadzać się co do bitu; jeśli nie, coś jest nie tak ze stykami, zasilaniem lub czytnikiem. Sumy kontrolne i porównanie bajtów pokażą, co.
Część cyklu: Przewodnik po firmware i zrzutach.
Kiedy trzeba porównywać
- Zaraz po odczycie układu: kopia 1 z kopią 2.
- Przed naprawą i po niej: co telewizor zmienił we własnej pamięci?
- Sprawny egzemplarz z uszkodzonym o tej samej płycie.
- Po zapisie: odczytaj z powrotem i porównaj z zapisanym plikiem.
Krok po kroku
- Odczytaj układ dwa razy, niczego nie ruszając między odczytami. Opis podstawowego przebiegu znajdziesz w odczycie zrzutu eMMC i w wyprowadzeniach SPI flash SOIC8.
- Sprawdź rozmiary plików. Muszą być identyczne. Inny rozmiar oznacza, że odczyt został przerwany lub odczytano niewłaściwy obszar.
- Oblicz sumę kontrolną każdego pliku. CRC32 jest szybka i dobra do wykrywania przypadkowych błędów; MD5, SHA-1 i SHA-256 lepiej nadają się do zapisania wzorca. Równe sumy oznaczają identyczne pliki.
- Jeśli sumy się różnią, uruchom porównanie bajt po bajcie, aby dostać listę różniących się zakresów (offset i długość).
- Zinterpretuj wzór różnic, usuń przyczynę i odczytaj ponownie.
Czytanie różnic
| Wzór | Prawdopodobne znaczenie |
|---|---|
| Kilka rozproszonych pojedynczych bajtów lub małych bloków, inne przy każdym odczycie | Niestabilny styk lub graniczne zasilanie; popraw przewody i skróć je |
| Duży obszar 0x00 lub 0xFF w jednej z kopii | Odczyt nie powiódł się lub zatrzymał; sprawdź czytnik i zasilanie |
| Te same nieliczne obszary zawsze różnią się między dwoma telewizorami | Dane specyficzne dla egzemplarza (numery seryjne, MAC, kalibracja) lub logi; to normalne |
| Różnice tylko na końcu | Rozmiary się różnią; część wspólna jest zgodna, a końcówka jest zgłaszana osobno |
Jeśli telewizor pracuje, gdy odczytujesz eMMC w układzie, jego własne firmware może zapisywać do układu w trakcie odczytu, więc dwa poprawne odczyty mogą się różnić. Czytaj przy niedziałającym systemie głównym i nigdy nie zakładaj, że różnica w obszarze logów oznacza zły odczyt.
Typowe błędy
- Porównywanie zrzutu z pakietem firmware w oczekiwaniu na zgodność. To dwie różne rzeczy.
- Zaufanie jednemu odczytowi. Pojedynczy odczyt może ukryć zły styk, który ujawni się dopiero przy drugim.
- Porównywanie po „poprawieniu” zrzutu ręcznie. Najpierw policz sumę kontrolną oryginału i zachowaj go.
- Pominięcie sprawdzenia rozmiaru.
Jak to wygląda w FW Tool
- „Informator → Narzędzia hex” oblicza CRC32, MD5, SHA-1 i SHA-256 w jednym przebiegu przez plik, z paskiem postępu i anulowaniem dla dużych zrzutów.
- Funkcja porównania działa bajt po bajcie, strumieniowo, i zwraca liczbę różniących się bajtów oraz listę zakresów (offset, długość); lista jest ograniczona, a program informuje, gdy została skrócona. Jeśli rozmiary się różnią, porównywana jest część wspólna, a końcówka jest liczona osobno.
- W tej samej zakładce można szukać wzorca szesnastkowego lub ciągu tekstowego (ASCII i UTF-16) oraz wyświetlić klasyczny widok hex z offsetami i ASCII.
- W zakładce „Zrzut eMMC” zapis do zrzutu jest domyślnie wyłączony i włącza się go polem wyboru; zrób kopię i sprawdź jej sumę kontrolną, zanim go włączysz. Zobacz wszystkie funkcje.
Gdy kopia jest zweryfikowana, możesz ją zbadać tak, jak opisano w artykule budowa pakietu firmware z USB.
FAQ
Czy CRC32 wystarczy?
Do wychwycenia złego odczytu tak. Do długoterminowego zapisu wzorca zachowaj dodatkowo silniejszą sumę kontrolną.
Dwa dobre odczyty różnią się w kilku miejscach. Czy zrzut jest zły?
Niekoniecznie. Spójrz, gdzie: logi, liczniki i znaczniki czasu zmieniają się same. Powtórz odczyt i sprawdź, czy różnią się te same zakresy.
Czy mogę porównać folder eMMC z obrazami partycji?
Policz sumy i porównuj plik po pliku. Partycje, które się zgadzają, można odhaczać pojedynczo.
Prowadzenie dokumentacji
Dla każdego urządzenia zapisz oznaczenie układu, rozmiar zrzutu, sumę kontrolną i datę. Przechowuj oryginalny zrzut tylko do odczytu, a pracuj wyłącznie na kopiach. Gdy później trafi do Ciebie ten sam model, suma kontrolna pozwoli od razu sprawdzić, czy otrzymany zrzut jest identyczny z Twoim, bez jego otwierania. Jeśli serwisujesz wiele telewizorów jednego modelu, zbiór zweryfikowanych zrzutów staje się biblioteką wzorców do usterek, w których podejrzana jest zawartość pamięci, a nie sprzęt.
Drugie zastosowanie porównania to sytuacja po próbie naprawy. Odczytaj układ, zmień jedną rzecz, odczytaj ponownie i porównaj: lista zakresów pokaże dokładnie, które obszary telewizor przepisał. To prosty sposób, by dowiedzieć się, które partycje przechowują ustawienia, a które system, i zdecydować, co można bezpiecznie przywrócić z kopii zapasowej.
Na koniec pamiętaj, że zgodna suma kontrolna dowodzi tylko, że dwa pliki są takie same, a nie że zawartość jest dobra. Dwa identyczne odczyty układu z uszkodzoną komórką albo odczyty przez stale wadliwy styk zgodzą się ze sobą i mimo to będą błędne. Jeśli to możliwe, potwierdź zrzut, sprawdzając, czy tablica partycji da się odczytać i czy systemy plików się otwierają, jak opisano w artykule o zrzucie eMMC.