ANALISI DI UN HARD DISK A STATO SOLIDO (SSD) Introduzione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "ANALISI DI UN HARD DISK A STATO SOLIDO (SSD) Introduzione"

Transcript

1 ANALISI DI UN HARD DISK A STATO SOLIDO (SSD) Introduzione La storia degli hard disk a stato solido comincia innanzitutto con l'invenzione delle memorie ROM cancellabili (o alterabili) elettricamente, oggi comunemente chiamate EEPROM ovvero Electrically Erasable Programmable Read-Only Memory. Non tutti sanno che inizialmente nacquero 2 versioni di queste memorie: le EEPROM vere e proprie, sviluppate alla fine degli anni Settanta, in contemporanea con le EAROM prodotte dalla General Instruments. Queste ultime avevano un tempo di riscrittura di 100 millisecondi, un tempo di lettura di 2 microsecondi, ma il loro alto tempo di riscrittura le rendeva poco flessibili ad essere riprogrammate, anche se avevano il vantaggio di non dovere essere rimosse dal circuito stampato per essere riscritte. Fama maggiore ebbero le EEPROM, progettate da un ingegnere elettrico della Intel,George Perlegos, nel 1978.Una loro proprietà in comune con le EAROM era la capacità di essere modificabili bit a bit. L'evoluzione successiva furono negli anni Ottanta le memorie FLASH a semiconduttore non volatili ad alta densità inventate dalla Toshiba, che garantiscono tempi di accesso particolarmente veloci e possono essere riprogrammate senza essere rimosse dalla sede, come le EEPROM. Si basano sia sulle tecnologie EPROM che EEPROM e attualmente costituiscono una specie di compromesso fra questi due tipi di memoria. Le memorie FLASH sono particolarmente indicate per applicazioni che richiedono una programmazione frequente. A seconda della tecnologia impiegata, possono essere cancellate e riscritte da 100 a e più' volte. Le MEMORIE FLASH vengono cancellate elettricamente ma non permettono la cancellazione parziale che e' invece possibile con le EEPROM. Tuttavia, possono essere cancellate totalmente in pochi secondi, dunque molto più' velocemente delle EPROM. Tuttavia,a causa di un elevato costo di produzione in massa ed uno scarso interesse generale,non ci fu una larga implementazione di esse in campo industriale. L'obiettivo principale (salvataggio dati) era assolto più che bene dai normali dischi rigidi (HARD DISK, o hdd), inventati dall'ibm e già diffusi da molti anni. Esse rimasero per molto tempo solo una piccola porzione di memoria riservata a particolari usi (ad esempio, come memoria per scatole nere nei velivoli). Sono passati infatti circa 50 anni dall' invenzione degli hard disk comuni, e continue innovazioni hanno migliorato notevolmente la loro capacità, affidabilità, velocità e prezzo. Se i primi hard disk (IBM 350) avevano un tempo medio di accesso di 1 secondo, velocità rotazionale di 1200 rpm, con una capacità di 205 MB circa, con un prezzo accessibile solo a grandi centri di calcolo gli attuali hard disk consentono capacità nell'ordine dei Terabyte, velocità rotazionali di rpm, tempi di accesso nella soglia di 4-5 millisecondi, con un costo minore di 0,5 $ al gigabyte. (Seagate Cheetah). Contemporaneamente però, si sono visti miglioramenti ben più ragguardevoli per quel che riguarda i Microprocessori e memorie RAM. Se il tempo di accesso alla Ram è nell'ordine di 50/300 cicli di una moderna CPU, rimane ancora altissimo, in ambito dei calcolatori, il tempo di accesso ad una memoria di massa come un hard disk(milioni di cicli). Da questo fatto ci si è posti il dubbio (sulla base della legge di Amdahl deduco personalmente) se non fosse stato meglio migliorare drasticamente il throughput del componente più lento (HDD) piuttosto che un modesto sviluppo delle altre componenti già più veloci(cpu, RAM). Negli ultimi 6/7 anni, si è assistito ad una ricerca ed uno sviluppo su scala industriale delle memorie FLASH, capaci di essere cancellate/riscritte in più larghi blocchi e con una resa di produzione decisamente migliorata. Molte aziende leader nel settore di mass storage( Samsung,Kingston, Western Digital) e anche famose compagnie come la Intel, completamente estranee al mercato degli archivi di massa fino a qualche anno fa, sono scese in campo con i loro prodotti. Si tratta di una fetta di mercato in continua crescita da vari anni, su cui sono già stati investiti milioni di dollari e i ricavi sono in costante aumento. Restano tuttavia dubbi legittimi sulla tecnologia attualmente impiegata,cioè sulla sua effettiva convenienza e persino sulla sua affidabilità, ma personalmente ritengo doveroso approfondire non una innovazione ( si parla di tecnologia risalente agli anni Ottanta) ma una coraggiosa (o azzardata?) implementazione in un settore che non vede sostanziali cambiamenti da decine di anni.

2 I limiti ( e i pregi) degli hard disk tradizionali Come già accennato prima, un normale hard disk è lentissimo rispetto alla memoria centrale: ciò è dovuto al metodo di ricerca, lettura e scrittura dati; tutto avviene tramite una testina operazionale e un insieme di piatti cilindrici collegati ad un motore elettrico che mette in rotazione i suddetti piatti, coperti di un materiale magnetico-sensibile (ossido di ferro in quelli più datati, un composto del cobalto in quelli moderni) capace di disporsi secondo le linee di un campo magnetico. Il principio fisico è lo stesso sfruttato per allineare l'ago bussola, l'unica differenza è che il campo magnetico è creato artificialmente dalla testina. Infatti, per la legge di Biot-Savart, si crea un campo magnetico proporzionale alla corrente che circola nella testina, allineando in modo permanente le particelle metalliche in un determinato verso, a seconda del verso percorso dalla corrente. Quando viene spento il sistema, si mantiene quindi traccia delle scritture effettuate. Per realizzare questo però bisogna che: -) Il piatto sia in movimento, altrimenti i granuli sono insensibili al campo magnetico; -) La testina resti staccata dal piatto, altrimenti si causerebbe un corto circuito tra testina e piatto, bruciando il film di materiale magnetico e distruggendo così i dati memorizzati. Per la lettura dei dati, l'hard disk riceve in input il nome logico del file da leggere e il driver della periferica imposta tramite il controller hardware la posizione della testina e la velocità di rotazione del disco, ed usando il principio inverso a Biot-Savart (legge di Faraday-Lenz) il piatto magnetizzato che ruota genera nella testina correnti parassite in versi alternati, in base a come sono orientate le particelle magnetiche sulla superficie. Spetta poi al controller tradurre queste correnti opposte in segnali numerici di tipo binario, creando così sequenze di bit, byte, e così via. Si nota fin da subito che i dischi devono seguire le leggi della meccanica rotazionale, costringendo la testina ad un continuo movimento avanti e indietro i settori del disco. Questo fatto causa sempre un ritardo iniziale di seek. Se i più avanzati hard disk in ambiente server raggiungono soli 4 millisecondi di seek time, una media veritiera varia da 10 ai 25 ms in lettura, e dai 3 ai 15 ms per le scritture. Se poi i dati, a causa di cancellazioni da parte dell'host (SO o utente), diventano FRAMMENTATI, cioè dispersi su più settori e/o tracce e/o cilindri, il tipo di accesso è penalizzato ulteriormente da maggiori tempi di seek, come in una gestione di dati memorizzati in modo random(la peggiore possibile). Da qui l'esigenza di eseguire più o meno spesso(a seconda della disposizione dei dati) task di deframmentazione da parte del'host per mantenere bassi tempi di accesso ai file. Inoltre, ammesso che i dati siano deframmentati, sarà sempre più lento accedere ai dati posti sui settori più interni, dato che il loro numero è diminuito da circonferenze più corte, essendo più vicini all'asse di rotazione. Altro aspetto da notare, in situazioni di continuo accesso al disco, il sistema è sottoposto a maggiore stress meccanico, aumentando inesorabilmente l'usura complessiva. Un altro fattore penalizzante, almeno in ambiente mobile, è il maggiore consumo energetico ( fino a 13 watt per alcuni modelli) e un maggiore attenzione per la protezione da urti e shock( infatti la testina collassa sui piatti se deve assorbire un urto eccessivamente violento,). Detto questo, bisogna però far notare la loro capacità di mantenere i dati memorizzati per lunghissimi periodi di tempo(si parla di centinaia di anni ) e la possibilità di scrivere e riscrivere infinite volte dati sullo stesso settore o traccia; in caso di eliminazioni, il settore viene semplicemente marcato come deallocato e verrà eventualmente riscritto in future operazioni da parte dell'host. in caso di rottura della testina, basta sostituire solo le parti interessate e i dati sono salvaguardati(ma non se vengono danneggiati I piatti magnetici). Un altro fattore che ne ha decretato il successo, è il loro rapporto costo/gigabyte molto basso, insieme alla stima del loro Mean time between Failures variabile dalle alle ore. Questi aspetti rendono tutt'oggi gli hard disk la periferica di archivio di massa più usata al mondo. Analizziamo ora dal punto di vista hardware una cella di memoria NAND FLASH, l'unità basilare memorizzazione in un attuale SSD.

