Orientujecie się może jak wydajne są pamięci flash w smartfonach? Chodzi oczywiście o ilość cykli zapisu. Ile razy taką pojedynczą komórkę można zapisać zanim ona padnie? Zdarzyło się komuś z was zajechać taki flash w telefonie?
![Big Grin Big Grin](http://forum.jdtech.pl/images/smilies/biggrin.gif)
prawdopodobnie nie zdarzyło
![Tongue Tongue](http://forum.jdtech.pl/images/smilies/tongue.gif)
(ale 100% pewności nie mam)
za to mam inną opowiastkę - właśnie padła mi karta micro-SD podmontowana jako "rozszerzenie pamięci wewnętrznej" i to po niecałym roku używania (a nie eksploatowałem tego smartfona "ponad miarę")
to był android 6.0 i taka możliwość jest chyba dopiero od tej wersji systemu, jest również w 7.0 bo z okazji awarii zaktualizowałem sobie system, przy okazji takie spostrzeżenie - w 6.0 maiłem średnio zajęte 2GB RAMu a w 7.0 jest to zaledwie 1,5GB więc chyba są jakieś optymalizacje
właśnie dzwonił kumpel z roboty, że ma problemy z tabletem (ale o jego podłej jakości i parametrach nie mam siły pisać - Manta MID-801) ale on jako użytkownik ma "ten palec co psuje wszystko"
![Big Grin Big Grin](http://forum.jdtech.pl/images/smilies/biggrin.gif)
jakkolwiek to co mówił mogłoby wskazywać na uszkodzenie flash
PS
egzemplarze eksperymentalne leżą w szufladzie i czekają aż uda mi się skompletować przesyłkę
(możliwe, że jeden z nich wyzionął ducha wskutek awarii flash, bo przyczyny nie znam, ale nigdy też nie miałem weny, aby z nim walczyć)
Mi w sumie to jeszcze nigdy karta SD nie padła. Padł mi pendrive raz, choć w sumie to tylko komórki na pierwszych 5 GiB zaczęły umierać ale to przez ciągłe wgrywanie systemów live.
![Big Grin Big Grin](http://forum.jdtech.pl/images/smilies/biggrin.gif)
Pena używam dalej ale mam okrojone te pierwsze 5 GiB.
A co do pamięci flash w telefonie -- to ile? 100, 1000?
testów nigdy nie robiłem, telefon to za droga zabawka na takie zabawy
ale na 100% zależy jakie zastosowano kości - myślę, że jest to liczba rzędu wielkości tysiąca (lub więcej, być może znacznie)
dla porównania kości stosowane w ssd
SLC mają zwykle gwarantowane jakieś 100 000 zapisów
MLC pierwszej generacji 3 000 a ostatniej 100 000
TLC pierwszej generacji 4 000
kart micro-SD padło mi już co najmniej kilka (w tym wszystkie Sandiski te przynajmniej po gwarancji, i właśnie drugi raz Samsung - tym razem po roku umiarkowanego używania, poprzedni egzemplarz wytrzymał zaledwie pół roku - maksymalnie kilkanaście zapisów)
co nigdy wcześniej nie zdarzało mi się w przypadku innych nośników elektronicznych, a używałem CF, "dużych" SD, MMC, memory-sticków różnej maści (MS - standart Sony), czy xD (Olympus/Fujifilm)
no sorry wykluczyłem z tej stawki pendrive, ale przechodzą przez moje ręce ich setki i niemal każdy z nich używam tylko 2 razy (test + faktyczny zapis), a mimo to trafiałem na wadliwe egzemplarze (jak zamówiono mi jakieś noname, w przypadku Sandiska mam jak dotąd zerowy odsetek błędów przy drugim zapisie), natomiast wśród tego co używam prywatnie tylko raz padł jakiś noname - ma losowe błędu zapisu lub odczytu co raczej wskazuje na problem z kontrolerem a nie z samą kostką flash
(załączniki do offtopicu
![Tongue Tongue](http://forum.jdtech.pl/images/smilies/tongue.gif)
- zrobiłem kiedyś fotki przy przygotowywaniu partii pendrive - 1 pudełko to bodajże 50 szt.)
Współczesne pamięci flash wytrzymują od 10,000 cykli wzwyż.
Zakładając że urządzenie nie ma dodatkowych zabezpieczeń (zapasowe sektory/równomierne obciążanie sektorów) i nadpisujesz dane pięć razy dziennie (10000/(365*5)= 5,48) to problemy zaczną się po pięciu latach.
Pod warunkiem że wcześniej nie zużyje się bateria, nie rozbije się ekran, nie nawali inny podzespół etc. :)
No mam nadzieje, że dadzą radę wytrzymać te 10K, bo przy moich testach, to z 300 razy już niektóre obszary zdążyłem zapisać w przeciągu paru dni.
![Big Grin Big Grin](http://forum.jdtech.pl/images/smilies/biggrin.gif)
Ale raczej już nie będę męczył tych swoich telefonów.
Ważne jest jeszcze, czy dana pamięć jest objęta systemem równomiernego obciążenia zapisem - bo jak nie, to wtedy faktycznie jest problem. W smartfonach współczesnych zawsze coś takiego jest.
W kartach SD już jest nieco inaczej i tutaj często nie ma takiego wynalazku i stąd możliwe jest wypalenie niektórych stron.
Stron - bo to kolejna uwaga - pamięci flash są kasowane stronami całymi, a nie pojedynczymi sektorami czy komórkami.
A jak się zapisuje obrazy partycji bezpośrednio na urządzenie blokowe, to to równoważenie zużycia komórek działa wtedy?
wątpię
jednoznacznie napisałbym: "nie", ale tak naprawdę nie drążyłem specyfikacji, więc nie wiem tego na 100%
poczytaj informacje dotyczące kontrolera flash w tym urządzeniu, które tak męczysz
![Tongue Tongue](http://forum.jdtech.pl/images/smilies/tongue.gif)
morfik napisał(a):A jak się zapisuje obrazy partycji bezpośrednio na urządzenie blokowe, to to równoważenie zużycia komórek działa wtedy?
A jakie dokładnie urządzenie i sposób dostępu?
![Smile Smile](http://forum.jdtech.pl/images/smilies/smile.gif)
Jak masz dostęp z pominięciem kontrolera flash, to nie działa (np. karty CF starsze i jakieś stare SD oraz w telefonach jest czasem taka opcja). A jak leci przez kontroler, to się nie przejmujesz. Flash ma około 10-20% dodatkowej powierzchni roboczej i sam sobie szufluje dane. Programowo na poziomie systemu operacyjnego widać tylko dostęp za pomocą polecenia trim (polecam lekturę co robi trim dla ssd), a wszystko robi i tak kontroler zaszyty w samym dysku/pamięci.
Natomiast dawno temu faktycznie były sterowniki robiące to.
(05-05-2017 13:57)jakubd napisał(a): [ -> ]A jakie dokładnie urządzenie i sposób dostępu? ![Smile Smile](http://forum.jdtech.pl/images/smilies/smile.gif)
No zapis via dd na pliki w /dev/block/
![Big Grin Big Grin](http://forum.jdtech.pl/images/smilies/biggrin.gif)
Nie podałeś urządzenia (telefon/komputer a z drugiej strony SD, czy może chip wlutowany na płycie głównej itd.) ani sterownika jakie używasz - było tak czasem, że były dwa, jeden dawał dostęp przed, a drugi za kontrolerem. Do wyboru do koloru
![Smile Smile](http://forum.jdtech.pl/images/smilies/smile.gif)
Współczesny - na pewno ma kontroler flash przed samymi koścmi, który realizuje "wear leveling". Dostępu niskopoziomowego poza kontroler pewnie nie ma wcale.
Czyli jak zapisywałem sobie obraz na to urządzenie blokowe odpowiedzialne za partycję /recovery/ , to komórki poza granicą tej partycji były zapisywane, więc w sumie nie przeorałem jednego obszaru wiele razy. Dobrze to rozumiem?
Jeszcze inaczej - kontrolera flash nie interesuje struktura logiczna danych zapisywanych - partycje i wszystko inne jest na interfejsie od strony OSa. Od strony flash jest matryca bloków po kilkadziesiąt sektorów, każdy z bloków ma licznik zużycia - i tam są zapisywane dane tak, aby liczniki każdego bloku rosły mniej więcej równomiernie.
Czyli: jeżeli masz jeden sektor logiczny, w który zapisujesz 512 bajtów w kółko raz za razem, to i tak zapis ten jest rozkładany tak, aby kolejne bloki fizyczne były kasowane i zapisywane nowymi danymi.
Bez kontrolera i jego bazy danych nawet nie znajdziesz tych danych na właściwej kości flash.
Korzystając z okazji to jeszcze takie pytanie mam.
W każdym z moich smartfonów zapis na kartę SD się odbywał w dziwny sposób. Generalnie kartę SD można zamontować via protokół MTP. Wtedy w głównym katalogu ma się dwa podkatalogi: pamięć telefonu i karta SD. Jak teraz zapisuje pliki w folderze "karta SD", to te pliki niby są zapisywane na kartę SD (system je widzi) ale jak w telefonie sprawdzam, to ich tam nie ma. Są zaś w pamięci telefonu. Czy to jest normalne zjawisko, czy coś u mnie w systemie czy telefonie MTP nie działa jak należy?
Druga sprawa, to prawdopodobnie przez ten powyższy ficzer, system widzi na takiej karcie mniej wolnego miejsca niż faktycznie na niej jest (karta jest sprawna, 32G). Nie ma problemu z zapisywaniem karty z poziomu komputera, nawet do full. Natomiast smartfon już nie chce zapisać całej karty i wyrzuca komunikat o braku miejsca, gdzie wolnych jest jeszcze kilka/kilkanaście GiB.
Ktoś z was spotkał się z czymś takim?
U mnie w SGN3 działa bez problemu MTP i osobno widzę kartę SD i telefon i wszystko trafia gdzie trzeba. Ale rzadko tak cokolwiek przesyłam - od czasu likwidacji montowania SD bezpośrednio przestałem z tego korzystać.