Microsoft FlashStore, memoria flash tra RAM e Hard disk

Microsoft FlashStore, memoria flash tra RAM e Hard disk

Una tecnologia sviluppata da Microsoft si ripromette di andare a migliorare sensibilmente le prestazioni di sistema grazie ad un utilizzo sensato della memoria flash

di pubblicata il , alle 12:23 nel canale Storage
Microsoft
 

Dei vantaggi che i dischi sviluppati con memoria flash sono in grado di garantire rispetto agli hard disk tradizionali si è parlato a più riprese. La maggiore velocità di trasferimento dati, sia in modo sequenziale sia in modo casuale, è uno dei principali punti a favore della tecnologia flash ma non solo.

La tecnologia flash rappresenta sicuramente uno dei punti cardine su cui il mondo IT si appoggerà in futuro, a patto che questa venga utilizzata correttamente e in modo intelligente. Ed è questa l'idea che sta dietro a FlashStore, una tecnologia Microsoft sviluppata per migliorare e sfruttare, al meglio, la memoria flash.

Uno dei principali problemi che affligge le memorie flash riguarda la possibilità di sovrascrivere i dati. Nella memoria flash, infatti, i dati per essere cancellati non possono essere presi singolarmente bensì a gruppi. Ecco allora che, per effettuare le operazioni di riscrittura, è necessario aggirare tale problema: l'intera cella dati verrà cancellata, ma la parte dei dati che non devono essere cancellati sarà posizionata su di un'altra parte del disco.

Si tratta certamente di una tecnica che funziona, ma che rappresenta comunque un aggirare il problema. FlashStore si presenta come una tecnologia che, consapevole di tale problema, prova ad utilizzare la memoria flash nel modo migliore.

La memoria NAND è 10 volte più costosa (prezzo per GB) di un hard disk tradizionale, ma 10 volte meno costosa della memoria RAM: Microsoft prova allora a posizionare la memoria flash proprio tra RAM e hard disk tradizionale, al fine di rendere il sistema più performante possibile.

Per riuscire in tale obbiettivo i ricercatori impegnati nel progetto hanno dovuto studiare una struttura dei dati che evitasse le scritture casuali slla memoria flash. Per prima cosa FlashStore prevede che la memoria flash venga utilizzata quale chache e sia posizionata esattamente tra RAM e hard disk: su tale spazio saranno posizionati i dati che vengono più richiesti dal sistema. FlashStore tiene traccia dei dati utilizzati in modo che, qualora determinati dati non venissero più utilizzati, possano essere ricollocati sul disco tradizionale.

FlashStore è inoltre disegnato per eliminare le scitture casuali: organizza infatti i dati in una struttura corretta, in modo che vengano distribuiti sulla memoria flash in modo non casuale. In questo modo sarebbe possibile eliminare la necessità del garbage collectori, prevenendo il problema di riscrittura di alcuni dati sulla memoria. FlashStore aggrega le piccole scrittura in un buffer di memoria e li scrive sulla memoria flash solo quando è certo di andare ad occupare l'intera cella memoria. Rendendo le scritture sulla memoria flash solo di tipo sequenziale FlashStore ripromette di utilizzare in modo corretto le unità NAND.

FlashStore si presenta inoltre come una tecnologia sviluppata per risultare particolarmente efficiente anche quando si parla di memoria RAM: l'impiego di una hash table sulla memoria RAM disegnata per salvare spazio, appoggiandosi alla memoria flash rappresenta un vantaggio diretto.

Secondo quanto riportato da Microsoft stessa i risultati che FlashStore è in grado di garantire sono sorprendenti e consentono di andare a migliorare le prestazioni di una normale configurazione basata sulla classica coppia RAM/hard disk.

Al momento mancano informazioni relative all'implementazione di tale tecnologia in scenari reali, e non si ha la possibilità di sapere quando e se questa tecnologia approderà in un prodotto finale. A questo indirizzo è disponibile la documentazione ufficiale.

12 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
dolomiticus21 Febbraio 2011, 12:35 #1
speriamo bene
AleLinuxBSD21 Febbraio 2011, 12:51 #2
Migliori prestazioni ma al prezzo di aprire una nuova strada ai virus & c.?
nullten21 Febbraio 2011, 12:54 #3
chissà...
extremelover21 Febbraio 2011, 13:07 #4
In fondo è 1 po' quello che gli HDD ibridi fanno, ma fatto a più basso livello.
Mi chiedo perchè si siano decisi solo ora di andare in questa direzione. Io personalmente l'ho sempre pensata sta cosa.
Phoenix Fire21 Febbraio 2011, 13:33 #5
@extremelover
mi dispiace per te che ti hanno fregato l'idea allora. Spero tu ne abbia brevettato l'implementazione così da poter mettere giù un bel pò di avvocati e fare il "c**o" a questa cattivona della microsoft che pensa sempre in ritardo le cose
[>>VK<<]21 Febbraio 2011, 13:47 #6
ma nn è vagamente la stessa cosa che si può fare adesso utilizzando l'opzione ReadyBoost di windows 7 e una penna USB ?
Yakkuz21 Febbraio 2011, 13:51 #7
Beh, c'è poco da fare gli spiritosi. Il concetto di gerarchia di memorie c'è da decine di anni. Quindi non hanno scoperto "l'intuizione".
La notizia non mi sembra nemmeno nuova, visto che ricordo di aver letto altre cose a riguardo.

Quello che è nuovo è il fatto che ci abbiano ragionato su e abbiano sviluppato qualcosa, anche se non c'è implementazione pratica e reale al momento (che poi è quello che conta).

La cosa che sorprende è che non c'è stato nulla di fatto in questa direzione fino ad adesso (almeno non con convinzione), e da questo punto di vista la "cattivona" della Microsoft ha il merito di aver fatto finalmente qualcosa di utile.
Yakkuz21 Febbraio 2011, 13:52 #8
Dal punto di vista "materiale" è simile. Cambia l'idea alla base e il COME viene fatto. Nel readyboost alla fine è semplice cache, qua si parla di cache gestita in un certo modo molto più efficiente, a quanto dicono.

WarDuck21 Febbraio 2011, 14:32 #9
Mi sa che semplicemente molti non hanno ben capito cosa sia FlashStore.

Si può riassumere in questa frase:

[I]FlashStore aggrega le piccole scrittura in un buffer di memoria e li scrive sulla memoria flash solo quando è certo di andare ad occupare l'intera cella memoria.[/I]

Attualmente non esiste una implementazione che fa questa cosa, quando avviene una scrittura su un SSD in genere si cancella l'intera cella e poi si riscrive sopra (cosa che non solo comporta un certo degrado prestazionale ma riduce i cicli di scrittura).

FlashStore è una sorta di delayed allocation (concetto sicuramente già esistente e presente in vari filesystem, come ext4), ma studiato appositamente per le memorie flash.

Il difetto di questa tecnologia, così come tutte le tecnologie che fanno uso della delayed allocation è che se va via la corrente c'è il rischio di perdere i dati.

Dunque la vera novità di questa tecnologia è che è studiata appositamente per le flash.

Spero che Microsoft rilasci una implementazione software, quindi un file system in grado di sfruttare questa idea, così che magari chi possiede un SSD (vedi il sottoscritto ) può trarne beneficio.
marchigiano21 Febbraio 2011, 14:36 #10
esiste già un programma simile, si chiama flashfire, solo che è beta e in qualche raro caso corrompe i dati

il vantaggio è che puoi usare un po di ram come cache del ssd e quindi puoi comprare ssd economici ed avere prestazioni molto elevate come quelli più costosi

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^