3 La cellula dell' SSD, la memoria NAND FLASH Per memorizzare l'unità di informazione digitale, cioè il bit, si può anche usare un tipo particolare di EEPROM, una memoria FLASH-MOSFET (metal oxide semiconductor field effect transistor): La struttura è simile al classico transistor MOS np, con un canale di ingresso e uno di uscita, il tutto controllato da un control gate, ma in aggiunta abbiamo un floating gate, isolato elettricamente tramite un strato di dielettrico, nel quale viene impostato un flusso di elettroni attivando il transistor. La memoria flash è costituita da un array di transistor MOS che agiscono come interruttori, permettendo il flusso di corrente o di bloccarlo. Il livello di tensione necessario per attivare il transistor è detto tensione di soglia e consente al flusso di corrente di scorrere nel floating gate e di immagazzinare elettroni.

4 In altre parole, se la tensione di soglia è inferiore alla tensione di gate, la cella è "attivata" e permette il flusso di elettroni ( viene memorizzato 1) altrimenti se la tensione di soglia è abbastanza alta in modo che la tensione di gate non va al disopra di esso,allora la cella è considerata spenta e nessuna corrente può scorrere ( resta memorizzato 0). Il meccanismo effettivo di programmazione di ogni cella di memoria flash è di applicare una tensione alla porta superiore(il top gate del MOSFET). Tale tensione attira elettroni dal cancello attraverso il dielettrico nel floating gate, alterando così la tensione di soglia. Questo processo è chiamato quantum tunneling meccanico, e permette in pratica di immagazzinare elettroni nello strato di dielettrico che circonda il floating gate Se si inverte il processo per scrivere, è necessaria l'applicazione di alta tensione al substrato per rimuovere gli elettroni dal floating gate. Non vi è tuttavia alcuna capacità di diretto controllo per applicare la tensione per cancellare una sola porta, quindi, è necessario applicare il procedimento ad un intero blocco. Da qui, si spiega perché una memoria NAND flash per essere programmata (scritta)deve essere prima impostata di nuovo ad "1", dovendo quindi cancellare l'intero blocco. Ciò le impedisce di essere in grado di sovrascrivere i suoi dati, che invece,devono essere salvati in un'altra posizione per poi essere riscritti insieme alle modifiche. Attenzione però: non tutte le memorie FLASH sono uguali. Oltre ai tipi NOR ( impiegate oggi soprattutto nella memorizzazione del BIOS del calcolatore, data la loro affidabilità nel tempo), esistono NAND con celle a singolo livello di soglia ( SLC ) e NAND a multi livello (MLC). La differenza è la quantità di informazioni immagazzinabili: infatti una cella SLC permette di impostare gli elettroni con una sola soglia di voltaggio, quindi si potrà memorizzare solo 1 bit ( 1/0). Una cella multi livello invece ha 4 o più possibili configurazioni logiche ( ) consentendo quindi di raddoppiare i bit memorizzati ( 2). Di conseguenza, si ha bisogno di quattro(oppure 8) celle per definire un Byte. A causa delle diverse soglie di tensione da attivare, il tempo di lettura in una cella MLC è sensibilmente superiore ad una cella a singolo livello( 25 µs contro 50 µs), come pure il tempo di programmazione, cioè scrittura (250 µs contro 900 µs ). Ma il fattore più penalizzante è il limitato numero di operazioni di riscrittura(riprogrammazione): purtroppo un handicap intrinseco alla memoria flash è la loro limitata capacità di riscrittura: a causa delle forti differenze di potenziale nel floating gate e nell'ossido che lo circonda, il degrado fisico che avviene al loro interno nel corso del loro impiego non permette, ad un certo punto, più alcuna riscrittura.

5 Cella NAND degradata a ROM: gli elettroni sono intrappolati nel substrato esterno, e non è più possibile riprogrammare la cella rimuovendoli. Parlando della loro struttura su chip, le celle MLC sono accoppiate normalmente su array di 32 elementi, formando così word di 8 byte fino a formare l'unità logica di memorizzazione della memoria, la PAGINA. Di solito la dimensione di una pagina è fissata a 4kB, quindi sono necessarie 2^14 (16384) celle NAND MLC (oppure nel caso di memoria SLC). Questa è la più piccola unità di spazio scrivibile/leggibile singolarmente. Più pagine sono quindi associate tra loro fino a formare un BLOCCO, corrispondente a 128 pagine, occupando quindi 512kB. I blocchi sono poi ripetuti in gruppi da 1024 per formare piani, I quali al loro volta sono ripetuti fino a saturare il wafer; aggiungendo infine i dispositivi di I/O col controller, con I regolatori di tensione si ottiene alla fine il singolo chip ; attualmente si hanno chip con densità variabile da 8 a 128 Gbit. Riassumendo il meccanismo di lettura/scrittura, s i possono quindi legger e o scrivere singole celle, ma se bisogna sovrascrivere dati già esistenti si deve per forza riscrivere un intero blocco di 128 pagine Chip di celle FLASH NAND in array; sulla sinistra è posto il circuito di controllo tensione e trasmissione bit

6 Il cuore e la mente dell'ssd : il controller di memoria Dopo aver analizzato la memoria, visto come è fatta e come può essere prodotta, i suoi pregi, limiti fisici e la sua organizzazione logica, bisogna ora analizzare il centro operativo della periferica, il controller hardware che gestisce i dati e tutte le loro operazioni di lettura e scrittura. Attraverso l'interfaccia standard con il chipset della motherboard (generalmente SATA 3 Gb/s, ma esistono versioni basate su PCI express che garantiscono maggiore banda passante fino a 10 Gb/s), il sistema/host chiede al controller di leggere/scrivere dati: a questo punto il file system del sistema operativo viene ingannato, in quanto è il controller a decidere dove scrivere i dati. Il SO crederà di doversi interfacciare con un normale Hard disk, mantenendo veritiera la rappresentazione logica dei dati(tipo, nome, dimensione etc.) ma non il loro reale indirizzo fisico sui chip, del quale spetta solo al controller decidere. Perché questo bypass? Per 2 motivi: prestazioni ed affidabilità del supporto; Il controller, gestito da un apposito driver (che può variare per ogni produttore), smista i pacchetti di bit in ingresso non su un singolo canale come fa un hard disk (la testina è il solo canale di lettura/scrittura ), ma facendo uno split dei byte su vari canali tanti quanti sono i chip di memoria NAND disponibili. Il motivo della grande velocità di un SSD è dovuto a vari fattori: il più importante è senza dubbio l'uso di memoria FLASH a basso tempo di accesso, come descritto pagine sopra. Un altro fattore è appunto questo, una simulazione di RAID (redundant array of independent disks), ma interno alla periferica. Altra differenza con I normali array di dischi, questo è composto da chips, tanto che sono stati proposti nomi a questa implementazione, come RAISE (redundant array of independent silicon elements). Più precisamente si tratterebbe di un RAID 5, in quanto su ogni chip viene effettuato il salvataggio dei dati e dei relativi bit di controllo errore (ECC). La dimensione (stripe) di ogni pacchetto è variabile per ogni controller. Grazie a questo sistema, si garantiscono le massime prestazioni per la periferica. Un altro importante motivo per far gestire al controller la posizione fisica dei dati è il fattore di controllo dell'usura (Wear levelling) : come già detto, la memoria NAND flash può sostenere un limitato numero di cicli di riprogrammazione, prima di degradarsi a semplice ROM (Read Only Memory). É questo il destino di ogni cella, ma per evitare che vengano scritte e riscritte solo una parte delle celle, diminuendo ulteriormente la loro durata, il controller effettua una rotazione periodica delle scritture dati distribuendole a turno tra tutte le celle a disposizione, non importa se libere o no. Ciò evita di perdere in anticipo porzioni utilizzabili di memoria e vedere calare nel tempo il numero di canali di memoria utilizzabili in scrittura. Ovviamente bisogna implementare tutto questo con un algoritmo che basandosi sulla mole di dati da scrivere, tenga traccia dei dati più statici e li sposti tra le varie celle, consentendo un usura uniforme della memoria. Oltre a queste fondamentali operazioni, il controller si occupa di tener traccia di eventuali pagine, blocchi o fogli danneggiati e resi inutilizzabili, andandoli a sostituire con elementi provenienti da un area di memoria inaccessibile per il SO e l'utente, la cosiddetta SPARE AREA. Questa sezione di memoria ( che può variare dal 7 al 40 % dello spazio disponibile) viene usata come riserva di celle NAND nel caso in cui si verifichi un prematuro esaurimento dei cicli di riscrittura di qualche blocco. Questa pratica prende il nome di OVER PROVISIONING. Nel caso che tutte le celle siano scritte, e sia necessario modificare una pagina,in mancanza di cache ad accesso veloce il contenuto del blocco viene dapprima salvato su una porzione di spare area memory, ed infine riscritta con le relative modifiche. Esistono molti tipi e produttori di controllers(intel/micron,sandforce,indilinx),ciascuno con il proprio firmware, ma in genere si può considerare il seguente schema: Un microprocessore con integrate RAM e ROM per le operazioni di avvio e tracciamento degli indirizzi delle memorie NAND, una ALU a 32 bit e un bus interno per accedere all'interfaccia con l'input dei dati (card interface) e con il canale di uscita dati verso le memorie; da notare il regolatore di tensione separato per il controller e per le memorie flash, con 2 canali dedicati alla interfaccia con i chip di memoria (in questo caso si ha un massimo di 16 chip), ed per ciascun canale è dedicato una scheda ECC di controllo errori di codice. Un controller Sandforce 1222

