Een nadeel van de SSD, namelijk dat de cellen maar een beperkt aantal keren geschreven kunnen worden wordt automatisch opgevangen door de manier van werken van de SSD zelf. De directories (en andere bestanden die vaak gewijzigd worden) worden automatisch op een andere plaats geschreven. |
-
Gebrekkige communicatie
Een ander probleem gekoppeld aan de clustersize rn bloksize: vaak is de bloksize (de afmeting van een fysische blok op de schijf) gelijk aan de clustersize (de logische blokgrootte van het operating system). Dit is echter niet voldoende, want de schijf telt zijn blokken vanaf het begin van de schijf, terwijl een operating system zijn clusters telt vanaf het begin van de partitie. Enkel als de partitie uitgelijnd is speelt het voordeel van de SSD ten volle. |
Oplossingen
Hardware-oplossingenGarbage collectionDe firmware van de SSD kan automatisch blokken beginnen te wissen (en de eventuele gegevens herschrijven) van zodra er bijna geen vrije pagina's meer zijn. Dit heet garbage collection (een benaming dat afstamt van het DOS en Basic-tijdperk). Dit is ideaal als het systeem vooral in burst-mode werkt (hoge belasting gedurende een korte tijd, en dan een pauze). De firmware gebruikt de pauze om opnieuw ruimte vrij te maken. Om de solid state schijf langer te laten meegaan wordt niet noodzakelijk de blok met de meeste ongeldige pagina's gewist, maar de blok die het minst vaak geschreven werd.
Write bufferOm de bottleneck van het schrijven te beperken kan de SSD met een schrijf-buffer uitgerust worden: de bestanden worden tijdelijk in de buffer opgeslagen. Dit maakt de SSD veel complexer: de SSD moet namelijk ook bijhouden dat een bestand in de cache zit, en niet in het statisch geheugen. Bij stroomuitval is de inhoud van de schrijf-buffer verloren, waardoor de filestruktuur in een ongedefinieerde status terechtkomt, de nachtmerrie van iedere systeembeheerder. De beste SSD gebruiken een high capacity back up elko zodat de wachtende schrijf-opdrachten autonoom afgewerkt kunnen worden terwijl de computer al stroomloos is. Kostprijs voor een dergelijke server-grade SSD: ongeveer 5.000 USD. Deze SSD zijn uitgevoerd in 3.5 inchmaat (zoals de klassieke HDD), terwijl de meeste SSD in 2.5 inchmaat uitgevoerd zijn.
Data-compressie en conditioneel vervangen Aangezien het schrijven zo traag is, loont het soms de moeite om de gegevens te comprimeren voordat ze opgeslagen worden. Dit comprimeren gebeurt volledig transparant voor de gebruiker. Een eigenschap van de gebruikte compressietechnieken is dat de compressie meer tijd vergt dan het decomprimeren: er is dus nauwelijks tijdsverlies bij leesopdrachten. Het comprimeren zorgt er ook voor dat er minder schrijfopdrachten nodig zijn. De opslagcapaciteit van de schijf zal echter niet verhogen; de capaciteit die niet gebruikt wordt dankzij compressie wordt gebruikt als overprovisionning.Als een bestand wordt geschreven kan het in feite een wijziging van een bestand betreffen (rewrite). Bij een rewrite is soms slechts een deel van het bestand effektief veranderd (bijvoorbeeld kleine wijzigingen aanbrengen aan brieven). Het operating system zal echter het volledig bestand herschrijven (bij een klassieke harde schijf kan dit geen kwaad). “Herschrijven” is echter niet mogelijk bij SSD's. Bij bepaalde SSD eenheden wordt gecontroleerd of de te schrijven blok niet reeds bestaat op de schijf. Als dat het geval is, dan wordt er geen tweede (identieke) blok geschreven, maar wordt er gewoon verwezen naar het eerste blok.
Software-oplossingenBeide filesystemen werken niet met directories die de informatie over de bestanden bevatten. Deze informatie is opgeslagen op de SSD in de vorm van een journaal (journaling file system). Na iedere transactie wordt een stukje in het journaal geschreven. Het journaal zit her en der over de SSD verspreid (het wordt geschreven nadat een bestand geschreven wordt) en vormt een linked list. Voor een harde schijf is dat een verkeerde manier van doen (een bestand lezen dat uit vele fragmenten bestaat is zeer traag wegens de vele kopbewegingen), maar voor een SSD maakt random access niets uit. De directories zelf worden enkel in RAM (werkgeheugen van de PC) bewaard en gaan verloren als de computer uitgeschakeld wordt. Bij de opstart wordt het journaal ingelezen en de directories worden opnieuw in RAM gecreerd. Dit duurt een paar seconden, maar nadien is de access supersnel, want alle informatie over de bestanden zit in het geheugen.
TRIM commandoWindows zeven en de Linux kernel (vanaf versie 2.6) omdersteunen de TRIM opdracht. Er bestaan echter utilities (vaak van de leverancier van de SSD) die op regelmatige basis de inhoud van de schijf analyseren (partities, directories en FAT) en automatisch TRIM opdrachten uitsturen om de niet-gebruikte blokken vrij te geven.
|
Publicités - Reklame