Odpowiedź Davida Schwartza obejmuje wszystkie „praktyczne cele”. Ta odpowiedź skupi się na „niepraktycznych celach”. Istnieje teoretyczny wyjątek od zasady nieograniczonej liczby odczytów, ale ma proste rozwiązanie.
Istnieje limit dożywotniego zapisu w pamięci flash, ale wpływa to również na czytanie. Jedną z jego słabości jest tak zwane „błędy zakłóceń odczytu” 1. Odczytywanie pamięci flash nieznacznie obniża otaczające przechowywane wartości, co może ostatecznie prowadzić do błędów.
Błędy są unikane przez kontroler śledzący liczbę odczytów i kopiowanie bloków, zanim degradacja stanie się problemem. Po prostu skopiowanie bloku w inne miejsce, a następnie usunięcie oryginalnego bloku resetuje wszystko, a oryginalny blok może być ponownie użyty. Źródło
Ogólna zasada dla MLC to 100 000 odczytów; w przypadku SLC jest to 1 000 000 odczytów 2 (Multi-Level Cell lub MLC, a Single-Level Cell lub SLC, to dwa rodzaje pamięci flash ). Zatem przy „normalnym” użytkowaniu progi te mogą nawet nie stanowić problemu, z którym kontroler musi sobie poradzić.
Co prowadzi nas do niepraktycznego scenariusza. Załóżmy, że używasz pamięci flash do celów takich jak w tym pytaniu (pisz raz, a potem czytaj masowo przez długi czas). Tak długo, jak istnieje co najmniej jeden wolny blok, kontroler może odtwarzać muzyczne krzesła z danymi. Jeśli jednak wypełnisz każdy ostatni blok danymi, możesz w końcu dojść do punktu, w którym kontroler nie będzie w stanie uniknąć błędów zakłóceń odczytu.
W tak daleko posuniętym przypadku kontroler prawdopodobnie uniknąłby uszkodzenia poprzez zamrożenie karty lub dysku flash, więc nie byłoby opłacalnego sposobu na odczytanie go. Przy poziomach użytkowania opisanych w tym pytaniu może to nastąpić w ciągu kilku miesięcy lub lat, w zależności od rodzaju pamięci flash.
Oczywiście można to załatwić, mając po prostu dysk zapasowy, biorąc pod uwagę, jak tanie są i że nie zapisałeś żadnych nowych danych. Lub możesz zapewnić, że pozostawisz przynajmniej niewielką ilość wolnego miejsca.
Uwaga: oba poniższe źródła są bezpośrednimi linkami do pobrania; plik PDF zostanie pobrany natychmiast po jego kliknięciu.
1 http://users.ece.cmu.edu/~omutlu/pub/flash-read-disturb-errors_dsn15.pdf
2 http://www.dslreports.com/r0/download/1507743~59e7b9dda2c0e0a0f7ff119a7611c641/flash_mem_summit_jcooke_inconvenient_truths_nand.pdf