7 Schema logico di un generico controller per SSD SSD Intel X-25 M senza involucro esterno: si notino i 10 chip di memoria FLASH a sinistra, il controller al centro affiancato da un modulo di DRAM: È usata principalmente come una memoria buffer per abbinare il flusso di dati per l'interfaccia I / O. Questa memoria può essere utilizzata anche come una cache dei dati per migliorare le prestazioni complessive, o tenere traccia delle scritture da effettuare, distribuendole su vari canali. A destra l'interfaccia SATA 2 (garantisce una massima banda dati di 3 Gb/s ).

8 Write amplification Dopo aver scoperto il modo particolare in cui si cancellano i dati sulle celle NAND, sorge spontaneo un dubbio: come si comporta la periferica se tutte le pagine sono già stati scritte, sia totalmente che no? Supponiamo di avere, durante l'utilizzo dell' SSD, già scritto tutti blocchi a disposizione,alcuni con più dati e altri con meno: se ho un blocco con soli 256 kb di dati,qualora volessi scrivere altri 256kB di dati su di esso(riempiendolo con un totale di 512 kb), il controller deve compiere i seguenti step: -) Leggere il blocco per intero; (256kB di dati) -) Salvare i dati da qualche parte( DRAM del controller, spare area o altra area di memoria); -) Modificare/aggiungere i nuovi dati operando su questo dato copiato ; -) Eliminare i dati dal blocco da dove erano copiati in origine i dati (riprogrammare il blocco); -) Copiare di nuovo i dati(write operation di 512kB, contenente I vecchi e I nuovi dati ); Se facciamo un veloce conto, ci accorgiamo che per scrivere solo 256 kb di dati, abbiamo dovuto non solo effettuare una lettura extra(che logicamente non sarebbe comprensibile, se usassimo un normale hard disk, ma data l'estrema velocità di lettura, il suo tempo di esecuzione è trascurabile), ma anche riscritto un blocco intero con 512 kb! Il totale delle operazioni di I/O mostra quindi 256kB inviati dall'host ma 512 kb scritti. Questo overhead che tutti I controller devono affrontare prende il nome di Write Amplification, un problema che contribuisce ad accorciare il tempo di vita di ogni cella di memoria col passare del tempo e soprattutto con piccole scritture,minori delle dimensioni di un blocco. Per calcolarla approssimativamente si usa la seguente formula : Da qui si capisce che più I dati dell'host sono piccoli, più la write amplification aumenta, tenendo fissa la quantità minima da riscrivere su un blocco di memoria. Nell'esempio precedente avevamo un fattore di amplificazione pari a 2, ma può arrivare anche fino a 5. L'ideale sarebbe un rapporto pari a 1, cioè per ogni byte da scrivere il controller scrive solo i nuovi dati. Recentemente, alcuni controller (serie Sandforce) sono riusciti ad ottenere un fattore di write amplification minore di 1 in certi casi di scrittura, comprimendo i dati grazie a speciali algoritmi. Una notevole riduzione del problema è stata l'implementazione del comando TRIM, una istruzione inviata dal sistema operativo all'ssd (ammesso che sia implementata e supportata da entrambi ) qualora si decida di eliminare definitivamente un file; in tal caso il Sistema Operativo, dopo aver aggiornato il file system, manderà tramite il protocollo SATA un avviso di notifica di cancellazione dei file; il controller non si limiterà a deallocare logicamente lo spazio dove risiede il file (come fanno I normali dischi rigidi), ma cancellerà in maniera forzata il blocco e lo contrassegnerà come empty, permettendo così di evitare in futuro fenomeni ricorsivi di write amplification qualora si debba riscrivere un blocco per mancanza di spazio. Tuttavia in caso di modifica del file si avrà sempre una write amplification, non essendo possibile cancellarlo del tutto. Anche nel caso siano presenti porzioni di altri file, sarà necessario dover salvare i loro frammenti e poi riscriverli. È importante notare che esiste un collegamento diretto tra write amplification e il coefficiente di spazio libero riservato al sistema (spare area): maggiore è quest'ultima, minore sarà l'amplificazione. Inoltre un controller con un algoritmo di wear levelling sarà avvantaggiato nel gestire pochi dati, facendoli riscrivere periodicamente su diversi blocchi; qualora non siano presenti adeguati algoritmi per gestire molti dati statici, si dovrà per forza riscrivere sugli stessi blocchi, causando una maggiore usura della memoria. Più il disco si riempie di dati, più

9 sarà difficile per il controller effettuare riscritture sui pochi blocchi disponili, dato che la maggior parte sarà occupata. La dimensione della spare area è un fattore essenziale per scongiurare rallentamenti durante le operazioni di riprogrammazione. Algoritmo di Garbage Collection ( ritiro della spazzatura ) Per mantenere alte le performance in scrittura, il controller cerca sempre di scrivere su blocchi di memoria ancora vergini. Qualora siano già stati tutti scritti, si dovrà dunque procedere per ogni blocco all'overhead della write amplification. Prima del supporto software al comando TRIM, che agisce istantaneamente al momento della cancellazione di un generico file, si sono adottate alcune routine/script interni per il controller che cercavano di separare le pagine invalidate da quelle ancora attive logicamente nel file system. Basandosi su un semplice algoritmo greedy, durante I tempi di IDLE della periferica (cioè quando l'host non chiama la periferica), si avvia il Garbage collector; il controller legge il file system del SO ed analizza tutti i blocchi contenenti pagine invalidate (cancellate dall'host ma ancora fisicamente presenti sull' SSD) e di essi ne sceglie il blocco con il numero più alto. Seleziona quindi gli eventuali file nel blocco ancora logicamente attivi, cioè presenti sul file system, e li riscrive su un altro blocco avente abbastanza spazio libero per ospitarli. Il blocco scelto dal garbage collector viene così cancellato totalmente e marcato come empty. Il blocco ripulito viene quindi rimesso nel gruppo dei blocchi liberi. Questo sistema emula in certi aspetti il processo di consolidazione presente sugli hard disk, deframmentando le pagine disperse su molti blocchi, riempiendo ogni blocco disponibile senza lasciare pagine vuote e riducendo la probabilità di doverle in futuro riscrivere durante operazioni di modifica causate dalla write amplification. Questo tipo di algoritmo è il più semplice ed intuitivo per un controller. I dati vengono trattati allo stesso livello e non esiste alcuna linea di demarcazione tra dati statici e dinamici. Alcuni algoritmi più sofisticati tengono separati dati statici dai dati dinamici, evitando quindi una riallocazione utile per questi ultimi. Sebbene sia utile ad evitare rallentamenti in operazioni di scrittura, questo script causa un aggravamento nell'usura della memoria FLASH, visto che si effettuano ulteriori scritture collaterali non richieste dall'host per fini operativi. Il tempo di vita previsto Detto in modo diretto, non esiste un tempo minimo/massimo di vita per le memorie NAND: Il fattore principale è la quantità di dati scritti: Un centro di calcolo o server commerciali che effettuano enormi volumi (Gigabytes o Terabytes) di scritture al giorno saranno più veloci a

