Adattárolóként nem is lehetne jobbat elképzelni! - ez a mondat tűnt fel az egyik népszerű SSD-gyártó valamely friss típusának terméklapján a felhasználói vélemények között. Neked, leendő vásárlóként ez a közlés segítség lehet a döntés során, a vállalat marketingcsapata pedig egy újabb pipát tehet a belsős jelentésekre.
Milyen ideális világot élünk, igaz? Szépen elrendeződtek a PC-s adattárolási gondok: a merevlemezek megmaradtak nagy kapacitású, még mindig igen jó Forint/Gigabyte arányú választási lehetőségnek, a gyorsaságra vágyók pedig SSD-re váltottak a minél nagyobb adatátviteli sebesség érdekében. Az ideális asztali és notebookos konfigurációknál ma már az operációs rendszert és programokat a flashmemória-alapú tárhelyre dedikálják, míg a leginkább hosszú távú tárolásra előjegyzett fájlok esetében a HDD-k élveznek előnyt.
Kikezdhetetlen egyensúly, ami egy PC-n belül biztosít gyors működést és gazdaságos, megbízható adattárolást. Olykor talán el is felejted, hogy egyébként a pótolhatatlan adataidra egy hagyományos merevlemez vigyáz, az OS és a programok viszont SSD-n száguldanak. Percek helyett másodpercek alatt nyílnak és záródnak programok, pattogós a működés, csak csettinteni kell, és indulnak a játékok.
A motorháztető alatt
Emögött azonban elképesztően komplex "munka" zajlik, nagyon egyszerűen leírva a helyzetet:
az SSD-meghajtód valójában az életéért küzd.
Egyrészt szuper lenne a gyári teljesítményt biztosítani a garanciaidőn belül, másrészt már tart ott a technológia, hogy az 5+ éves távlat se kottyanjon meg a kis memórialapkáknak. Nehéz elképzelni, hogy pontosan mitől is olyan roppant bonyolult, amit pár félvezető, egy vezérlő és egy gyorsítótár végez, ráadásul mindez egy buszjegynyi vagy hitelkártyányi nyomtatott áramkörön. Sehol egy mozgó alkatrész, mi romolhatna el? A rutinos SSD-felhasználók már tudják a választ: bármi, ami érzékeny akár csak egy leheletnyi feszültségingadozásra.
A magyarul szilárdtest-meghajtóknak nevezett adattárolókra forrasztott fekete vagy szürkés elemeken belül (ezek a Flash NAND chipek) tranzisztorok milliárdjai tanyáznak, melyek cellákba, lapokba és blokkokba tömörülnek. Gyártástechnológiától és a cellastruktúra felépítésétől függ, hogy ezek mekkora méretűek, ez számolható át adatmennyiségi mérőszámra. Iparági sztenderdnek mondható a 4 kB-os lapméret és a 256-512 kB-nyi blokknagyság, melyek vezetékezése és vezérlése erősen függ a memórialapka felhasználási céljától.
Egy átlagos NAND-flash alapú SSD-meghajtó esetében az olvasási és írási műveleteket gondolhatod a működés kritikus elemeinek, melyek sebességi mutatószámai kimagaslóak papíron, a valóságban azonban teljesen mást tapasztalhatsz. Az ok a memóriacellák működése, az adattárolás ugyanis meghatározott mértékű töltés mellett történik, az adatírás és -törlés bizonyos feszültségadással valósul meg. Ráadásul utóbbi esetben mindig egy teljes memóriablokkon zajlik le a művelet, mindegy, hogy például csak egy apró, 24 kB-os fájl törlődne az 512 kB méretű blokkban.
Fontos tényező, hogy ellentétben a merevlemezekkel, a mai SSD-k sosem írnak felül adatot az egyes lapokon, blokkokon belül, a törlésre kijelölt adatok esetén a teljes blokkon belüli memóriacella-mennyiség tisztán törölve lesz, majd az SSD-vezérlő újra felprogramozza az előbbi lap- és blokkterületet. A folyamatot a meghajtón elhelyezett dedikált DRAM-gyorsítótár (vagy a NAND-lapkákból kihasított terület) segíti, a vezérlő pedig az adott blokkok adattábláját már a módosításokkal frissítve tölti vissza a firmware-ben rögzített írási algoritmus alapján. Az adatok várhatóan új blokkba kerülnek, és a korábbi terület teljesen törlésre kerül, de ez nagyban függ az SSD-vezérlésétől és a memóriacellák használtsági fokától.
A TRIM tényleg segít?
A szabványosított parancs minden bizonnyal ismert már számodra, ennek meglehetősen kifinomult működése segíti megtartani az SSD-meghajtód sebességi paramétereit. A törlésre jelölt adatok szimpla felülírása egy lassú folyamat (értsd úgy, hogy egy memória-alapú meghajtó nanoszekundumjait alapul véve), a TRIM pedig pont abban segít, hogy a blokkok teljes újraprogramozása gyorsabban elvégezhető legyen. Igen ám, de így a memóriacellák használata növekszik, ami nem tesz jót az élettartamnak. Ez az egyszerű tényállás mind a mai napig érvényes, ám a TRIM-végrehajtása patikamérlegen mért (vagyis programozott) szekvencia, a teljes működés gyártónként és meghajtótípusonként eltérő, ilyen információkat a cégek nem osztanak meg a nagyvilággal.
Ma már az összes modern operációs rendszer támogatja az SSD-k TRIM-folyamatát. Kikapcsolható egyébként, de nem érdemes babrálni vele, és ezt nem azért mondjuk, mert kényelmes felhasználók vagyunk. A rendszerrel szoros kapcsolatban áll az SSD-vezérlője, ami mondhatni valós időben kapja az utasításokat az adatok írására, olvasására, mozgatására és törlésére vonatkozóan, illetve az érvényes és érvénytelen adatok megkülönböztetésére. Ez a vezérlőchip indítja el a hardver szintjén, a gyorsítótár bevonásával a memóriacellákon történő módosítást, miközben egyébként az ún. wear-leveling állapotra is figyel.
A memóriacellák elhasználódását optimalizáló metódus nem új dolog, viszont kiegészíti és tulajdonképpen "jóváhagyja" a TRIM használatát. Egy véget nem érő, villámgyors cellaellenőrzés folyik a háttérben, leginkább akkor, amikor épp üresjáratban van a meghajtó. Kiolvasás, újraprogramozás és törlés akkor, amikor nem is sejtenéd. A wear-leveling feladata, hogy a NAND flash lapkákon található memóriacellák azonos terhelést kapjanak és nagyjából azonos sebességgel "öregedjenek".
Kézi vezérlésre nincs szükség
Érdekes adalék a témához, hogy a Windows aktuális verziói megmutatnak valamennyit a TRIM-ből, bár egy átlagfelhasználót inkább csak összezavarhat a funkció. Ha jobb gombbal rákattintasz a Sajátgépben az SSD-meghajtód ikonjára, ott pedig a Tulajdonságokat választod, a felugró ablak Eszközök fülén találod meg a "Meghajtó optimalizálása és tördezettségmentesítése" opciót. Erre kattintva betölt a jól ismert programablak, amiben az SSD sora egy furcsa megnevezést tartalmaz. Az "újrafelszabadítás" maga a "re-trim" parancs, ami a TRIM-műveletek sorrendjét építi fel újra. Erre akkor van szükség, amikor túl sok TRIM-művelet áll sorban, ezeknek ugyanis van egy maximális száma az operációs rendszer oldaláról, így az újabb parancsok szimplán kieshetnek.
Az ablakon belül magad is indíthatsz "re-trimet", ám ahogy láthatod, ennek van egy alapértelmezetten beállított ütemezése, példánkban épp heti gyakorisággal. Rányomhatsz az optimalizálás gombra, de különösebb hatása nem lesz, kikapcsolását viszont nem javasoljuk. Sem így, sem pedig a teljes TRIM-funkciót illetően; szükséged van rá, hogy az SSD-d évekkel később is ugyanolyan szélvész gyors legyen, mint újkorában.