pondelok 31. marca 2008

UBIFS, Flash disky, ich kapacita a prepisovanie

Flash disky sú praktické záznamové médium na prenos dát.

NAND Flash pamäť má tri operácie - read, write a erase, normálne pamäte alebo povedzme aj disky majú operácie dve - read a write. NAND Flash je rozdelená do blokov a mazanie sa prevádza pre celý blok. Mazanie je nutné, pretože zápis sa môže robiť len na vyčistený blok - mazaním sa celý blok nastaví na 1 a pri zápise sa niektoré bity nastavia na 0. Prechod medzi stavom 0 a 1 je možný len mazaním celého bloku.

Takýchto mazaní znesie NAND pamäť 104-105 (10000-100000), potom jednoducho odíde a filesystém musí takýto blok označiť ako nepoužiteľný. Preto postupne kapacita Flash pamäte klesá, až raz odíde blok ktorý filesystém potrebuje a máme možnosť kúpiť si novú flash pamäť. Vo svetle týchto informácií sa musí zdá funkcia Windows Vista ReadyBoost (swapovanie na USB kľúč) pomerne spoľahlivou procedúrou na jeho rýchle zničenie.

Už pri výrobe majú NAND chipy do 2% (!) defektných záznamových pozícií a časom táto chybovosť narastá.

UBIFS je filesystém navrhnutý špeciálne pre NAND Flash pamäte. Snaží sa rozumne (=rovnomerne) distribuovať mazané bloky, spravovať chybné bloky a zapisovať na flash čo najmenej.

Vyvinula ho Nokia v spoluprácia s Univerzitou v Szegede (2) a práve sa stal súčasťou hlavnej vetvy Jadra.