10 vedere esaurito il limite di cicli di lettura e scrittura rispetto a scritture sporadiche del disco, tipico di una workstation. Da ricordare bene è il fatto che la tipologia SLC consente un numero maggiore di cicli di cancellazione/scrittura (circa ) mentre le MLC, a seconda della geometria di fabbricazione adottata, variano tra per geometria a 50 nm e 3000 per quella a 25 nm. Ovviamente il costo per GB di una memoria SLC è nettamente superiore di quelle MLC, quindi il loro impiego per grandi database comporta un costo abnorme rispetto alla media. Si possono tuttavia fare previsioni basandosi su semplici calcoli: dato un disco da 30 GB( 30* 2^30 bytes) con una write amplification continua di 5 (caso peggiore) e una stima di 10^4 cicli di cancellazione/scrittura(valore tipico delle memorie MLC) si ha a disposizione nel nostro caso (30*2^30)*10^4 / 5= 64,4 Terabyte= Gigabyte ; A seconda della quantità e del tipo di scritture, ciò può equivalere da poche a molte decine di anni, non esiste una regola certa. Vorrei tuttavia smentire l'immaginario comune che vede I dischi a stato solido capaci di garantire scritture solo per un breve arco di tempo. Dopo aver analizzato numerosi test statistici, si è calcolato che il 95 % degli utenti client workstation effettuano scritture inferiori a 5 GB di dati al giorno; ciò si traduce in una vita media intorno ai 35 ANNI nel caso riportato sopra. Sapendo la stima delle scritture effettuate dall'host, si può decidere di conseguenza se impiegare memorie SLC o MLC. Tuttavia sappiamo con certezza che la geometria delle memorie influisce direttamente sul numero di cicli disponibili di cancellazione/scrittura; infatti una pratica comune nell'evoluzione delle tecnologie elettroniche è la SCALARIZZAZIONE, cioè il rimpicciolimento sul wafer si silicio dei transistor fabbricati. Finora ogni scalarizzazione aveva portato sempre benefici nella affidabilità e nel costo al componente (si pensi alla storia delle CPU) ma in questa situazione bisogna riflettere un attimo: se si considera il funzionamento della memoria flash(il floating gate, il dielettrico etc.) si nota che un rimpicciolimento delle dimensioni crea seri problemi di funzionamento al transistor, causando una usura più veloce (data dal minor spessore) allo strato di ossido che circonda il floating gate. Ciò si traduce ai fini pratici in una MINORE LONGEVITÀ nei cicli di cancellazione e scrittura ma non solo, anche un aumento del rischio di errori durante la scrittura dei dati. Sebbene questo processo abbassi l'affidabilità di ogni tipo di memoria FLASH, le memorie MLC sono maggiormente influenzate da questa miniaturizzazione, diventando più suscettibili ad errori nella scrittura dati (è più complicato spostare / rimuovere elettroni dal floating gate) rispetto alle più semplici memorie SLC. Più si avanza nello scaling, più diventa necessario riservare sempre maggiore spazio a codice di correzione errore ECC; proprio per questo si sta cominciando a considerare l'impiego di tecnologie alternative alle FLASH ( memorie FeRAM / MRAM), ma servirà un dispendio di risorse enorme e

11 nessuno sembra disposto a finanziare ulteriori investimenti di produzione con nuove tecnologie, visto che si sta ancora investendo nel settore NAND ( sono state create joint-venture tra colossi di ricerca del settore, come Intel e Micron, ed è stato fondato un consorzio per la standardizzazione delle NAND flash, l'onfi (Open NAND Flash Interface ). I Vantaggi di un SSD -)Maggior throughput, maggiore resistenza meccanica (affidabilità), nessun rumore,minor consumo energetico Come immaginabile dall'analisi effettuata finora, la mancanza di parti mobili/meccaniche, un accesso alla memoria di tipo diretto e un controller con buoni algoritmi operativi permettono agli SSD di ECCELLERE in ogni tipo di benchmark reale o sintetico su ogni tipo di task immaginabile. Come confronto, ho testato con tool di benchmark diversi un SSD di fascia mainstream (Intel X25 M con memorie FLASH MLC a 34 nm, 10 canali di scrittura) ed un Hard disk di ultima generazione per portatili, (Seagate Momentus 7200 rpm cioè può arrivare a 120 GIRI AL SECONDO, con 16 MB di cache interna). Un confronto importante è la capacità di trasferimento dati, ovvero la quantità di byte trasferibili in un secondo verso l'host. Dai dati si evince che l'hard disk riesce a trasferire durante una operazione di lettura( o scrittura) quantità di byte differenti nella stessa unità di tempo a seconda del tipo di file da leggere: Il massimo streaming si raggiunge per lettura e scrittura di file sequenziali (ipotetici file di dimensione infinita), dove basta solo una seek da parte della testina ed il flusso di bit è continuo senza interruzioni, con un massimo di 90/100 MB, a seconda della loro posizione sui piatti. Il rendimento cala drasticamente qualora si debbano leggere o scrivere pezzi casualmente scelti di file più piccoli (dimensione fissate a 4 e 512 kb in questo caso)contemporaneamente in un secondo: a causa dei molteplici riposizionamenti da parte della testina,la quantità di dati letti/scritti diminuisce di circa di 2/3 in lettura, e della metà in scrittura. Peggio ancora nel caso di letture/scritture random di 4kB(di solito la più piccola quantità di dati leggibile/scrivibile singolarmente, ma l'implementazione di cache veloci integrate nell'hard disk permette di evitare singole operazioni di input /output su file così piccoli,evitando scritture dirette). Il tempo medio di accesso varia notevolmente poi tra le letture e scritture, in un intervallo che va dai 4/5 fino a latenze di 17 ms. Sebbene esistano modelli con velocità di rpm e oltre,

12 l'aumento in prestazioni non è sempre lineare all'aumentare della velocità rotazionale. Analizzando ora il benchmark dell' SSD Intel, si nota un incredibile incremento nelle letture e nelle scritture, sia per le sequenziali che le random(4kb), nonché il minor tempo di accesso; Ricordando la legge di Amdahl 1 Speed Up = (1-Fenh)+ Fenh/Senh Seppur il Fenh( fraction time enhanced)sia variabile a seconda dei task eseguiti dall'host,è stato dimostrato che un SSD non subisce rallentamenti nel tempo per quanto riguarda le operazioni di lettura, mantenendo sempre alte le sue performance operative mentre un hard disk può frammentare i dati nel corso del suo utilizzo e abbassare ulteriormente le prestazioni. Il miglioramento relativo della periferica sarà dato quindi dal rapporto tra le loro prestazioni indicato con Senh. Bisogna poi analizzare quanto questo miglioramento possa influire sul sistema. Il Senh della periferica varia IN QUESTO ESEMPIO da 1,83 (255 MB/s - 90 MB/s)/90 MB/s = 1,83) ad un incredibile fattore di 49 [ (25 MB/s-0.5 MB/s)/0.5 MB/S=49 ] nella lettura di file da 4 kb. La situazione cambia analizzando lo speed up in scrittura: a causa della write amplification è difficile calcolare con esattezza il miglioramento preciso nel tempo. Inizialmente, con memorie vuote, basterà solo scrivere i dati effettivi, ma una volta saturate di bit tutti I blocchi, si vedrà un calo più o meno contenuto delle velocità di scrittura sequenziale, dovendo il controller effettuare per ogni blocco dati la routine lettura-copia-riscrittura già analizzata in precedenza; il supporto al comando di sistema TRIM permette di risolvere questo problema solo in caso di cancellazione di un dato che NON condivide il blocco con altri dati, cioè è il solo utilizzatore del blocco. Altrimenti il controller sarà costretto a riscrivere l'altro dato presente seppur parzialmente nel blocco. Da questa nota si deduce che il peggior nemico di un SSD, in termini di efficienza in scrittura, sono i dati di piccole dimensioni, che si frammentano e disperdono su tutte le pagine di memoria di vari blocchi, costringendo il controller ad impostare come "occupato" un blocco scritto anche solo da una sola pagina di dati (questo teoricamente parlando, attualmente le gestioni del controller garantiscono di sequenzializzare il più possibile i dati più piccoli, "accodandoli" in code (queue) di lunghezza variabile. I benchmark in scrittura SEQUENZIALE di un SSD sono dunque variabili a seconda dei casi, con alcuni SSD capaci di arrivare a 260 MB/s per scritture sequenziali in certi controller (Sandforce 1500 con 16 canali di memoria e geometria a 32 nm), e degradando in casi di geometria NAND ad alta scalarizzazione ed un basso numero di canali di memoria a disposizione fino a 35 MB/s ( stesso controller sandforce 1500 ma con solo 8 dei canali disponibili in scrittura e con geometria a 25 nm).

