Viz jarda, nenavysis ani po pid, flashdisky vubec wearleveling neresej. Musel by sis to resit sam v ramci FS. A k tomu bys musel jeste navic vedet, jak je fyzicky ta pamet organizovana, coz v 99,99% vedet nebudes.
To si myslím, že není úplně pravda. I flashky řeší wearleveling, jako SSD, jen jinak, zpravidla jinou strategií a důležitým hlediskem je v tomto případě rychlost kvůli celkové pomalosti a jednoduchosti řadiče. Proto se třeba používá dynamický wear leveling. Už z principu, pokud měním sektor, musím ho přesunout do čerstvě smazaného bloku a původní místo označit na smazání. Postupně se tak zaplní všechny prázdné bloky, a když začnou docházet, začne se řadič ohlížet o vhodném kandidátovi na smazání. Ideálně pokud najde takový blok, kde jsou všechny sektory označené na smazání. Pak nemá žádnou práci, prostě blok smaže a zařadí do seznamu prázdných. Pokud nenajde takový, pak jsou různé strategie, právě u dynamického wear levelingu se upřednostňují bloky, kde je málo obsazených sektorů, aby se nemuselo tolik dat relokovat, což podle mě zdržuje. Proto má overprovisioning (vyhrazení nepoužívané parition) smysl i flashek, hlavne proto, že neznám mnoho flashek, které by podporovaly TRIM (a mám pocit, že kernel linuxu TRIM na flasky ani neimplementuje).
Nevýhodou dynamického wearlevelingu je, že se omezuje jen na sektory, které se mění, zatímco statický wearleveling u SSD rozloží zátěž po celém disku, dynamický to rozkládá mezi měněné sektory a zbytkem volného místa. Další důvod pro overprovisioning na flashce.