Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Peter789

    senior tag

    válasz McSzaby #7124 üzenetére

    Nem mindegy hogy milyen médiáról beszélünk...

    Ha egy pendrive-ról vagy SD/egyéb memóriakártyáról, akkor abban elvileg a beépített vezérlő felel a wear-leveling funkcióért - egyenletesen terheli a szektorokat, hiába törölsz írsz törölsz írsz "ugyanoda" valamit, az a gyakorlatban mindig elcsúsztatott szektorba kerül. A hibás szektorokat egy darabig transzparens módon pótolja egy erre fenntartott %-ból, de ha ezek elfogytak akkor már a fájlrendszer szintjén is megjelennek a bad sector bejegyzések

    Ha a NAND / flash közvetlenül a procira van kötve, akkor a linux kernelben az MTD layer felel az alacsonyszintű kapcsolatért. Teljesen normális jelenség ha egy nagyobb flash-ben már gyárilag is van pár hibás szektor, ezek előre be vannak jelölve egy flag-el, ha menet közben újabb hibás szektorokat ismer fel a rendszer akkor szintén megjelöli. A wear leveling viszont a fájlrendszer feladata - ezért nem ajánlott hagyományos fájlrendszereket tenni az ilyen eszközökre mint FAT, EXT*, hanem ezek helyett vannak pl a yaffs, jffs2 megoldások amelyek biztosítják az egyenletes írást szoftverből

    Természetesen ha elfogynak a használható szektorok akkor marad a kuka, de azért általában nem egyszerre dőlnek be így egy jódarabig használható marad. Kritikus pont lehet az első szektor - sok proci azzal kezd hogy innen tölti be a bootloader-t. Az, hogy hibás flag-el rendelkező első szektor esetén képes e átugrani és megkeresni a sorban első nem hibásat az már hardverfüggő lehet, de a bootloader-t általában nagyon ritkán bántja az ember és read-only, kicsi az esélye hogy "elfogyjon" pont az a szektor...

Új hozzászólás Aktív témák