13 Un hard disk di alto livello garantisce scritture sequenziali migliori in alcuni casi rispetto a SSD aventi pochi canali disponibili per le operazioni con il controller.(questo spiega perché SSD con capacità maggiori, e quindi un numero maggiore di chip, ottengono risultati migliori in scrittura sequenziale). Da segnalare che i dischi con memorie SLC risentono in misura molto minore di questo problema, dato il loro bassissimo tempo fisico di riscrittura. Guardando in maniera globale la situazione però, il confronto tende sempre a favore degli SSD, in quanto scritture di file piccoli (512kB, 4kB) vengono effettuate con maggior velocità di un Hard Disk in ogni caso, sia in condizioni favorevoli oppure no, poiché risultano maggiormente penalizzanti i problemi di lentezza meccanica (seek -scritturariposizionamento) di un generico Hard disk che una write amplification limitata a pochi blocchi. Detto questo, è innegabile inoltre la maggiore prontezza di risposta: non essendoci testina o parti mobili, l'indirizzo dei dati è tenuto in memoria dal controller, che accede direttamente ad essi senza alcun bisogno di tempi morti di rotazione; il tutto si traduce in tempi di accesso medio nell'ordine dei 0,1/0,2 MILLISECONDI, invece dei 4/5 del migliore degli hard disk. Per rendere chiaro il loro potenziale, spesso si confrontano dischi rigidi basandosi sul numero di operazioni di INPUT/OUTPUT al secondo: soprattutto in ambito server, dove potrebbero arrivare centinaia o migliaia di richieste di accesso ai dati su disco, è importante evitare code nel traffico dati. Un normale hard disk permette un numero di operazioni di I/O al secondo nell'ordine delle centinaia, mentre un SSD ne può gestire MIGLIAIA: Altro aspetto vantaggioso, la già citata mancanza di parti mobili migliora l'affidabilità nel tempo e allunga il MTBF fino a livelli di 1 milione di ore. In caso di urti o cadute accidentali, seppur plausibili nel solo ambiente mobile, si abbassa il rischio di perdere i dati memorizzati. Il motivo più frequente di fallimento nel trasferimento o nelle operazioni di dati è da imputare ad errori software nel firmware del controller, piuttosto che alla rottura di qualche componente elettronico. Un ulteriore innovazione per ogni sistema che adotta un SSD è il ridotto consumo energetico, sia in stand-by che a regime( si parla di consumi di 1-2 watt a pieno carico) contro i normali 6-10 watt di un hard disk ad alta velocità. Da questo fattore risultano avvantaggiati in modo particolare I dispositivi portatili. Nel mio caso, togliendo il normale disco rigido, ho constato un allungamento della durata della batteria di circa minuti. Per finire, il livello di rumorosità e di vibrazioni è praticamente nullo, data l'assenza di dischi in rotazione.

14 Gli svantaggi di un SSD -) Limitata quantità di dati scrivibili, a causa dei limiti fisici delle memorie NAND(grandi quantità di scritture o peggio ancora, grandi quantità di piccole scritture diminuiscono drasticamente questo potenziale di scrittura); -) Write amplification che causa un più veloce consumo dei cicli di cancellazione/scrittura rispetto a quelli necessari, ed un calo VARIABILE dell'efficienza nelle scritture con molte scritture di piccola dimensione. La presenza di un buon algoritmo di wear levelling ed il supporto al comando TRIM tuttavia mitigano questo effetto collaterale, abbassandolo ad un fattore prossimo ad 1 o anche meno in certi casi speciali. -) Alto costo di fabbricazione rispetto agli hard disk, con un aumento del prezzo nell'ordine di un fattore 10 per le memorie più avanzate (SLC). Per le memorie MLC, prima della loro fabbricazione in massa, si pagava fino a 100 $ per gigabyte alla fine del 2004,passando nel 2009 a circa 4 $/gigabyte(intel x25 g1, memorie a 50 namometri), e arrivando negli ultimi mesi a circa 1,5 $ per gigabyte ( memorie a 25 nm); I normali hard disk restano ancora i maggiori protagonisti sul mercato per la convenienza, con un prezzo intorno ai 0,2/0,3 $ al gigabyte; -) Anche se basati sulla stessa tecnologia di memorie, due SSD differenti possono essere molto differenti nei benchmarks, a seconda del modello di controller impiegato e del tipo di firmware adottato. ( Si veda il benchmark di I/O a pag 13) Lo Short Stroking : come migliorare il troughput di un HDD Se la ricerca nel settore SSD non conosce sosta, anche sui normali hard disk si è cercato di migliorare le performance; una particolare procedura, lo short stroking, consente di ridurre il numero di tracce e settori logici riconosciuti dal driver di un hard disk, riducendo quindi lo spazio logico totalmente disponibile. Perchè fare questo? Se si sceglie di usare solamente I settori più esterni di un piatto, la testina dovrà effettuare molti meno riposizionamenti, rimanendo sulle tracce più esterne che consentono di immagazzinare più dati e in modo più veloce rispetto ai settori più interni. Sono stati già implementati esempi di short stroking su alcuni esemplari dalla Hitachi,come l'ultrastar 15k450. Lo speed up ottenuto è innegabile, riuscendo ad abbattere I tempi medi di seek di circa il 40%, ma restando ancora lontani dai tempi di accesso di un SSD. Anche il numero di operazioni di Input/Output ed il throughput medio risultano migliorati fino al 60%,ed in alcune

15 configurazioni in RAID 0 con array di 4 dischi sorpassano gli SSD,ma a che prezzo? Per avere miglioramenti tangibili, bisogna riformattare capacità di 450 GB fino a 20 GB, uno spreco notevole che sacrifica circa il 95 % di spazio disponibile. Se si vuole restare a pari livello di un SSD in ambito server, dove è importante anche la capacità dati a disposizione, bisogna creare RAID da 4 o più elementi per avere poi le stesse dimensioni di un SSD singolo. Se invece si volesse pensare di implementare lo short stroking in ambiente mobile o workstation, sarebbe impossibile data la mancanza di spazio per impostare la configurazione RAID di molti dischi. Ovviamente come effetto domino, il consumo totale di energia raddoppia o quadruplica di conseguenza. Oltre a questa particolare strategia, sono stati progettati hard disk ibridi, dotati cioè del tradizionale disco magnetico e di una memoria flash della dimensione di alcuni Gigabyte; sebbene sia stato possibile migliorare alcuni fattori come il tempo di accesso, è risultato molto complesso decidere quali dati andassero indicizzati e posti sulla memoria FLASH più veloce; alla fine, si è potuto considerare questa soluzione solo come un' estensione nella gestione della cache interna. L'host non è in grado di decidere la posizione fisica dei file, come quelli di sistema, quindi si dovrebbe creare un driver molto più complesso di quello dei controller SSD capace di gestire autonomamente dove posizionare file, quali tenere su memoria flash e quali su disco magnetico, gestire il wear levelling e molto altro. Risulta quindi che gli sviluppi sul classico modello di hard disk, puro o ibrido,sono ad un punto di stasi. Conclusioni e previsioni sul futuro Se la prima generazione di SSD ha mostrato effetti collaterali marcati come una eccessiva write amplification, lo sviluppo e la ricerca ininterrotta nel settore hanno permesso di ottenere prodotti maturi già da molti mesi, migliorando attraverso continui aggiornamenti del driver dei controller l'affidabilità e il valore della periferica. Tuttavia si sta ancora cercando di minimizzare inconvenienti come il numero limitato di riscritture, che i normali hard disk non hanno. Se per un ambiente workstation un hard disk è ancora sinonimo di un ottimo rapporto tra prestazioni e convenienza,soprattutto se sono necessari grandi volumi di archiviazione, le prospettive cambiano per un ambiente server, dove è necessario minimizzare tutti I rallentamenti nel trasferimento dati. Investendo risorse extra nell'uso di memorie SLC si avrà un costo iniziale maggiore che però sarà ricompensato nel lungo termine con performance superiori ed ammortizzato da un consumo minore di energia (sia quella consumata direttamente per alimentare il disco come anche quella per raffreddare il sistema). Nel 2008 uno studio McKinsey & Company ha stabilito che i data center del mondo consumano lo 0,5% dell'energia disponibile globalmente, e causano più emissioni nocive di tutta l'argentina. Tutto questo, abbinato al sempre maggior accesso a servizi web basati su grandi database, getta una luce sui vantaggi di SSD applicati ad ambienti enterprise. Purtroppo la diffusione degli SSD in ambiente da workstation è ancora prossima allo zero. Meno del 2 % dei dischi rigidi venduti è basato su memoria flash. Lo sbocco produttivo per tali memorie restano periferiche di archivio rimovibili USB o dispositivi embedded come telefoni cellulari o palmari. Nelle scorse settimane si è assistito all'introduzione della nuova interfaccia SATA 3.0 capace di garantire una banda passante di 6 Gbit per secondo, il doppio dell'attuale standard. Grazie a ciò, sarà possibile per le nuove generazioni di SSD già in commercio di sfruttare al massimo il loro potenziale. Lo svantaggio maggiore nel passare alla tecnologia FLASH resta il costo iniziale elevato per unità di spazio ma come opinione personale, ritengo che sia solo questione di tempo prima che gli SSD sostituiscano i comuni hard disk, sebbene siano attualmente una delle più longeve ed affidabili tecnologie di archivio di massa. Molti ricercatori stanno già guardando alle memorie FLASH come un nuovo gradino nella gerarchia delle memorie.

