TRIM za napredne korisnike

U Computer! Total edition 4/2010 testirali smo pet SSD-ova s ​​podrškom za TRIM. Radi jednostavnosti pretpostavili smo mjesta u testu kao mjesto na kojem SSD može pohraniti podatke. Za to se zapravo koriste takozvane "stranice" i "blokovi". U ovom ćemo članku pobliže pogledati kako funkcioniraju stranice, blokovi i odnos s TRIM-om.

TRIM je naredba koja osigurava da SSD održava optimalne performanse upisa. Rad TRIM-a stvarno se može razumjeti samo ako znate strukturu SSD-a. SSD podatke pohranjuje u 'stranice' koje su grupirane u 'blok'. Da biste razumjeli ove koncepte, prvo biste trebali razmotriti sastav višerazinskih ćelijskih (MLC) SSD-ova kako je testirano u Computer! Total 4/2010. MLC SSD sastoji se od milijardi memorijskih ćelija, od kojih svaka može pohraniti nekoliko bitova. Uređena zbirka tih ćelija naziva se stranica i najmanja je jedinica za pohranu ili čitanje datoteke u SSD. Stranica obično ima veličinu od 4 KB. Dakle, ako spremite datoteku od 1 KB, ova će datoteka zauzeti 4 KB na SSD-u.

Blokovi

Blok je važna jedinica za SSD, jer je najmanja zbirka 'stranica' koju SSD mora pročitati kako bi izbrisao podatke. Blok se sastoji od 128 ovih stranica i ima veličinu od 512 KB. Sada je slučaj da SSD radi kao x broj memorijskih modula u RAID polju. To znači da je datoteka raširena kroz više memorijskih modula radi maksimalne brzine čitanja. Windows 'razgovara' sa SSD-om putem logičkog adresiranja blokova (LBA) i prati koji se blokovi koriste, a koji su dostupni. Budući da SSD radi sa stranicama, SSD kontroler mora pretvoriti LBA naredbe. Windows naredba za prepisivanje datoteke SSD-om se (ako je moguće) prevodi u zapisivanje na praznu stranicu. Ako nema praznih stranica, stranice prvo moraju biti prazne.

Kašnjenje u pisanju

Problem se javlja kada nema dovoljno praznih stranica za spremanje datoteke kada je prema Windows indeksu dostupno više nego dovoljno prostora. Napokon, datoteka se zapravo nikada ne briše kad se da naredba. To se događa samo kada prostor koji zauzima dotična datoteka prepišu novi podaci. Problem je s tim što SSD ne može izravno prepisivati ​​stranice koje sadrže dijelove datoteka koje se više ne koriste. SSD prvo mora pročitati blokove i smjestiti ih u vlastitu predmemoriju, jer se tamo podaci mogu samo izbrisati. U predmemoriji se odgovarajuće stranice prazne, a zatim se čitav blok s praznim stranicama vraća na SSD,nakon čega su ove stranice dostupne za nove podatke. To usporava postupak pisanja tri ili više puta.

TRIM

Životni spas za ove situacije je TRIM. Ovo je naredba koju Window 7 šalje SSD-u tijekom brisanja. Ova naredba obavještava kontroler SSD-a koje se stranice zapravo mogu izbrisati i stavlja SSD u rad čitanjem blokova i pražnjenjem stranica koje su ispunjene datotekama (i koje Windows može prebrisati). Na taj način, SSD ostaje u optimalnom stanju imajući na raspolaganju dovoljno praznih stranica, a dodjela pisanja uvijek se može izvršiti optimalno. Korak po korak prikazujemo vam što se događa kada SSD zapisuje i briše datoteke te kako TRIM osigurava da uvijek ima dovoljno slobodnih stranica.

1. Prazan SSD

Zamislite da imamo SSD s kapacitetom pohrane od točno 1 bloka. Prazan blok od 512 KB na SSD-u sastoji se od 128 praznih stranica od 4 KB.

2. Napišite datoteku

Želimo napisati datoteku od 12 KB koja će ispuniti 3 stranice od 4 KB (plava).

3. Napišite drugu datoteku

Zatim želimo napisati još jednu datoteku od 8 KB (ljubičastu). Ukupno smo stavili u upotrebu 20 KB. Dakle, još uvijek imamo 512 KB - 20 KB = 492 KB besplatno ili 123 besplatne stranice.

4. Izbriši datoteku

Sada ćemo izbrisati datoteku od 8 KB (ljubičasta). Prema sustavu Windows, naš SSD i dalje ima na raspolaganju 512 KB - 12 KB = 500 KB. Međutim, naš SSD i dalje registrira 123 prazne stranice i 2 stranice s podacima koji se mogu izbrisati.

5. Spremi datoteku

Sada pišemo 4 KB (zeleno). Dvije stranice koje sadrže informacije s „podacima koje treba izbrisati“ preskače SSD. Prvo se popune prazne stranice.

6. TRIM na poslu

Uz podršku za TRIM, Windows 7 šalje naredbu TRIM zajedno s akcijom brisanja. Kao rezultat toga, kontroler SSD-a zna da se ti podaci stvarno mogu izbrisati. Kada SSD neko vrijeme nema što raditi, SSD će premjestiti cijeli blok od 512 KB, čiji je dio TRIM naredbom TRIM odredio za brisanje, u predmemoriju. Ovdje će se datoteka (ljubičasta) izbrisana naredbom TRIM zapravo izbrisati.

7. Stranice se brišu

Sada se mogu isprazniti 2 stranice i vratiti cijeli blok. Možete zamisliti kada ćete izbrisati datoteku od 10 MB, moramo izbrisati ukupno 2560 stranica. Ako se i oni zatim podijele u različite blokove, tada treba pročitati puno podataka. Iako blok sadrži samo 4 KB datoteke, za brisanje dijela od 4 KB mora se pročitati 512 KB. TRIM osigurava da se to dogodi kada ne koristite SSD.

8. Ponovno oslobodite prostor

Sada su 2 stranice spremne za ponovno pisanje.

9. Spremite datoteku na slobodan prostor

Ako je datoteka od 12 KB sada napisana, dovoljno je stranica za pisanje datoteke (narančasta).