16 Fonti dati internet option=com_content&task=view&id=69&itemid= e_ Bibliografia ufficiale Write Amplification Analysis in Flash-Based Solid State Drives Xiao-Yu Hu, Evangelos Eleftheriou, Robert Haas, Ilias Iliadis, Roman Pletka IBM Zurich Research Laboratory The Performance of PC Solid-State Disks (SSDs) as a Function of Bandwidth, Concurrency, Device Architecture, and System Organization - Cagdas Dirik and Bruce Jacob Improving NAND Flash Based Disk Caches - Taeho Kgil David Roberts Trevor Mudge Write Endurance in Flash Drives: Measurements and Analysis - Simona Boboila Peter Desnoyers hybridfs: Integrating NAND Flash-Based SSD and HDD for Hybrid File System - Jinsun Suk and Jaechun No FlashSim: A Simulator for NAND Flash-based Solid-State Drives - Youngjae Kim Brendan Tauras Aayush Gupta Bhuvan Urgaonkar A Methodology for Extracting Performance Parameters in Solid State Disks (SSDs) - Jae-Hong Kim, Dawoon Jung Jin-Soo Kim Jaehyuk Huh Performance Analysis of NAND Flash Memory Solid-State Disks - Cagdas Dirik Write Amplification Reduction in NAND Flash through Multi-Write Coding Ashish Jagmohan, Michele Franceschini, Luis Lastras Lotti Francesco Università degli studi di Modena e Reggio Emilia Corso di laurea in Ingegneria Informatica

Materiali per il modulo 1 ECDL. Autore: M. Lanino

Materiali per il modulo 1 ECDL. Autore: M. Lanino Materiali per il modulo 1 ECDL Autore: M. Lanino RAM, l'acronimo per "random access memory", ovvero "memoria ad acceso casuale", è la memoria in cui vengono caricati i dati che devono essere utilizzati

Dettagli

Gerarchia delle memorie

Gerarchia delle memorie Memorie Gerarchia delle memorie Cache CPU Centrale Massa Distanza Capacità Tempi di accesso Costo 2 1 Le memorie centrali Nella macchina di Von Neumann, le istruzioni e i dati sono contenute in una memoria

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 - parte II La memoria 1 La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso,

Dettagli

Memoria secondaria. Architettura dell elaboratore. Memoria secondaria. Memoria secondaria. Memoria secondaria

Memoria secondaria. Architettura dell elaboratore. Memoria secondaria. Memoria secondaria. Memoria secondaria Architettura dell elaboratore Capacità di memorizzazione dei dispositivi di memoria: Memoria centrale attualmente si arriva ad alcuni GB centinaia di GB o TB Memoria principale e registri: volatilità,

Dettagli

Memorie di massa SSD (drive a stato solido) SSD

Memorie di massa SSD (drive a stato solido) SSD Sistemi Gerboni Roberta Memorie di massa SSD (drive a stato solido) Un unità a stato solido o drive a stato solido (SSD) è un dispositivo di archiviazione dati che usa una memoria a stato solido per memorizzare

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Organizzazione della memoria

Organizzazione della memoria Memorizzazione dati La fase di codifica permette di esprimere qualsiasi informazione (numeri, testo, immagini, ecc) come stringhe di bit: Es: di immagine 00001001100110010010001100110010011001010010100010

Dettagli

Appunti di informatica. Lezione 6 anno accademico 2015-2016 Mario Verdicchio

Appunti di informatica. Lezione 6 anno accademico 2015-2016 Mario Verdicchio Appunti di informatica Lezione 6 anno accademico 2015-2016 Mario Verdicchio RAM disco La RAM è basata su dispositivi elettronici, che funzionano con tempi molto rapidi, ma che necessitano di alimentazione

Dettagli

Laboratorio di Informatica di Base Archivi e Basi di Dati

Laboratorio di Informatica di Base Archivi e Basi di Dati Laboratorio di Informatica di Base Archivi e Basi di Dati Introduzione La memorizzazione dei dati è un aspetto molto importante dell informatica Oggi, mediante i computer, è possibile memorizzare e modificare

Dettagli

La memoria - generalità

La memoria - generalità Calcolatori Elettronici La memoria gerarchica Introduzione La memoria - generalità n Funzioni: Supporto alla CPU: deve fornire dati ed istruzioni il più rapidamente possibile Archiviazione: deve consentire

Dettagli

Le Memorie. Prof. Maurizio Naldi A.A. 2015/16

Le Memorie. Prof. Maurizio Naldi A.A. 2015/16 Le Memorie Prof. Maurizio Naldi A.A. 2015/16 Memorie Memoria Principale (centrale) Si accede direttamente dalla CPU non permanente Memoria Secondaria (di massa) Si accede tramite il sottosistema di input/output

Dettagli

Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica. prof. Corrado Santoro

Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica. prof. Corrado Santoro Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica prof. Corrado Santoro La prima macchina programmabile Conoscete queste macchine? Telai Jacquard (primi anni del 1800) Macchina per

Dettagli

1.4b: Hardware. (Memoria Centrale)

1.4b: Hardware. (Memoria Centrale) 1.4b: Hardware (Memoria Centrale) Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.11, 3.13 IV ediz.: cap. 2.8, 2.9 Questi lucidi Memoria Centrale Un

Dettagli

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: martedì, 12.00-13.00. Dip. Di Matematica Modalità esame: scritto + tesina facoltativa 1

Dettagli

LABORATORIO DI SISTEMI

LABORATORIO DI SISTEMI ALUNNO: Fratto Claudio CLASSE: IV B Informatico ESERCITAZIONE N : 1 LABORATORIO DI SISTEMI OGGETTO: Progettare e collaudare un circuito digitale capace di copiare le informazioni di una memoria PROM in

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it La memoria principale 2 izzazione della memoria principale ria principale è organizzata come

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

La memoria centrale (RAM)

La memoria centrale (RAM) La memoria centrale (RAM) Mantiene al proprio interno i dati e le istruzioni dei programmi in esecuzione Memoria ad accesso casuale Tecnologia elettronica: Veloce ma volatile e costosa Due eccezioni R.O.M.

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti

Dettagli

Dispense di Informatica per l ITG Valadier

Dispense di Informatica per l ITG Valadier La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1 IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1 GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore (CPU) la memoria principale (RAM) la memoria secondaria i dispositivi di input/output Il processore

Dettagli

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica I componenti di un Sistema di elaborazione. Memoria centrale Memorizza : istruzioni dati In forma BINARIA : 10001010101000110101... È costituita da una serie di CHIP disposti su una scheda elettronica

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Redundant Array of Inexpensive (Independent) Disks. Disco magnetico

Redundant Array of Inexpensive (Independent) Disks. Disco magnetico 26/5/25 RAID Redundant Array of Inexpensive (Independent) Disks Disco magnetico Costituito da un insieme di piatti rotanti (da a 5) Piatti rivestiti di una superficie magnetica Esiste una testina (bobina)

Dettagli

Un sistema operativo è un insieme di programmi che consentono ad un utente di

Un sistema operativo è un insieme di programmi che consentono ad un utente di INTRODUZIONE AI SISTEMI OPERATIVI 1 Alcune definizioni 1 Sistema dedicato: 1 Sistema batch o a lotti: 2 Sistemi time sharing: 2 Sistema multiprogrammato: 3 Processo e programma 3 Risorse: 3 Spazio degli

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici La memoria gerarchica L hard disk Introduzione alla memoria virtuale Scendiamo di un altro livello CPU Banco Cache Memoria principale Memoria secondaria Dimensioni < 1KB < 1 MB

Dettagli

IL RISPARMIO ENERGETICO E GLI AZIONAMENTI A VELOCITA VARIABILE L utilizzo dell inverter negli impianti frigoriferi.

IL RISPARMIO ENERGETICO E GLI AZIONAMENTI A VELOCITA VARIABILE L utilizzo dell inverter negli impianti frigoriferi. IL RISPARMIO ENERGETICO E GLI AZIONAMENTI A VELOCITA VARIABILE L utilizzo dell inverter negli impianti frigoriferi. Negli ultimi anni, il concetto di risparmio energetico sta diventando di fondamentale

Dettagli

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA Il termine informatica riassume due parole, informazione automatica, e si occupa dei sistemi per l elaborazione

Dettagli

C. P. U. MEMORIA CENTRALE

C. P. U. MEMORIA CENTRALE C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato

Dettagli

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi

Dettagli

Le memorie. Introduzione

Le memorie. Introduzione Le memorie Introduzione Una memoria è un sistema elettronico in grado di immagazzinare dati in forma binaria, per poi renderli disponibili ad ogni richiesta. Tale sistema è costituito da un insieme di

Dettagli

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014 Corso: Informatica+ Andrea Cremonini Lezione del 20/10/2014 1 Cosa è un computer? Un elaboratore di dati e immagini Uno smartphone Il decoder di Sky Una console di gioco siamo circondati! andrea.cremon

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

Architettura dei calcolatori II parte Memorie

Architettura dei calcolatori II parte Memorie Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica ed Elementi di Statistica 3 c.f.u. Anno Accademico 2010/2011 Docente: ing. Salvatore Sorce Architettura dei calcolatori

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Sistema operativo: Gestione della memoria

Sistema operativo: Gestione della memoria Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e

Dettagli

Amplificatori Audio di Potenza

Amplificatori Audio di Potenza Amplificatori Audio di Potenza Un amplificatore, semplificando al massimo, può essere visto come un oggetto in grado di aumentare il livello di un segnale. Ha quindi, generalmente, due porte: un ingresso

Dettagli

Il Sistema Operativo (1)

Il Sistema Operativo (1) E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE CORSO INTRODUTTIVO DI INFORMATICA NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE Dott. Paolo Righetto 1 CORSO INTRODUTTIVO DI INFORMATICA Percorso dell incontro: 1) Alcuni elementi della configurazione hardware

Dettagli

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM Il computer è un apparecchio elettronico che riceve dati di ingresso (input), li memorizza e gli elabora e fornisce in uscita i risultati (output). Il computer è quindi un sistema per elaborare informazioni

Dettagli

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella. Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell

Dettagli

G UI D A AL R E C U P E RO DEI DAT I D A T A R E C O V E R Y d a H A R D D I S K

G UI D A AL R E C U P E RO DEI DAT I D A T A R E C O V E R Y d a H A R D D I S K G UI D A AL R E C U P E RO DEI DAT I D A T A R E C O V E R Y d a H A R D D I S K Recupero dati professionale, software e in camera bianca, da ogni marca e modello Seagate, Maxtor, Hitachi, Toshiba, Western

Dettagli

Concetti fondamentali della Tecnologia Dell informazione Parte prima

Concetti fondamentali della Tecnologia Dell informazione Parte prima Concetti fondamentali della Tecnologia Dell informazione Parte prima 1 Concetti di base della tecnologia dell Informazione Nel corso degli ultimi anni la diffusione dell Information and Communication Technology

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

ARCHITETTURA DEL CALCOLATORE

ARCHITETTURA DEL CALCOLATORE Orologio di sistema (Clock) UNITÀ UNITÀ DI DI INGRESSO Schema a blocchi di un calcolatore REGISTRI CONTROLLO BUS DEL SISTEMA MEMORIA DI DI MASSA Hard Hard Disk Disk MEMORIA CENTRALE Ram Ram ALU CPU UNITÀ

Dettagli

CONCETTI BASE dell'informatica Cose che non si possono non sapere!

CONCETTI BASE dell'informatica Cose che non si possono non sapere! CONCETTI BASE dell'informatica Cose che non si possono non sapere! Pablo Genova I. I. S. Angelo Omodeo Mortara A. S. 2015 2016 COS'E' UN COMPUTER? È una macchina elettronica programmabile costituita da

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

Procedura per la configurazione in rete di DMS.

Procedura per la configurazione in rete di DMS. Procedura per la configurazione in rete di DMS. Sommario PREMESSA... 2 Alcuni suggerimenti... 2 Utilizzo di NAS con funzione di server di rete - SCONSIGLIATO:... 2 Reti wireless... 2 Come DMS riconosce

Dettagli

L organizzazione interna della memoria e del banco di registri prevedono generalmente che le uscite di 2 o più componenti

L organizzazione interna della memoria e del banco di registri prevedono generalmente che le uscite di 2 o più componenti Banco di registri e memoria Corso ACSO prof. Cristina SILVANO Politecnico di Milano Componenti di memoria e circuiti di pilotaggio L organizzazione interna della memoria e del banco di registri prevedono

Dettagli

Archivio: è un insieme organizzato di informazioni (movimenti contabili, archivi: clienti/fornitori, personale, magazzino) Proprietà:

Archivio: è un insieme organizzato di informazioni (movimenti contabili, archivi: clienti/fornitori, personale, magazzino) Proprietà: Prof. Emanuele Papotto Gli archivi Archivio: è un insieme organizzato di informazioni (movimenti contabili, archivi: clienti/fornitori, personale, magazzino) Proprietà: tra le informazioni esiste un nesso

Dettagli

Architettura di un computer

Architettura di un computer Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su

Dettagli

= 0, 098 ms. Da cui si ricava t 2 medio

= 0, 098 ms. Da cui si ricava t 2 medio 1. Una macchina ha uno spazio degli indirizzi a 32 bit e una pagina di 8 KB. La tabella delle pagine è completamente nell hardware, con una parola a 32 bit per voce. Quando parte un processo, la tabella

Dettagli

Modulo 1 Le memorie. Si possono raggruppare i sistemi di elaborazione nelle seguenti categorie in base alle possibilità di utilizzazione:

Modulo 1 Le memorie. Si possono raggruppare i sistemi di elaborazione nelle seguenti categorie in base alle possibilità di utilizzazione: Modulo 1 Le memorie Le Memorie 4 ETA Capitolo 1 Struttura di un elaboratore Un elaboratore elettronico è un sistema capace di elaborare dei dati in ingresso seguendo opportune istruzioni e li elabora fornendo

Dettagli

Regole della mano destra.

Regole della mano destra. Regole della mano destra. Macchina in continua con una spira e collettore. Macchina in continua con due spire e collettore. Macchina in continua: schematizzazione di indotto. Macchina in continua. Schematizzazione

Dettagli

Lez. 5 Memorie Secondarie

Lez. 5 Memorie Secondarie Prof. Giovanni Mettivier 1 Dott. Giovanni Mettivier, PhD Dipartimento Scienze Fisiche Università di Napoli Federico II Compl. Univ. Monte S.Angelo Via Cintia, I-80126, Napoli mettivier@na.infn.it +39-081-676137

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche Input/Output n Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi n Tutti più lenti della CPU e della RAM n Necessità di avere moduli di I/O Moduli

Dettagli

STRUTTURE DEI SISTEMI DI CALCOLO

STRUTTURE DEI SISTEMI DI CALCOLO STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

ARCHITETTURA CALCOLATORI: Memoria di massa (o secondaria)

ARCHITETTURA CALCOLATORI: Memoria di massa (o secondaria) ARCHITETTURA CALCOLATORI: Memoria di massa (o secondaria) Dispositivi per la memorizzazione di grandi masse di dati. I dati memorizzati su questo tipo di memoria sopravvivono all esecuzione dei programmi

Dettagli

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale Calcolatori Elettronici La memoria gerarchica La memoria virtuale Come usare la memoria secondaria oltre che per conservare permanentemente dati e programmi Idea Tenere parte del codice in mem princ e

Dettagli

Introduzione all uso del Personal Computer

Introduzione all uso del Personal Computer Introduzione all uso del Personal Computer Cenni di storia dei calcolatori Il Personal Computer: Processo di avvio del computer Sistemi Operativi Il computer, invece, è composto da piccoli rettangoli

Dettagli

La Videosorveglianza Criteri per il dimensionamento dello storage

La Videosorveglianza Criteri per il dimensionamento dello storage La Videosorveglianza Criteri per il dimensionamento dello storage Serie vol 1005/2010 L importanza di registrare le immagini video Il valore di un sistema di videosorveglianza non dipende solo dall abilità

Dettagli

Più processori uguale più velocità?

Più processori uguale più velocità? Più processori uguale più velocità? e un processore impiega per eseguire un programma un tempo T, un sistema formato da P processori dello stesso tipo esegue lo stesso programma in un tempo TP T / P? In

Dettagli

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria

Dettagli

Corso PLC - Manuale Pratico 1

Corso PLC - Manuale Pratico 1 Corso PLC - Manuale Pratico 1 "!#$ % L'unità centrale di un PLC, chiamata più semplicemente CPU, normalmente occupa il primo modulo del rack. Si individua subito in quanto tipicamente è dotata di un selettore,

Dettagli

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini. Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio

Dettagli

Guida all installazione degli Hard Disk SATA ed alla configurazione del RAID

Guida all installazione degli Hard Disk SATA ed alla configurazione del RAID Guida all installazione degli Hard Disk SATA ed alla configurazione del RAID 1. Guida all installazione degli Hard Disk SATA... 2 1.1 Installazione di Hard disk Serial ATA (SATA)... 2 2. Guida alla configurazione

Dettagli

Esempio: aggiungere j

Esempio: aggiungere j Esempio: aggiungere j Eccezioni e interruzioni Il progetto del controllo del processore si complica a causa della necessità di considerare, durante l esecuzione delle istruzioni, il verificarsi di eventi

Dettagli

Memoria Secondaria o di Massa

Memoria Secondaria o di Massa .. Pacman ha una velocità che dipende dal processore...quindi cambiando computer va più velocemente..sarà poi vero? Memoria Secondaria o di Massa dischi fissi (hard disk), floppy disk, nastri magnetici,

Dettagli

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA Tutti gli anni, affrontando l argomento della divisibilità, trovavo utile far lavorare gli alunni sul Crivello di Eratostene. Presentavo ai ragazzi una

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1)

Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1) Transitori Analisi nel dominio del tempo Ricordiamo che si definisce transitorio il periodo di tempo che intercorre nel passaggio, di un sistema, da uno stato energetico ad un altro, non è comunque sempre

Dettagli

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia

Dettagli

MODULO 01. Come è fatto un computer

MODULO 01. Come è fatto un computer MODULO 01 Come è fatto un computer MODULO 01 Unità didattica 02 Guardiamo dentro alla scatola: l hardware In questa lezione impareremo: a conoscere le parti che permettono a un computer di elaborare e

Dettagli

Informatica 1 Lezione 1

Informatica 1 Lezione 1 Informatica 1 Lezione 1 Concetti base: Hardware È l insieme delle parti fisiche, elettroniche e meccaniche che compongono il computer, quali il chip, il mouse, il lettore CDROM, il monitor, le schede,

Dettagli

Organizzazione della memoria principale Il bus

Organizzazione della memoria principale Il bus Corso di Alfabetizzazione Informatica 2001/2002 Organizzazione della memoria principale Il bus Organizzazione della memoria principale La memoria principale è organizzata come un insieme di registri di

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Il memory manager. Gestione della memoria centrale

Il memory manager. Gestione della memoria centrale Il memory manager Gestione della memoria centrale La memoria La memoria RAM è un vettore molto grande di WORD cioè celle elementari a 16bit, 32bit, 64bit (2Byte, 4Byte, 8Byte) o altre misure a seconda

Dettagli

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza

Dettagli

Memoria secondaria. Struttura del disco. Scheduling del disco. Gestione dell unità a disco. Affidabilità dei dischi: RAID

Memoria secondaria. Struttura del disco. Scheduling del disco. Gestione dell unità a disco. Affidabilità dei dischi: RAID Memoria secondaria Struttura del disco Scheduling del disco Gestione dell unità a disco Affidabilità dei dischi: RAID Sistemi Operativi 13.1 Struttura del disco I dischi vengono indirizzati come grandi

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi

Dettagli

Sistemi Operativi. 5 Gestione della memoria

Sistemi Operativi. 5 Gestione della memoria Gestione della memoria Compiti del gestore della memoria: Tenere traccia di quali parti della memoria sono libere e quali occupate. Allocare memoria ai processi che ne hanno bisogno. Deallocare la memoria

Dettagli

Capitolo 11 -- Silberschatz

Capitolo 11 -- Silberschatz Implementazione del File System Capitolo 11 -- Silberschatz Implementazione del File System File system: Definizione dell aspetto del sistema agli occhi dell utente Algoritmi e strutture dati che permettono

Dettagli

Architettura del Personal Computer AUGUSTO GROSSI

Architettura del Personal Computer AUGUSTO GROSSI Il CASE o CABINET è il contenitore in cui vengono montati la scheda scheda madre, uno o più dischi rigidi, la scheda video, la scheda audio e tutti gli altri dispositivi hardware necessari per il funzionamento.

Dettagli

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi

Dettagli

DEFINIZIONE 1/2 memoria ad accesso casuale RAM

DEFINIZIONE 1/2 memoria ad accesso casuale RAM CORSO BASE DI TECNICO RIPARATORE HARDWARE RAM Docente: Dott. Ing. Antonio Pagano DEFINIZIONE 1/2 In informatica la memoria ad accesso casuale, acronimo RAM (del corrispondente termine inglese Random-Access

Dettagli

IL SOFTWARE TIPI DI SOFTWARE. MACCHINE VIRTUALI Vengono definite così perché sono SIMULATE DAL SOFTWARE, UNIFORMANO L ACCESSO SISTEMA OPERATIVO

IL SOFTWARE TIPI DI SOFTWARE. MACCHINE VIRTUALI Vengono definite così perché sono SIMULATE DAL SOFTWARE, UNIFORMANO L ACCESSO SISTEMA OPERATIVO IL SOFTWARE L HARDWARE da solo non è sufficiente a far funzionare un computer Servono dei PROGRAMMI (SOFTWARE) per: o Far interagire, mettere in comunicazione, le varie componenti hardware tra loro o Sfruttare

Dettagli

1) GESTIONE DELLE POSTAZIONI REMOTE

1) GESTIONE DELLE POSTAZIONI REMOTE IMPORTAZIONE ESPORTAZIONE DATI VIA FTP Per FTP ( FILE TRANSFER PROTOCOL) si intende il protocollo di internet che permette di trasferire documenti di qualsiasi tipo tra siti differenti. Per l utilizzo

Dettagli

FIRESHOP.NET. Gestione completa delle fidelity card & raccolta punti. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione completa delle fidelity card & raccolta punti. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione completa delle fidelity card & raccolta punti Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 3 La gestione delle fidelity card nel POS... 4 Codificare una nuova fidelity

Dettagli

12. Implementazione di un File System. 12.1.1 Struttura a livelli. 12.2.1 Allocazione contigua

12. Implementazione di un File System. 12.1.1 Struttura a livelli. 12.2.1 Allocazione contigua 12. Implementazione di un File System 1 Struttura del file system Metodi di allocazione Gestione dello spazio libero Implementazione delle directory Prestazioni ed efficienza 2 Utente 12.1.1 Struttura

Dettagli

Architettura hardware

Architettura hardware Ricapitolando Architettura hardware la parte che si può prendere a calci Il funzionamento di un elaboratore dipende da due fattori principali 1) dalla capacità di memorizzare i programmi e i dati 2) dalla

Dettagli