23.01.2014 Views

Manuale di informatica - Matteo Fontana

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Beowulf<br />

Case<br />

Cd-rom<br />

chipset<br />

come scegliere un server<br />

Cpu<br />

Driver<br />

Firewire<br />

Hard <strong>di</strong>sk<br />

INDICE<br />

#Pagina 43


Beowulf (computer)<br />

Beowulf è un sistema <strong>di</strong> calcolo parallelo basato su<br />

cluster <strong>di</strong> personal computer collegati tramite<br />

reti informatiche standard, senza l'utilizzo <strong>di</strong><br />

apparecchiature sviluppate esplicitamente per il<br />

calcolo parallelo.<br />

Inizialmente venne sviluppato da Donald Becker<br />

alla NASA, ma in seguito lo sviluppo venne<br />

continuato da una comunità internazionale<br />

interessata al calcolo scientifico.


Un Cluster Beowulf normalmente è un cluster <strong>di</strong><br />

computer IBM compatibili utilizzanti software<br />

open source. Affinché un cluster <strong>di</strong> computer possa<br />

essere effettivamente considerato un "Beowulf" si<br />

richiede, che


1.- i vari computer in rete (detti no<strong>di</strong>) e la rete<br />

stessa non abbiano un utilizzo <strong>di</strong>verso da quello del<br />

cluster stesso. In genere l'accesso al sistema e il<br />

suo controllo è possibile solo dal nodo principale, che<br />

spesso è l'unico dotato <strong>di</strong> tastiera e monitor. In<br />

alcuni casi i singoli no<strong>di</strong> sono ad<strong>di</strong>rittura privi <strong>di</strong><br />

memoria <strong>di</strong> massa e <strong>di</strong> <strong>di</strong>schi e il boot avviene via<br />

rete dal nodo principale, o master.<br />

2.- i no<strong>di</strong> e lo stesso materiale <strong>di</strong> rete devono<br />

essere costituiti da macchine e apparati standard<br />

presenti in commercio al dettaglio.


3.- il sistema operativo e il software che gira sul<br />

cluster devono essere "open source". Usualmente il<br />

sistema operativo è GNU/Linux o una delle varie<br />

varianti <strong>di</strong> Unix <strong>di</strong>sponibili gratuitamente.<br />

4.- il Cluster risultante deve essere strutturato per<br />

compiere operazioni che richiedono potenza <strong>di</strong> calcolo<br />

particolarmente elevata; in altri termini un beowulf<br />

deve comportarsi come un Supercomputer


Il fatto che i singoli no<strong>di</strong> siano uguali (o almeno dotati<br />

<strong>di</strong> una potenza <strong>di</strong> calcolo analoga) è chiaramente<br />

apprezzabile in un Beowulf ma non è considerato da<br />

tutti come una con<strong>di</strong>zione necessaria. I collegamenti<br />

vengono realizzati tramite LAN TCP/IP, mentre la<br />

comunicazione e sincronizzazione dei processi vengono<br />

realizzate tramite librerie <strong>di</strong>sponibili gratuitamente.


Un Cluster Beowulf non è gestito da un particolare<br />

software. Spesso si utilizzano librerie per il<br />

calcolo parallelo come le MPI (Message Passing<br />

Interface) e le PVM (Parallel Virtual Machine).<br />

Queste permettono al programmatore <strong>di</strong> <strong>di</strong>videre i<br />

compiti da svolgere su un gruppo <strong>di</strong> computer<br />

collegati in rete e <strong>di</strong> riunire i risultati dei singoli<br />

processi per ottenere la soluzione del problema<br />

trattato.<br />

Il nome del progetto deriva dal poema epico<br />

Beowulf.


Sistemi operativi<br />

Attualmente molte <strong>di</strong>stribuzioni Linux sono state<br />

realizzate appositamente per permettere la<br />

realizzazione <strong>di</strong> un sistema Beowulf in modo<br />

relativamente semplice.<br />

ClusterKnoppix (basata su Knoppix)<br />

ParallelKnoppix (anche questa basata su Knoppix)<br />

Quantian (basata su clusterKnoppix)<br />

PlumpOS<br />

dyne:bolic<br />

Rocks Linux<br />

Oscar<br />

Scyld


Un cluster può essere realizzato semplicemente<br />

utilizzando un CD <strong>di</strong> boot della <strong>di</strong>stribuzione Knoppix in<br />

congiunzione con openMosix. Il computer verrà<br />

automaticamente configurato e collegato al cluster con<br />

una semplice configurazione in modo da poter con<strong>di</strong>videre<br />

la propria potenza <strong>di</strong> calcolo e memoria. Questa tipologia<br />

<strong>di</strong> sistema è molto scalabile, può essere infatti espansa in<br />

modo virtualmente illimitato (sempre che il canale <strong>di</strong><br />

comunicazione non <strong>di</strong>venti il collo <strong>di</strong> bottiglia).<br />

In<strong>di</strong>ce


M A T T E O F O N T A N A


CASE<br />

Per case si intende l'involucro esterno <strong>di</strong> un computer,<br />

solitamente in metallo, alluminio, plastica e ultimamente<br />

anche legno.<br />

Viene identificata dalla parola case, solo la parte operativa<br />

della macchina, in cui risiedono alimentatore, scheda madre,<br />

memorie <strong>di</strong> massa e alcune periferiche <strong>di</strong> input come<br />

<strong>di</strong>spositivi cd-rom e masterizzatori.<br />

Esterni al case, invece, restano monitor, tastiera e,<br />

ovviamente, il mouse.


Dimensioni e forma<br />

I case presentano <strong>di</strong>verse <strong>di</strong>mensioni e <strong>di</strong>verse strutture per<br />

apposito harwdare. Nel 2005 possiamo affermare che lo standard<br />

ATX sia quello più comunemente utilizzato dai riven<strong>di</strong>tori <strong>di</strong><br />

computer.<br />

Un case che supporta una scheda madre <strong>di</strong> tipo ATX può<br />

tranquillamente essere <strong>di</strong> <strong>di</strong>mensioni <strong>di</strong>verse come ad esempio:<br />

Mini Tower, Mi<strong>di</strong>-Tower, Super-Tower) I tower sono invece case<br />

molto alti che sono dunque maggiormente spaziosi e possono<br />

contenere più hardware e in questo senso vengo spesso usati<br />

per fare da server.


Caratteristiche<br />

I case solitamente hanno nella loro parte superiore un alloggio per<br />

l'alimentatore, nella parte centrale <strong>di</strong>versi bay per contenere le<br />

periferiche <strong>di</strong> storaggio e <strong>di</strong> lettura, mentre nella parte inferiore sono<br />

presenti gli slot che fungono da uscita per l'hardware che fa uso <strong>di</strong><br />

slot pci.<br />

La scheda madre viene fissata sul pannello destro del case (visto<br />

frontalmente) attraverso alcune viti. Tipicamente un case ha 4 bay da<br />

5,25" e 3 da 3,5" che servono per l'installazione <strong>di</strong> hard <strong>di</strong>sk, lettori<br />

floppy, lettori cd/dvd, masterizzatori e card reader. Nella parte<br />

anteriore del case è generalmente presente il bottone <strong>di</strong> accensione<br />

e spegnimento accompagnato dal bottone <strong>di</strong> reset che permette <strong>di</strong><br />

riavviare il pc. Più in basso <strong>di</strong> questi due bottoni vi sono due piccoli<br />

led: uno in<strong>di</strong>ca lo stato <strong>di</strong> accensione mentre l'altro l'attività dell'hard<br />

<strong>di</strong>sk, entrambi i LED vengono alimentati grazie a dei connettori che<br />

si collegano <strong>di</strong>rettamente alla scheda madre


L'espressione mod<strong>di</strong>ng o case mod<strong>di</strong>ng si<br />

riferisce alla pratica <strong>di</strong> mo<strong>di</strong>ficare il case <strong>di</strong> un<br />

computer, soprattutto allo scopo <strong>di</strong> migliorarne e<br />

personalizzarne l'estetica. Un esempio classico<br />

<strong>di</strong> mod<strong>di</strong>ng consiste nell'aprire nel fianco del<br />

case una finestra che consente <strong>di</strong> osservare i<br />

componenti interni del PC (in questo senso, il<br />

mod<strong>di</strong>ng potrebbe avere la valenza non<br />

secondaria <strong>di</strong> mostrare la potenza o la qualità dei<br />

componenti installati)


in<strong>di</strong>ce


Dal CD ROM al linguaggio binario ed ai sistemi <strong>di</strong><br />

numerazione posizionali<br />

Per la lettura <strong>di</strong> un CD si<br />

sfrutta un raggio laser che<br />

rileva le minuscole<br />

incisioni praticate durante<br />

la fase <strong>di</strong> registrazione; il<br />

raggio viene assorbito<br />

dalle cavità opache<br />

mentre viene riflesse<br />

dalle sporgenze lucide. Si<br />

crea una sequenza <strong>di</strong><br />

lampi <strong>di</strong> luce che<br />

costituisce un linguaggio<br />

binario.<br />

C O N T I N U A<br />

01/07/13 43


in<strong>di</strong>ce<br />

Ad ogni assorbimento corrisponde lo “0” mentre ad ogni<br />

riflessione è associato “1”. La successione <strong>di</strong> 0 e <strong>di</strong> 1<br />

convertita in impulsi elettrici verrà trasformata dal computer<br />

in immagini e suoni.<br />

C O N T I N U A<br />

01/07/13 44


Nei personal computer il termine chipset viene utilizzato per<br />

in<strong>di</strong>care l'insieme <strong>di</strong> chip <strong>di</strong> una scheda madre che si occupano <strong>di</strong><br />

smistare e <strong>di</strong>rigere il traffico <strong>di</strong> informazioni passante attraverso<br />

il Bus <strong>di</strong> sistema, fra CPU, RAM e controller delle periferiche <strong>di</strong><br />

input/output (come Floppy <strong>di</strong>sk, Hard <strong>di</strong>sk ecc.). Attualmente i<br />

principali produttori <strong>di</strong> chipset sono Intel, AMD (in seguito<br />

all'acquisizione <strong>di</strong> ATI), nVi<strong>di</strong>a, VIA Technologies e SiS.<br />

M A T T E O F O N T A N A


M A T T E O F O N T A N A


naturalmente anche il Chipset ha una sua "velocità" che viene<br />

misurata in MHz come nel caso dei processori e <strong>di</strong>pende dalla sua<br />

architettura e dalla tecnologia implementata in esso.<br />

A seconda del tipo processore supportato, i chipset<br />

possono avere gran<strong>di</strong> <strong>di</strong>fferenze strutturali.<br />

M A T T E O F O N T A N A


Intel continua ad utilizzare la sud<strong>di</strong>visione del Chipset in due chip<br />

principali. Nella maggior parte dei casi abbiamo un chip de<strong>di</strong>cato<br />

alle interfacce ad alta velocità (Memory controller RAM e<br />

controller grafica AGP o PCI Express) e un altro chip che supporta<br />

tutte le altre interfacce <strong>di</strong> I/O. Questa configurazione viene<br />

schematizzata graficamente collocando la CPU in cima, il chip <strong>di</strong><br />

comunicazione con grafica e memoria sotto la CPU e il chip con le<br />

interfacce <strong>di</strong> I/O più in basso. Per questo motivo i due chip del<br />

Chipset hanno preso il nome <strong>di</strong> Northbridge (ponte Nord) e<br />

Southbridge (ponte Sud). Dal 2008 anno in cui è previsto l'arrivo<br />

sul mercato del processore Itanium 2 basato sul core Tukwila,<br />

anche Intel adotterà, come già fatto da Advanced Micro Devices<br />

(e spiegato qui <strong>di</strong> seguito), il controller della memoria RAM<br />

integrato.<br />

M A T T E O F O N T A N A


M A T T E O F O N T A N A


M A T T E O F O N T A N A


M A T T E O F O N T A N A


AMD Advanced Micro Devices con l'ultima serie <strong>di</strong> CPU (quelli<br />

appartenenti alla famiglia K8 ovvero gli Athlon_64 e gli Opteron)<br />

ha intrapreso la strada dell'integrazione. Infatti le attuali<br />

schede madri per processori AMD non presentano più il<br />

Northbridge le cui funzioni (principalmente il controller della<br />

memoria RAM) sono state integrate all'interno della CPU stessa.<br />

Questa comporta alcuni vantaggi e svantaggi:<br />

M A T T E O F O N T A N A


Vantaggi<br />

Minore complessità delle schede madri (meno piste <strong>di</strong><br />

collegamento) e, quin<strong>di</strong>, minor costo<br />

Velocità del Northbridge maggiore, infatti in questo caso<br />

questa velocità <strong>di</strong>pende <strong>di</strong>rettamente dalla velocità della CPU<br />

stessa, sicuramente maggiore rispetto alle velocità dei<br />

Northbridge attuali<br />

Minore ritardo nella risposta (Latenza) visto che i dati<br />

elaborati non devono passare attraverso il Bus per ritornare<br />

alla CPU<br />

M A T T E O F O N T A N A


Svantaggi<br />

Impossibilità <strong>di</strong> cambiare il Northbridge; essendo<br />

esso integrato nella CPU anche cambiando Scheda<br />

madre questo rimane lo stesso, quin<strong>di</strong> non si ha la<br />

possibilità <strong>di</strong> cambiare le tecnologie implementate<br />

in<strong>di</strong>ce<br />

M A T T E O F O N T A N A


SCEGLIERE il Server


matteofontana


1. Componenti per il server, come scegliere il server perfetto<br />

2. Di quali componenti ha bisogno un server?<br />

3. Il green computing e i componenti del server<br />

4. Il processore<br />

5. Il Disco Fisso<br />

6. La memoria<br />

7. Il sistema operativo<br />

8. Costruire o comprare i propri server ?<br />

matteofontana


Componenti per il server, come scegliere<br />

il server perfetto<br />

Tutte le aziende sono alla ricerca delle migliori macchina per<br />

lo svolgimento del lavoro nel data center, e se da una parte<br />

tutti cercano il massimo delle performance, dall'altra, il<br />

conto dei costi <strong>di</strong> queste ultime riguarda ugualmente tutte le<br />

tipologie <strong>di</strong> business, la soluzione ottimale è quin<strong>di</strong> molto<br />

<strong>di</strong>fficile da scegliere.<br />

Ve<strong>di</strong>amo quali sono i componenti a cui dobbiamo prestare più<br />

attenzione, con una piccola introduzione alla gestione<br />

energetica dei nostri server.<br />

matteofontana


Di quali componenti ha bisogno un server?<br />

Oggi ci sono decine <strong>di</strong> processori nel mercato, prodotti da Intel<br />

o da AMD, la scelta è ampia, ma come scegliere il migliore per<br />

noi? Ovviamente la scelta del processore per il nostro server<br />

<strong>di</strong>pende fortemente dalle nostre applicazioni, ad esempio<br />

possiamo considerare il caso <strong>di</strong> un PCs desktop per uso generico,<br />

oppure ad una workstation per la grafica, test e <strong>di</strong>mostrazioni<br />

matematiche, sviluppo e programmazione delle applicazioni, in<br />

questo caso avremo sicuramente bisogno <strong>di</strong> un modello molto<br />

performante, in particolare nella velocità <strong>di</strong> calcolo. In ultimo, se<br />

necessitiamo <strong>di</strong> un server, dovremo avere un processore<br />

costruito appositamente per ricevere migliaia <strong>di</strong> richieste al<br />

secondo con una buona gestione I/O.<br />

matteofontana


Cosa abbiamo bisogno esattamente?<br />

Un server necessita <strong>di</strong> essere molto performante, in grado <strong>di</strong><br />

rispondere alle richieste in tempi più brevi rispetto ad altre macchine,<br />

per questo necessita <strong>di</strong> ampie performance nel sottosistema, IO e<br />

Storage (quin<strong>di</strong> RAM e <strong>di</strong>schi fissi) e un buon processore.<br />

Le componenti I/O sono per lo più schede <strong>di</strong> rete, bus interni e chipset<br />

bus. La soluzione migliore solitamente ha in questo comparto le più<br />

recenti tecnologie, dato che il nostro server solitamente dovrà lavorare<br />

con migliaia <strong>di</strong> richieste, le quali richiedono un grosso scambio <strong>di</strong> dati<br />

tra il processore e il sottosistema citato sopra, così come le nostre<br />

schede <strong>di</strong> rete saranno una componente primaria nel sistema, per il<br />

collegamento e lo scambio <strong>di</strong> dati con il mondo esterno.<br />

matteofontana


Per quanto riguarda il comparto storage, se ci troviamo <strong>di</strong> fronte ad un<br />

file server o ad un web application server, allora il nostro sistema<br />

necessita <strong>di</strong> hard <strong>di</strong>sk molto veloci, oltre che <strong>di</strong> una buona quantità <strong>di</strong><br />

memoria. Il <strong>di</strong>sco fisso è uno dei componenti fondamentali dato che in<br />

quasi tutti i sistemi è uno dei componenti che rappresentano i cosidetti<br />

colli <strong>di</strong> bottiglia. Per quanto riguarda infine la scelta del processore,<br />

nelle workstations le CPU spendono la maggior parte del loro tempo nel<br />

processare i dati, nei servers la situazione è <strong>di</strong>versa. All'interno <strong>di</strong> un<br />

sistema server la CPU spende la maggior parte del proprio tempo nei<br />

processi I/O, e solamente poi nel processare i dati.<br />

Per prima cosa quin<strong>di</strong>, nella scelta <strong>di</strong> un processore per un server, andremo a vedere la tipologia <strong>di</strong><br />

BUS che utilizza, solo in seguito andremo a vedere la capacità <strong>di</strong> calcolo e la sua frequenza.<br />

matteofontana


Il green computing e i componenti del server<br />

L'energia è una risorsa scarsa e soprattutto molto costosa. Questo<br />

influisce molto e continuerà a farlo in futuro, sul modo in cui i server<br />

vengono progettati e posti nei data center. Nonostante ci siano oggi<br />

tecnologie come la virtualizzazione, il green computing e altre strumenti<br />

utili per il risparmio energetico, il mio obiettivo in questo articolo è<br />

quello <strong>di</strong> fornire una spiegazione <strong>di</strong> come tenere sotto controllo i consumi<br />

e scegliere <strong>di</strong> conseguenza i nostri servers.<br />

Quando misuriamo i nostri consumi elettrici possiamo utilizzare dei<br />

semplicissimi conti, non ci serve altro.<br />

Iniziamo con un esempio: la nostra cara vecchia lampa<strong>di</strong>na, in questo caso assumiamo sia da 60 watt. Le compagnie che<br />

forniscono energia, misurano i consumi in Kwatt per ora. Sempre utilizzando la nostra lampa<strong>di</strong>na come esempio, se la<br />

lasciamo accesa per un'ora sappiamo che consumeremo 60 watt ogni ora, ovvero 0.06 Kwatt; facciamo finta che la nostra<br />

compagnia energetica applichi un prezzo <strong>di</strong> 0.083 dollari per ogni kilowatt, sappiamo con dei semplici calcoli che la nostra<br />

lampa<strong>di</strong>na, accesa per un'intera ora, ci costa 0.0050 dollari (0.06 * 0.083).<br />

matteofontana


Effettivamente non costa nulla, ma proviamo a eseguire il calcolo su un<br />

anno, arriviamo a 47,15 dollari, una cifra considerevole considerando<br />

che si tratta solamente <strong>di</strong> una lampa<strong>di</strong>na. Per quanto ci possa sembrare<br />

tanto, in confronto ad un server è davvero poco, e noi,<br />

sfortunatamente, dobbiamo parlare <strong>di</strong> server in questo caso. Quin<strong>di</strong>,<br />

quali consumi dobbiamo aspettarci, in me<strong>di</strong>a, per un server? Secondo<br />

alcune ricerche, pubblicate da Principled Technologies e Dell, un singolo<br />

Dell PowerEdge M600 consuma in me<strong>di</strong>a 383,75 W in idle e 454,39 W<br />

sotto carico. (vedere la tabella 1)<br />

matteofontana


Utilizzando i conti <strong>di</strong> prima, arriviamo a 280 dollari annui <strong>di</strong> costo per<br />

alimentare il nostro server in idle. Un parametro che dobbiamo prendere<br />

con le pinze, ricor<strong>di</strong>amoci infatti che il consumo varia in base al<br />

workload, e componenti come l'hard <strong>di</strong>sk e la CPU sono tra quelli che<br />

consumano maggiormente.<br />

Approfondendo la ricerca sui siti dei maggiori produttori <strong>di</strong> hardware<br />

(IBM, Dell, Sun ecc) troviamo che il consumo me<strong>di</strong>o in idle è <strong>di</strong> 360/410<br />

W, <strong>di</strong> 450-500 W sotto stress e <strong>di</strong> 540-600W sotto un forte carico;<br />

nelle modalità "low power" un server in me<strong>di</strong>a consuma 200-300 Watts in<br />

idle, 300-350 Watts sotto stress e 340-380 Watts sotto un forte<br />

carico. Ovviamente non tutte le case produttrici ottengono gli stessi<br />

valori, nella ricerca effettuata Dell è risultata una delle migliori, con<br />

consumo minore rispetto HP e ancora minore rispetto ad IBM.<br />

matteofontana


Il processore<br />

Per quanto riguarda il processore, per un server i dati suggeriscono <strong>di</strong><br />

utilizzare un AMD Opteron, in versione Quadcore o Dualdcore. La<br />

ragione nasce da una serie <strong>di</strong> considerazioni tecnologiche, AMD fornisce<br />

migliori performance I/O grazie alla tecnologia HyperTransport, un<br />

approccio decisamente migliore, in termini <strong>di</strong> risultati, rispetto a quello<br />

che avviene sugli Intel Xeon; gli Opteron hanno anche prezzi ottimi e in<br />

molti casi si puo’ constatare un minore consumo rispetto ad altre<br />

soluzioni. D'altro canto, Intel, con la linea Xeon fornisce in alcuni casi<br />

migliori performance e una più vasta scelta <strong>di</strong> CPU.<br />

matteofontana


Se l’obbiettivo primario è l'efficienza (performance per watt), il<br />

consumo energetico, e la possibilità <strong>di</strong> aggiornare l'architettura senza<br />

particolari problemi, allora il suggerimento rimane un AMD Opteron; nel<br />

caso invece quello che conti maggiormente siano le performance, allora<br />

otterrete più sod<strong>di</strong>sfazioni scegliendo una CPU Intel. Dunque se<br />

l'intenzione è quella <strong>di</strong> realizzare un data center ottimizzato per alte<br />

performance, clustering delle macchine e <strong>di</strong>stribuzione dei processi,<br />

allora Intel è la via migliore, nel caso invece lo stesso data center abbia<br />

come compito principale il webhosting, AMD rimane la migliore<br />

soluzione.<br />

matteofontana


La seguente lista espone una serie degli ultimi modelli <strong>di</strong> CPU AMD e<br />

Intel che potrebbero fare al caso nostro nei prossimi acquisti:<br />

AMD:<br />

AMD Quad-Core Opteron 2384 2.7GHz (75 W).<br />

AMD Quad-Core Opteron 2382 2.6GHz (75 W).<br />

AMD Quad-Core Opteron 2380 2.5GHz (75 W).<br />

AMD Quad-Core Opteron 2378 2.4GHz (75 W).<br />

AMD Quad-Core Opteron 2376 2.3GHz (75 W).<br />

AMD Quad-Core Opteron 2376 HE 2.3GHz (55 W).<br />

Intel:<br />

Intel Xeon E5570 2.93GHz (90 W, Nehalem Micro- architecture).<br />

Intel Xeon E5560 2.80GHz (90 W, Nehalem Micro- architecture).<br />

Intel Xeon E5550 2.66Hz (90 W, Nehalem Micro- architecture).<br />

Intel Xeon E5540 2.53GHz (80 W, Nehalem Micro- architecture).<br />

Intel Xeon E5520 2.26GHz (60 W, Nehalem Micro- architecture).<br />

Intel Xeon X5472 3GHz (120 W).<br />

Intel Xeon E5440 2.83GHz (80 W).<br />

Intel Xeon E5430 2.66GHz (50 W)<br />

Intel Xeon E5410 2.33GHz (50 W).<br />

matteofontana


Bisogna anche <strong>di</strong>re che AMD fornisce una serie <strong>di</strong> CPU (serie<br />

numero 8300) che supporta fino a 8 processori per server. Anche<br />

Intel ha realizzato uno Xeon a 6 core, ma si tratta per ora <strong>di</strong> una<br />

soluzione ancora troppo costosa in termini energetici. Un commento<br />

finale su questo componente, bisogna riconoscere che Intel è la<br />

regina delle workstation, e la ragione è semplice, l'unità logica e<br />

matematica dei processori Xeon attualmente è molto più avanzata<br />

<strong>di</strong> quelli AMD.<br />

matteofontana


Il Disco Fisso<br />

Un server necessita <strong>di</strong> <strong>di</strong>schi fissi davvero molto veloci, non è pensabile<br />

che il processore o la parte <strong>di</strong> rete rimanga troppo in attesa dei dati da<br />

parte del <strong>di</strong>sco fisso. Bisogna innanzitutto ricordare che il <strong>di</strong>sco fisso è<br />

il principale collo <strong>di</strong> bottiglia <strong>di</strong> ogni sistema, il suo problema principale è<br />

che è basato su parti meccaniche, e la tecnologia allo stato solido, SSD,<br />

è ancora troppo costosa.. Il "Samsung F1, WD RE3 e il WD VelociRaptor"<br />

sono ottime soluzioni.<br />

matteofontana


Il VelociRaptor funziona alla velocità <strong>di</strong> 10.000 RPM, e fornisce ottime<br />

performance. Lo stesso si può <strong>di</strong>re anche per il Samsung F1 e il Western<br />

Digital RE 3, con i quali si ottengono quasi sempre gli stessi risultati.<br />

Sull'utilizzo del RAID, il mio suggerimento è quello <strong>di</strong> utilizzare il RAID<br />

10, fornisce una maggiore sicurezza dei dati e una buona velocità, oltre<br />

ad essere sicuramente più performante del RAID 5. Le migliori<br />

performance in termini <strong>di</strong> velocità si ottengono con il VelociRaptor <strong>di</strong><br />

Western Digital, ma nel caso la vostra scelta sia quella <strong>di</strong> utilizzare un<br />

sistema in RAID e pensare maggiormente alla sicurezza dei dati, allora<br />

rimangono ottime soluzioni il Samsung F1 e il Western Digital RE 3.<br />

matteofontana


La Memoria<br />

La scelta della memoria <strong>di</strong>pende fortemente dalla scelta del processore<br />

che adottiamo per il nostro sistema. Bisogna ricordare che la memoria<br />

non è tra i componenti che consumano più energia all'interno del<br />

sistema, l'unico consiglio è <strong>di</strong> acquistare banchi <strong>di</strong> memoria prodotti da<br />

vendors famosi e utilizzarne sempre una quantità superiore a quella<br />

realmente necessaria, le applicazioni e il sistema operativo possono<br />

farne largo uso come cache e <strong>di</strong>minuire quin<strong>di</strong> gli accessi al <strong>di</strong>sco fisso,<br />

migliorando le prestazioni generali del sistema.<br />

matteofontana


Il sistema operativo<br />

Mettere in relazione la scelta del sistema operativo con i consumi<br />

energetici del nostro sistema è ancora piuttosto <strong>di</strong>fficile, e<br />

sull'argomento ci sono solamente test e nulla <strong>di</strong> veramente certo. Vi<br />

sono alcuni test in merito, soprattutto <strong>di</strong> comparazione fra Windows e<br />

Linux, ma niente <strong>di</strong> davvero certo per essere adottato come base per<br />

una decisione.<br />

Il consiglio è valido invece se si restringe l'area <strong>di</strong> scelta ad un solo<br />

can<strong>di</strong>dato, come nel caso <strong>di</strong> Windows Server, in questo caso ci sono<br />

<strong>di</strong>versi papers che <strong>di</strong>mostrano che, ove possibile, un passaggio a<br />

Windows Server 2008 dalla versione 2003 può apportare dei benefici<br />

in termini <strong>di</strong> risparmio energetico e gestione delle macchine a livello<br />

hardware.<br />

matteofontana


Costruire o comprare i propri server?<br />

Si tratta <strong>di</strong> una domanda che non tutti possono porsi, ma che merita<br />

sicuramente una breve <strong>di</strong>scussione ragionata. La maggior parte delle<br />

compagnie al giorno d'oggi acquista i propri server da compagnie come<br />

Dell, HP, IBM, e Sun, poi ci sono compagnie come Google che decidono <strong>di</strong><br />

realizzare internamente le proprie macchine, ne costruiscono a migliaia<br />

con stu<strong>di</strong> <strong>di</strong> design e ingegnerizzazione che richiedono figure specifiche<br />

all'interno dei team aziendali.<br />

Ben Jai, la persona che si è occupata del design della maggior parte dei<br />

server <strong>di</strong> Google, ha svelato recentemente quale sia il segreto <strong>di</strong> queste<br />

macchine: il maggior punto <strong>di</strong> forza del design dei server <strong>di</strong> Google è che<br />

ogni macchina ha una batteria interna da 12-volt che interviene nel caso<br />

venga a mancare l'alimentazione elettrica principale.<br />

matteofontana


Perchè scegliere <strong>di</strong> mettere una batteria all'interno <strong>di</strong> un server? La<br />

maggior parte dei data centers si dotano <strong>di</strong> generatori <strong>di</strong> elettricità<br />

(UPS) che intervengono nel caso <strong>di</strong> guasto alle linee primarie <strong>di</strong><br />

alimentazione elettrica, questi sistemi, composti da gran<strong>di</strong> batterie,<br />

hanno il compito <strong>di</strong> alimentare l'intero data center negli istanti <strong>di</strong> tempo<br />

che precedono l'entrata in funzione dei generatori. Appare chiaro che<br />

collocare all'interno del server una piccola batteria per l'alimentazione<br />

del server consente è sicuramente più conveniente e meno costoso <strong>di</strong><br />

gran<strong>di</strong> UPS, senza contare che il numero <strong>di</strong> batterie è <strong>di</strong>rettamente<br />

corrispondente al numero <strong>di</strong> server, e non si ha pertanto alcun spreco <strong>di</strong><br />

capacità all'interno della struttura.<br />

matteofontana


in<strong>di</strong>ce<br />

Per concludere, bisogna sicuramente prendere atto del fatto che<br />

costruire i propri server "in casa" ha indubbi vantaggi, ma richiede<br />

anche uno sforzo economico non in<strong>di</strong>fferente, che non tutte le<br />

compagnie sono <strong>di</strong>sposte a investire. Oltre a questo, bisogna aggiungere<br />

che il design <strong>di</strong> macchine <strong>di</strong>rettamente nella propria realtà aziendale<br />

richieste team <strong>di</strong> ingegneri esperti e con molta esperienza alle spalle,<br />

risorse che non risultano sempre facilmente reperibili sul mercato.<br />

matteofontana


L'architettura Amx86 (1991-1995) [mo<strong>di</strong>fica]<br />

Am386<br />

Am486<br />

Am5x86<br />

L'architettura K5 (1995) [mo<strong>di</strong>fica]<br />

AMD K5 (SSA5, 5k86)<br />

L'architettura K6 (1996-2001) [mo<strong>di</strong>fica]<br />

AMD K6 (NX686, Little Foot)<br />

AMD K6-2 (Chompers, CXT)<br />

AMD K6-2-P<br />

AMD K6-III (Sharptooth)<br />

AMD K6-2+<br />

AMD K6-III+<br />

L'architettura K7 (1999-2005) [mo<strong>di</strong>fica]<br />

Athlon Classic (Argon, Pluto, Orion, Thunderbird)<br />

Athlon XP (Palomino, Thoroughbred-A, Thoroughbred-B, Thorton, Barton)<br />

Athlon 4 (Corvette)<br />

Athlon XP-M (Thoroughbred A/B, Barton, Dublin)<br />

Duron (Spitfire, Morgan, Applebred)<br />

Duron-M (Camaro, Mobile Morgan)<br />

Sempron (Thoroughbred-B, Barton)<br />

Settore Server<br />

Athlon MP (Palomino, Thoroughbred A/B, Barton)<br />

L'architettura K8 (2003- ) [mo<strong>di</strong>fica]<br />

Athlon 64 (ClawHammer, Newcastle, Winchester, Venice, San Diego, Orleans, Lima)


Versioni per computer desktop economici [mo<strong>di</strong>fica]<br />

Pentium Dual Core - (Conroe-L, Wolfdale-L)<br />

Celeron (serie xxx) - (Conroe-L, Wolfdale-L)<br />

Celeron Dual Core - (Conroe-L, Wolfdale-L)<br />

La gamma Nehalem [mo<strong>di</strong>fica]<br />

Core i7 - (Bloomfield)<br />

Core i7 Extreme - (Bloomfield)<br />

Core i5<br />

Versione a 2 core - (Havendale*)<br />

Versione a 4 core - (Lynnfield*)<br />

Nehalem porteranno con sé il nuovo nome commerciale <strong>di</strong> Core i5 ma Intel non ha ancora<br />

nseguenza, al momento esse vengono inquadrate semplicemente in base al numero <strong>di</strong> cor<br />

Processori de<strong>di</strong>cati ai computer portatili e <strong>di</strong>spositivi mobili [mo<strong>di</strong>fica]<br />

La gamma Pentium [mo<strong>di</strong>fica]<br />

Mobile Pentium MMX - (Tillamook)<br />

Pentium II-M - (Tonga)<br />

Mobile Pentium II PE - (Dixon)<br />

Pentium III-M - (Tualatin)<br />

Pentium 4-M - (Northwood)<br />

Mobile Pentium 4 - (Northwood)<br />

Pentium M - (Banias, Dothan)<br />

La gamma Core [mo<strong>di</strong>fica]<br />

Core Duo - (Yonah)


L'unità centrale <strong>di</strong> elaborazione, in sigla CPU (dal corrispondente<br />

termine inglese Central Processing Unit), anche chiamata,<br />

esclusivamente nella sua implementazione fisica, processore, è uno dei<br />

due componenti principali della macchina <strong>di</strong> von Neumann, il modello su<br />

cui sono basati la maggior parte dei moderni computer.


Compito della CPU è quello <strong>di</strong> leggere i dati<br />

dalla memoria ed eseguirne le istruzioni


In base all'organizzazione della memoria si possono <strong>di</strong>stinguere due<br />

famiglie <strong>di</strong> CPU:<br />

con architettura <strong>di</strong> von Neumann classica, in cui dati e istruzioni<br />

risiedono nella stessa memoria (è dunque possibile avere co<strong>di</strong>ce<br />

automo<strong>di</strong>ficante). Questa architettura è la più comune, perché è più<br />

semplice e flessibile.<br />

con architettura Harvard, in cui dati e istruzioni risiedono in due<br />

memorie separate. Questa architettura garantisce migliori prestazioni<br />

poiché le due memorie possono lavorare in parallelo ma è più complessa<br />

da gestire. È tipicamente utilizzata nei DSP.


Struttura della CPU<br />

Una generica CPU contiene:<br />

o ALU (Arithmetic Logic Unit)<br />

o Unità <strong>di</strong> Controllo CU (control unit)<br />

o Registri


L’ALU (Arithmetic Logic Unit) che si occupa <strong>di</strong><br />

eseguire le operazioni logiche e aritmetiche;


L’Unità <strong>di</strong> Controllo CU (control unit) che legge dalla memoria le<br />

istruzioni, se occorre legge anche i dati per l'istruzione letta,<br />

esegue l'istruzione e memorizza il risultato se c'è, scrivendolo in<br />

memoria o in un registro della CPU.


dei registri, speciali locazioni <strong>di</strong> memoria interne alla CPU,<br />

molto veloci, a cui è possibile accedere molto più<br />

rapidamente che alla memoria: il valore complessivo <strong>di</strong> tutti i<br />

registri della CPU costituisce lo stato in cui essa si trova<br />

attualmente. Due registri sempre presenti sono:


il registro IP (Instruction Pointer) o PC (Program Counter), che<br />

contiene l'in<strong>di</strong>rizzo in memoria della prossima istruzione da<br />

eseguire;


il registro dei flag: questo registro non contiene valori numerici<br />

convenzionali, ma è piuttosto un insieme <strong>di</strong> bit, detti appunto flag, che<br />

segnalano stati particolari della CPU e alcune informazioni sul risultato<br />

dell'ultima operazione eseguita.<br />

I flag più importanti sono:<br />

Flag <strong>di</strong> stato:<br />

Flag <strong>di</strong> controllo:<br />

Overflow: in<strong>di</strong>ca se il risultato dell'operazione precedente era troppo grande per il campo risultato: 0 assenza<br />

<strong>di</strong> overflow,1 overflow<br />

Zero: vale 1 se l'ultima operazione ha avuto risultato zero, altrimenti vale 0.<br />

Carry: vale 1 se l'ultima operazione ha ecceduto la capacità del registro che contiene il risultato, altrimenti<br />

vale 0 (esempio: in un registro<br />

a 8 bit, che può rappresentare solo numeri da 0 a 255, la somma 178+250 darebbe come risultato 172,<br />

cioè 428 - 256, e il carry<br />

verrebbe posto a 1 insieme al flag <strong>di</strong> overflow).<br />

Segno: in<strong>di</strong>ca il segno del risultato dell'operazione precedente: 0 risultato positivo,1 risultato negativo<br />

Interrupt: se a questo flag viene assegnato valore 1, la CPU smette <strong>di</strong> rispondere alle richieste <strong>di</strong> servizio esterne delle<br />

periferiche<br />

(i segnali delle linee IRQ) finché non viene ripristinato al valore 0, o finché non arriva dall'esterno un segnale <strong>di</strong> RESET.


Una generica CPU deve eseguire i suoi compiti sincronizzandoli con il<br />

resto del sistema: perciò è dotata, oltre a quanto sopra elencato,<br />

anche <strong>di</strong> uno o più bus interni che si occupano <strong>di</strong> collegare registri,<br />

ALU, unità <strong>di</strong> controllo e memoria: inoltre all'unità <strong>di</strong> controllo interna<br />

della CPU fanno capo una serie <strong>di</strong> segnali elettrici esterni che si<br />

occupano <strong>di</strong> tenere la CPU al corrente dello stato del resto del<br />

sistema e <strong>di</strong> agire su <strong>di</strong> esso. Il tipo e il numero <strong>di</strong> segnali esterni<br />

gestiti possono variare ma alcuni, come il RESET, le linee <strong>di</strong> IRQ e il<br />

CLOCK sono sempre presenti.


Una CPU è un circuito <strong>di</strong>gitale sincrono: vale a <strong>di</strong>re che il suo stato<br />

cambia ogni volta che riceve un impulso da un segnale <strong>di</strong> sincronismo<br />

detto clock, che ne determina <strong>di</strong> conseguenza la velocità operativa,<br />

detta velocità <strong>di</strong> clock: quin<strong>di</strong> il tempo <strong>di</strong> esecuzione <strong>di</strong> una istruzione<br />

si misura in cicli <strong>di</strong> clock, cioè in quanti impulsi <strong>di</strong> clock sono necessari<br />

perché la CPU la completi. In effetti, una parte importante e<br />

delicata <strong>di</strong> ogni CPU è il sistema <strong>di</strong> <strong>di</strong>stribuzione che porta il segnale<br />

<strong>di</strong> clock alle varie unità e sottounità <strong>di</strong> cui è composta, per fare in<br />

modo che siano sempre in sincronia: tale sistema si <strong>di</strong>rama in una<br />

struttura ad albero con <strong>di</strong>visori e ripetitori che giunge ovunque nella<br />

CPU. Nei processori più moderni (Pentium, Athlon, PowerPC) questa<br />

"catena <strong>di</strong> ingranaggi" elettronica arriva ad impiegare circa il 30% <strong>di</strong><br />

tutti i transistor <strong>di</strong>sponibili.


La velocità <strong>di</strong> questa <strong>di</strong>stribuzione determina in maniera <strong>di</strong>retta la<br />

massima frequenza operativa <strong>di</strong> una CPU: nessuna CPU può essere più<br />

veloce del suo critical path, cioè del tempo che impiega il clock per<br />

percorrere il tratto più lungo in tutto l'albero <strong>di</strong> <strong>di</strong>stribuzione del clock.<br />

Per esempio, se il segnale <strong>di</strong> clock <strong>di</strong> una data CPU impiega un<br />

nanosecondo per attraversare tutto il chip ed arrivare fino all'ultima<br />

sottounità, questa CPU potrà operare a non più <strong>di</strong> 1 GHz, perché<br />

altrimenti le sue componenti interne perderebbero la sincronizzazione,<br />

con risultati impreve<strong>di</strong>bili (per avere un margine <strong>di</strong> sicurezza, il limite<br />

pratico sarà anzi ben minore <strong>di</strong> 1GHz).


Set d'istruzioni macchina


Le istruzioni <strong>di</strong> una CPU (instruction set) sono semplicemente dei<br />

numeri, detti opcode o co<strong>di</strong>ci operativi: in base al loro valore l'unità <strong>di</strong><br />

controllo intraprende delle azioni predefinite, come per esempio leggere<br />

la successiva locazione <strong>di</strong> memoria per caricare un dato, oppure attivare<br />

la ALU per eseguire un calcolo, oppure scrivere il contenuto <strong>di</strong> un<br />

registro in una certa locazione <strong>di</strong> memoria o in un altro registro, oppure<br />

una combinazione <strong>di</strong> queste.


Tipicamente la CPU è l'Interprete del linguaggio macchina. Come tutti<br />

gli interpreti, si basa sul seguente ciclo:<br />

Acquisizione dell'istruzione: il processore preleva l'istruzione dalla<br />

memoria, presente nell'in<strong>di</strong>rizzo (tipicamente logico) specificato da un<br />

registro "speciale" ("speciale" opposto <strong>di</strong> "generico"), il PC<br />

Deco<strong>di</strong>fica: una volta che la word è stata prelevata, viene determinata<br />

quale operazione debba essere eseguita e come ottenere gli operan<strong>di</strong>, in<br />

base ad una funzione il cui dominio è costituito dai co<strong>di</strong>ci operativi<br />

(tipicamente i bit alti delle word) ed il codominio consiste nei brani <strong>di</strong><br />

microprogramma da eseguire<br />

Esecuzione: viene eseguita la computazione desiderata. Nell'ultimo passo<br />

dell'esecuzione viene incrementato il PC: tipicamente <strong>di</strong> uno se<br />

l'istruzione non era un salto con<strong>di</strong>zionale, altrimenti l'incremento <strong>di</strong>pende<br />

dall'istruzione e dall'esito <strong>di</strong> questa


Velocità <strong>di</strong> clock<br />

La velocità o frequenza <strong>di</strong> clock è il numero <strong>di</strong> commutazioni tra i<br />

due livelli logici "0" e "1" che circuiti logici interni ad un'unità <strong>di</strong><br />

calcolo o <strong>di</strong> un microprocessore sono in grado <strong>di</strong> eseguire nell'unità<br />

<strong>di</strong> tempo <strong>di</strong> un minuto secondo, ed è espressa in cicli al secondo, o<br />

hertz, e suoi multipli; normalmente per eseguire un'istruzione o una<br />

semplice somma sono necessari più cicli <strong>di</strong> clock.


L'unità <strong>di</strong> calcolo del calcolatore Z1 (che utilizzava la tecnologia<br />

elettromeccanica, non elettronica) costruito dal tedesco Konrad Zuse nel<br />

1938 andava da 0,3 cicli al secondo fino al massimo <strong>di</strong> 1 hertz. La<br />

velocità <strong>di</strong> clock del primo microprocessore moderno, l'Intel 4004<br />

progettato dall'italiano Federico Faggin nel 1971, era <strong>di</strong> 740 khz. Le<br />

attuali CPU dei personal computer raggiungono e superano ormai i 3<br />

Gigahertz. In queste moderne CPU essendo la velocità <strong>di</strong> clock così<br />

elevata, viene generata da un minuscolo oscillatore al quarzo posto<br />

all'interno della stessa CPU, regolabile tramite il BIOS.


Gli informatici esperti sono in grado <strong>di</strong> aumentare le prestazioni dei<br />

computer aumentando la velocità <strong>di</strong> clock nominale del processore, ma si<br />

tratta <strong>di</strong> un'operazione rischiosa che può portare al surriscaldamento<br />

della CPU. Vi sono comunque alcuni processori <strong>di</strong> particolare efficienza e<br />

robustezza che sono in grado <strong>di</strong> supportare bene velocità <strong>di</strong> clock<br />

maggiori <strong>di</strong> quella nominale, senza subire danni. Nel gergo informatico<br />

questa operazione viene definita overclocking, ed è utilizzata anche<br />

dall'industria per testare l'affidabilità delle CPU prodotte.


in<strong>di</strong>ce


In <strong>informatica</strong>, è detto driver l'insieme <strong>di</strong> procedure,<br />

spesso scritte in assembly, che permette ad un sistema<br />

operativo <strong>di</strong> pilotare un <strong>di</strong>spositivo hardware. Il driver<br />

permette al sistema operativo <strong>di</strong> utilizzare l'hardware<br />

senza sapere come esso funzioni, ma <strong>di</strong>alogandoci<br />

attraverso un'interfaccia standard, i registri del<br />

controllore della periferica, che astrae<br />

dall'implementazione dell'hardware e che ne considera<br />

solo il funzionamento logico. In questo modo hardware<br />

<strong>di</strong>verso costruito da produttori <strong>di</strong>versi può essere<br />

utilizzato in modo intercambiabile.


Ne consegue che un driver è specifico sia dal punto <strong>di</strong> vista<br />

dell'hardware che pilota, sia dal punto <strong>di</strong> vista del sistema<br />

operativo per cui è scritto. Non è possibile utilizzare driver<br />

scritti per un sistema operativo su uno <strong>di</strong>fferente, perché<br />

l'interfaccia è generalmente <strong>di</strong>versa.<br />

Il driver è scritto solitamente dal produttore del <strong>di</strong>spositivo<br />

hardware, dato che è necessaria un'approfon<strong>di</strong>ta<br />

conoscenza dell'hardware per poter scrivere un driver<br />

funzionante. A volte, i driver vengono scritti da terze parti<br />

sulla base della documentazione tecnica rilasciata dal<br />

produttore, se questa è <strong>di</strong>sponibile.<br />

in<strong>di</strong>ce


M A T T E O F O N T A N A


FireWire (standard IEEE numero 1394) è un'interfaccia standard per un bus<br />

seriale che supporta due <strong>di</strong>verse modalità <strong>di</strong> trasferimento dati: asincrona e<br />

isocrona. La modalità asincrona avviene quando il dato spe<strong>di</strong>to viene ricevuto<br />

dall'altra parte del cavo. Nel caso in cui la linea fosse libera, viene nuovamente<br />

inviato. La modalità isocrona prevede un invio <strong>di</strong> dati attraverso il flusso<br />

continuo in tempo reale. In questa modalità si possono acquisire dati dagli<br />

apparecchi <strong>di</strong>gitali,come videocamere, macchine fotografiche. Il Firewire è<br />

stato sviluppato per essere utilizzato nei personal computer e nei <strong>di</strong>spositivi<br />

multime<strong>di</strong>ali, sviluppato inizialmente da Apple Computer. Lo sviluppo venne<br />

terminato nel 1995 e IEEE lo ha denominato 1394. L'implementazione <strong>di</strong> Sony<br />

<strong>di</strong> questo standard si chiama i.Link, e usa un connettore con solo 4 pin,<br />

eliminando i pin de<strong>di</strong>cati all'alimentazione dato che i prodotti Sony dotati <strong>di</strong><br />

i.Link sono dotati <strong>di</strong> un cavo <strong>di</strong> alimentazione separato.<br />

M A T T E O F O N T A N A


La connessione FireWire viene comunemente usata per collegare <strong>di</strong>spositivi<br />

<strong>di</strong> archiviazione o <strong>di</strong>spositivi <strong>di</strong> acquisizione video. Viene utilizzato anche in<br />

apparecchiature <strong>di</strong> acquisizione au<strong>di</strong>o e video professionali per via della<br />

ampiezza <strong>di</strong> banda della connessione, della sua pre<strong>di</strong>sposizione a trattare<br />

flussi multime<strong>di</strong>ali, della capacità <strong>di</strong> sopportare potenze maggiori e della<br />

possibilità <strong>di</strong> stabilire una connessione tra <strong>di</strong>spositivi senza il tramite <strong>di</strong> un<br />

computer. L'interfaccia FireWire è tecnicamente superiore all'interfaccia USB,<br />

ma questa è molto più <strong>di</strong>ffusa per via dei brevetti. L'Apple e altre <strong>di</strong>tte<br />

richiedono il pagamento <strong>di</strong> brevetti per ogni implementazione della FireWire<br />

(0.25 dollari normalmente per l'utente finale). Sebbene siano cifre ridotte<br />

molti produttori realizzano prodotti a bassissimo margine <strong>di</strong> guadagno e<br />

quin<strong>di</strong> hanno preferito utilizzare la tecnologia USB che, essendo esente dal<br />

pagamento <strong>di</strong> brevetti, gli consente <strong>di</strong> ottenere prodotti più economici.<br />

M A T T E O F O N T A N A


M A T T E O F O N T A N A


La FireWire supporta fino a 63 periferiche organizzate in una rete non<br />

ciclica (a <strong>di</strong>fferenza per esempio della catena SCSI). Permette una<br />

comunicazione "peer-to-peer" tra i <strong>di</strong>spositivi. Quin<strong>di</strong> i vari <strong>di</strong>spositivi<br />

possono comunicare tra loro senza dover utilizzare il computer come<br />

arbitro. Per esempio una videocamera <strong>di</strong>gitale potrebbe riversare il filmato<br />

video su un hard <strong>di</strong>sk esterno senza l'intervento del computer. Supporta il<br />

collegamento a caldo e la presenza <strong>di</strong> più Host tramite una gestione degli<br />

IP software. Quin<strong>di</strong> una connessione FireWire può essere utilizzate per<br />

creare una rete locale tra due computer quattro volte più veloce <strong>di</strong> una<br />

normale rete Ethernet a 100 Mbit. Il cavo FireWire supporta fino a 45 Watt<br />

e è quin<strong>di</strong> in grado <strong>di</strong> alimentare la maggior parte dei <strong>di</strong>spositivi portatili.<br />

(Nota: L'implementazione della Sony ha solo quattro pin e quin<strong>di</strong> non è<br />

provvista delle alimentazioni, i <strong>di</strong>spositivi vanno alimentati in modo<br />

in<strong>di</strong>pendente).<br />

M A T T E O F O N T A N A


FireWire 400 specifica la velocità <strong>di</strong> trasferimento dati ai <strong>di</strong>spositivi <strong>di</strong> 100,<br />

200, o 400 Mbps (in realtà, 98.304, 196.608, o 393.216 Mbps,<br />

usualmente in<strong>di</strong>cati come S100, S200, e S400). La lunghezza del cavo è<br />

limitata a 4.5 metri e fino a 16 cavi possono essere collegati tramite dei<br />

<strong>di</strong>spositivi che provvedono a rigenerare il segnale per arrivare a una<br />

lunghezza massima consentita dalle specifiche <strong>di</strong> 72 metri.<br />

FireWire 800 (nome dato da Apple alla versione a 9 pin dello standard<br />

IEEE1394b) venne reso <strong>di</strong>sponibile commercialmente da Apple nel 2003,<br />

questa evoluzione dello standard innalza la velocità della connessione a<br />

786.432 Mbps e è retrocompatibile col connettore a 6 pin della FireWire<br />

400.<br />

M A T T E O F O N T A N A


M A T T E O F O N T A N A


Quasi tutte le moderne telecamere sono dotate <strong>di</strong> connessione FireWire, fin<br />

dal 1995. Tutti i computer Apple attualmente in commercio sono dotati <strong>di</strong><br />

FireWire come molti portatili e alcuni computer IBM-compatibili pre<strong>di</strong>sposti<br />

per la gestione dei segnali au<strong>di</strong>o e video. La FireWire viene utilizzata anche<br />

da molti modelli del lettore <strong>di</strong> musica <strong>di</strong>gitale iPod per trasferire le canzoni e<br />

caricare la batteria.<br />

La maggior parte delle televisioni <strong>di</strong>gitali e box interattivi in grado <strong>di</strong><br />

registrare in <strong>di</strong>gitale con lo standard MPEG-2, sono dotati <strong>di</strong> porta FireWire.<br />

Questa interfaccia, adottata per Hard <strong>di</strong>sk esterni risulta me<strong>di</strong>amente più<br />

veloce dell'USB.<br />

M A T T E O F O N T A N A


in<strong>di</strong>ce<br />

M A T T E O F O N T A N A


Hard <strong>di</strong>sk<br />

L’hard <strong>di</strong>sk è quel <strong>di</strong>spositivo <strong>di</strong> memoria non<br />

volatile capace <strong>di</strong> memorizzare<br />

permanentemente dei dati, anche senza<br />

alimentazione e anche dopo lungo tempo,<br />

<strong>di</strong>fferentemente da quanto fanno, ad esempio,<br />

le RAM.


Le componenti <strong>di</strong> un hard <strong>di</strong>sk


Le componenti <strong>di</strong> un hard <strong>di</strong>sk<br />

Un hard <strong>di</strong>sk è composto fondamentalmente da 5 parti: l'involucro, i piatti, un<br />

albero (o asse), le testine e i circuiti elettronici <strong>di</strong> gestione.<br />

Ve<strong>di</strong>amo singolarmente le funzioni <strong>di</strong> queste componenti:<br />

Involucro: serve evidentemente per contenere e<br />

proteggere le altre parti <strong>di</strong> un hard <strong>di</strong>sk; è costruito con<br />

materiali metallici e plastici, e viene perfettamente<br />

sigillato per evitare che polvere e qualsiasi oggetto<br />

estraneo possa introdursi all'interno, mettendone a<br />

rischio il corretto funzionamento.


Piatti: <strong>di</strong>schi metallici o <strong>di</strong> materiale plastico, rigi<strong>di</strong>, ricoperti da una<br />

patina <strong>di</strong> ossido <strong>di</strong> ferro, o comunque <strong>di</strong> un materiale sensibile ai campi<br />

magnetici.<br />

Gli hard <strong>di</strong>sk contengono un numero variabile <strong>di</strong> piatti ed è importante<br />

conoscere alcuni parametri dei piatti: la loro densità <strong>di</strong> memorizzazione e il<br />

numero <strong>di</strong> rotazioni per minuto (rpm). A un valore <strong>di</strong> rpm più elevato<br />

corrispondono prestazioni superiori (5400rpm e 7200rpm sono i valori dei<br />

<strong>di</strong>schi più <strong>di</strong>ffusi, in sistemi high end si ricorre a hd da 10000 rpm e oltre),<br />

mentre la densità <strong>di</strong> memorizzazione dei piatti ci permette <strong>di</strong> sapere quanti<br />

dati è possibile immagazzinare per ogni centimetro quadrato.<br />

Albero: la velocità <strong>di</strong> rotazione dei piatti <strong>di</strong>pende dall'albero, cioè da<br />

quell'asse attorno al quale girano, alla stessa velocità.


Testine: sono la componente che fisicamente si occupa della scrittura<br />

e della lettura dei dati sui piatti. Per ogni lato <strong>di</strong> un piatto vi è almeno una<br />

testina, posizionata su un braccio che viene fatto muovere tramite un<br />

meccanismo magnetico-meccanico grazie al quale le testine possono<br />

muoversi sull'intera estensione del piatto, dal centro sino al bordo.<br />

L'abbinamento <strong>di</strong> questo movimento con la rotazione del piatto fa si che<br />

ogni testina possa accedere all'intero piatto.<br />

Circuiti elettronici: hanno il compito <strong>di</strong> ricevere i coman<strong>di</strong> impartiti<br />

dall'utente tramite il pc, facendo spostare <strong>di</strong> conseguenza le testine per<br />

leggere/scrivere i dati sui piatti.


La memorizzazione dei dati<br />

Quando il pc riceve dei dati da memorizzare sull'hard <strong>di</strong>sk, glieli invia sotto<br />

forma <strong>di</strong> bit, che l'hard <strong>di</strong>sk provvede a memorizzare magnetizzando il piatto del<br />

<strong>di</strong>sco, con una carica positiva o negativa. Ovviamente per fare ciò utilizza le<br />

testine, e non necessariamente li memorizza sequenzialmente, ma può anche<br />

sistemarli in zone <strong>di</strong>verse, anche su piatti <strong>di</strong>versi.<br />

In questo modo si risolve un problema tipico dei nastri magnetici, che possono<br />

essere letti solo sequenzialmente, cosa che li penalizza notevolmente dal punto<br />

<strong>di</strong> vista del tempo <strong>di</strong> accesso, che invece sui <strong>di</strong>schi moderni è generalmente<br />

inferiore ai 10ms.


La memorizzazione dei dati<br />

Nel momento in cui è necessario andare a rileggere i dati per utilizzarli,<br />

le testine non fanno altro che rimuoversi per rileggerli, determinando il<br />

campo magnetico <strong>di</strong> ogni bit, e quin<strong>di</strong> reinviano i dati al sistema; rimane<br />

da capire come il pc possa sapere dove andare a cercare le<br />

informazioni che sta cercando, in mezzo a una miriade <strong>di</strong> bit sparsi.


La formattazione<br />

La formattazione organizza i dati in modo che il sistema possa scriverli<br />

e leggerli con or<strong>di</strong>ne, utilizzando un criterio ben preciso; esistono due<br />

tipi <strong>di</strong> formattazione: a basso livello (o fisica) e logica. Formattando a<br />

basso livello (cosa che in genere viene effettuata <strong>di</strong>rettamente dal<br />

produttore, ma me<strong>di</strong>ante apposite utility si può ripetere) si <strong>di</strong>vide il <strong>di</strong>sco<br />

rigido nelle subunità principali: tracce, settori, cilindri.


La formattazione a basso livello


La formattazione a basso livello<br />

Le tracce sono dei "cerchi concentrici" scritte su tutti i lati <strong>di</strong> tutti i piatti,<br />

e sono numerate; l'insieme <strong>di</strong> tutte le tracce identificate dallo stesso<br />

numero, e quin<strong>di</strong> equi<strong>di</strong>stanti dall'asse formano un cilindro, che può<br />

essere immaginato come il collegamento ideale in verticale delle<br />

estremità delle tracce. I settori invece sono una sud<strong>di</strong>visione delle<br />

tracce, destinate a contenere una quantità prefissata <strong>di</strong> dati, minore <strong>di</strong><br />

quella delle tracce.<br />

I cilindri hanno un grande vantaggio: scrivendo su <strong>di</strong> essi si evita <strong>di</strong> far<br />

spostare le testine (le traccia infatti è la stessa...) e dunque si<br />

risparmia notevolmente sul tempo <strong>di</strong> scrittura/lettura, dato che è<br />

proprio lo spostamento delle testine la fase più lenta del processo.


La formattazione logica<br />

La formattazione logica altro non è che l'inserimento del cosiddetto "file<br />

system" sull'hard <strong>di</strong>sk, ovvero quella struttura logica che memorizza le<br />

posizioni fisiche <strong>di</strong> ogni singolo file, gestisce <strong>di</strong>rectory, quantifica lo<br />

spazio <strong>di</strong>sponibile e quello già utilizzato; inoltre, cosa molto importante,<br />

contiene il record <strong>di</strong> boot, ovvero quei dati necessari all'avvio del<br />

sistema operativo.<br />

Per questo motivo ogni sistema operativo necessità <strong>di</strong> uno specifico<br />

filesystem, o comunque <strong>di</strong> uno supportato.


STORIA<br />

L'hard <strong>di</strong>sk è stato inventato nel 1956 dall'IBM, era costituito da 50 <strong>di</strong>schi<br />

del <strong>di</strong>ametro <strong>di</strong> 24 pollici (circa 60 cm) e poteva immagazzinare circa 5<br />

megabyte <strong>di</strong> dati. La denominazione originaria era fixed <strong>di</strong>sk (<strong>di</strong>sco fisso), il<br />

termine hard <strong>di</strong>sk nacque intorno al 1970 per contrapposizione coi neonati<br />

floppy <strong>di</strong>sk.<br />

Nel 1963 sempre IBM ideò il meccanismo <strong>di</strong> sollevamento della testina<br />

me<strong>di</strong>ante l'aria. Nel 1973 IBM introdusse il modello 3340 Winchester, così<br />

denominato per analogia con il popolare modello <strong>di</strong> fucile ".30-30<br />

Winchester" poiché era dotato <strong>di</strong> due <strong>di</strong>schi da 30 MB l'uno; questo nome<br />

entrò nell'uso comune come sinonimo <strong>di</strong> hard <strong>di</strong>sk perché questo modello<br />

fu il predecessore <strong>di</strong> tutti gli hard <strong>di</strong>sk moderni.<br />

Il primo modello per microcomputer fu l'ST506 prodotto da Seagate<br />

Tecnology nel 1980, aveva una capacità <strong>di</strong> 5 MB, <strong>di</strong>ametro <strong>di</strong> 5 pollici e 1/4


Gli hard <strong>di</strong>sk moderni hanno capacità e prestazioni enormemente superiori a<br />

quelle dei primi modelli, ma restano comunque molto al <strong>di</strong> sotto delle<br />

prestazioni dei componenti elettronici che compongono il resto del computer.<br />

Per questo motivo, l'hard <strong>di</strong>sk è spesso la causa principale del rallentamento <strong>di</strong><br />

un computer.


Le caratteristiche principali<br />

Le caratteristiche principali <strong>di</strong> un hard <strong>di</strong>sk moderno sono:<br />

la capacità<br />

il tempo <strong>di</strong> accesso<br />

la velocità <strong>di</strong> trasferimento


La capacità è in genere espressa in gigabyte (GB). I produttori usano i<br />

gigabyte metrici, invece delle approssimazioni per potenze <strong>di</strong> due usate<br />

per la memoria. Questo significa che un hard <strong>di</strong>sk <strong>di</strong> una data capacità è<br />

in realtà un poco più piccolo <strong>di</strong> un modulo <strong>di</strong> memoria con la stessa<br />

capacità, e lo scarto aumenta all'aumentare delle <strong>di</strong>mensioni. Gli hard<br />

<strong>di</strong>sk si trovano in ven<strong>di</strong>ta con capacità generalmente comprese tra 40 e<br />

750 gigabyte. La capacità può essere aumentata incrementando la<br />

densità con cui le informazioni vengono memorizzate sui <strong>di</strong>schi, usando<br />

<strong>di</strong>schi più gran<strong>di</strong>, o usando un numero maggiore <strong>di</strong> <strong>di</strong>schi. In maggio<br />

2006, Seagate, ha prodotto e messo in ven<strong>di</strong>ta un hard <strong>di</strong>sk da ben 750<br />

Gb, il Barracuda 7200.10.


Il tempo <strong>di</strong> accesso è la variabile più importante nel determinare le<br />

prestazioni <strong>di</strong> un hard <strong>di</strong>sk, ma spesso non viene menzionata dal<br />

produttore. Si tratta del tempo me<strong>di</strong>o necessario perché un dato posto<br />

in una parte a caso dell'hard <strong>di</strong>sk possa essere reperito. Il tempo<br />

impiegato <strong>di</strong>pende dal fatto che la testina deve spostarsi, e<br />

contemporaneamente il <strong>di</strong>sco deve girare finché il dato interessante<br />

non si trova sotto la testina (latenza rotazionale). I produttori cercano<br />

perciò <strong>di</strong> realizzare testine sempre più leggere (che possono spostarsi<br />

più in fretta perché dotate <strong>di</strong> minore inerzia) e <strong>di</strong>schi che girano più<br />

velocemente. Il tempo <strong>di</strong> accesso tipico per un hard <strong>di</strong>sk consumer è<br />

attorno ai 10 millisecon<strong>di</strong>. Per un hard <strong>di</strong>sk ad alte prestazioni (15.000<br />

giri) è <strong>di</strong> 3 o 4 millisecon<strong>di</strong>.


La velocità <strong>di</strong> trasferimento è la quantità <strong>di</strong> dati che l'hard <strong>di</strong>sk è<br />

teoricamente in grado <strong>di</strong> leggere o scrivere sul <strong>di</strong>sco in un<br />

determinato tempo (in genere si prende 1 secondo come<br />

riferimento). Usare <strong>di</strong>schi che ruotano più velocemente o<br />

incrementare la densità <strong>di</strong> memorizzazione porta ad un<br />

miglioramento <strong>di</strong>retto della velocità <strong>di</strong> trasferimento. C'è da <strong>di</strong>re che,<br />

a parte casi particolari, la velocità <strong>di</strong> trasferimento teorica viene<br />

raramente raggiunta e il tempo <strong>di</strong> accesso è quello che<br />

maggiormente influenza le prestazioni <strong>di</strong> un hard <strong>di</strong>sk.


Caratteristiche prestazionali<br />

Oltre alle tre viste sopra, altre caratteristiche influenzano in misura<br />

minore le prestazioni <strong>di</strong> un hard <strong>di</strong>sk. Tra queste:<br />

il buffer <strong>di</strong> memoria<br />

la velocità dell'interfaccia


Il buffer è una piccola memoria cache (in genere <strong>di</strong> alcuni megabyte)<br />

posta a bordo dell'hard <strong>di</strong>sk, che ha il compito <strong>di</strong> memorizzare gli ultimi<br />

dati letti o scritti dal <strong>di</strong>sco. Nel caso che un programma legga<br />

ripetutamente le stesse informazioni, queste possono essere reperite nel<br />

buffer invece che sul <strong>di</strong>sco. Essendo il buffer un componente elettronico<br />

piuttosto che meccanico, la velocità <strong>di</strong> trasferimento è molto maggiore.<br />

L' interfaccia <strong>di</strong> collegamento tra l'hard <strong>di</strong>sk e la scheda madre (o, più<br />

specificatamente, il controllore) può influenzare le prestazioni perché<br />

specifica la velocità massima alla quale le informazioni possono essere<br />

trasferite da o per l'hard <strong>di</strong>sk. Le moderne interfacce tipo ATA133, Serial<br />

ATA o SCSI possono trasferire centinaia <strong>di</strong> megabyte per secondo,<br />

molto più <strong>di</strong> quanto qualunque singolo hard <strong>di</strong>sk possa fare, e quin<strong>di</strong><br />

l'interfaccia non è in genere un fattore limitante. Il <strong>di</strong>scorso può cambiare<br />

nell'utilizzo <strong>di</strong> più <strong>di</strong>schi in configurazione RAID, nel qual caso è<br />

importante utilizzare l'interfaccia più veloce possibile, come per esempio


L'interfaccia più comune è quella IDE, poi evolutasi in EIDE e ATA. Un cavo piatto,<br />

solitamente grigio, è usato per connettere l'hard <strong>di</strong>sk alla scheda madre. Spesso il cavo ha<br />

un terzo connettore per poter usare un altro hard <strong>di</strong>sk (o altre periferiche ATA come i lettori<br />

cd) con lo stesso cavo. In tal caso, per poter <strong>di</strong>stinguere tra le due periferiche, esse devono<br />

essere configurate una come master e una come slave. Questa configurazione può avvenire<br />

sia manualmente, spostando dei jumper presenti sulle periferiche, sia automaticamente se<br />

esse sono impostate come cable select. In quest'ultimo caso è la scheda madre a decidere<br />

chi è il master e chi lo slave. Questo è particolarmente utile quando si utilizzano <strong>di</strong>schi fissi<br />

vecchi, o nel caso <strong>di</strong> bassa compatibilità tra unità <strong>di</strong>verse (ad esempio due <strong>di</strong>schi fissi, ma<br />

anche un <strong>di</strong>sco fisso e un lettore CD).<br />

Una scheda madre ha solitamente due connettori IDE (primario e secondario, detti spesso<br />

canali e impropriamente controller), ad ognuno dei quali è possibile connettere due unità per<br />

un totale <strong>di</strong> quattro periferiche. Non mancano schede madri con quattro connettori. Il cavo<br />

IDE non porta l'alimentazione elettrica necessaria per il funzionamento delle periferiche, che<br />

quin<strong>di</strong> devono essere connesse all'alimentatore per mezzo <strong>di</strong> un cavo separato.


Tipicamente, un personal computer ha un <strong>di</strong>sco fisso come master sul canale IDE<br />

primario, ma a seconda del sistema operativo utilizzato esso può risiedere su una<br />

qualunque interfaccia IDE.<br />

Ecco un esempio delle possibili connessioni all'IDE <strong>di</strong> un pc:<br />

canale primario:<br />

•master: hard <strong>di</strong>sk;<br />

•slave: lettore cd (con il jumper su cable select)<br />

canale secondario:<br />

•master: hard <strong>di</strong>sk;<br />

•slave: masterizzatore DVD


Impostazione <strong>di</strong> master, slave, cable select<br />

Ogni unità che può essere connessa ad un cavo IDE (hard <strong>di</strong>sk, lettore/masterizzatore<br />

CD/DVD) possiede un gruppo <strong>di</strong> pin nella parte posteriore, tra il connettore per il cavo IDE<br />

e quello per l'alimentazione, che possono essere collegati a due a due da un apposito<br />

jumper. La posizione dei jumper per ottenere le <strong>di</strong>verse funzioni è normalmente descritta<br />

sull'etichetta che riporta le caratteristiche dell'hard <strong>di</strong>sk.<br />

Precauzioni<br />

Se si dovesse tentare una riparazione fai-da-te <strong>di</strong> un hard <strong>di</strong>sk senza l'adeguata<br />

strumentazione (camera bianca), si potrà talvolta arrivare allo smontaggio della parte<br />

elettronica, ma qualsiasi tentativo <strong>di</strong> aprire la parte sigillata che contiene le parti mobili<br />

dell'hard <strong>di</strong>sk quasi sicuramente tramuterà il problema in un danno irreversibile. Spesso i<br />

centri assistenza specializzati e professionali faranno poi pagare molto caro anche il<br />

tentativo


Gli hard <strong>di</strong>sk sono prodotti in due <strong>di</strong>mensioni standar<strong>di</strong>zzate, i 3,5 pollici e 2,5 pollici. I<br />

primi sono utilizzati nei personal computer, i secon<strong>di</strong> nei computer portatili e dovunque ci<br />

sia poco spazio e/o potenza <strong>di</strong> alimentazione. Entrambi i formati sono utilizzati anche per<br />

realizzare memorie <strong>di</strong> massa esterne ai computer, collegabili tramite un cavo USB2 o<br />

FireWire, adottate quando occorra trasportare agevolmente gran<strong>di</strong> quantità <strong>di</strong> dati. Nel<br />

formato più piccolo l'alimentazione avviene tramite il cavo dell'interfaccia, quello<br />

maggiore fa uso <strong>di</strong> un alimentatore de<strong>di</strong>cato, attualmente la capacità <strong>di</strong> queste<br />

periferiche arriva a 2 Terabyte, il miglior rapporto tra capacita e prezzo è il taglio da 320<br />

Gibabyte. Gli hard <strong>di</strong>sk da 2,5" sono infatti più piccoli e meno esigenti, ma al prezzo <strong>di</strong><br />

capacità e prestazioni sensibilmente minori e costi maggiori (ad esempio, una velocità <strong>di</strong><br />

rotazione <strong>di</strong> 4600 o 5400 rpm, invece dei 7200 rpm o più degli hard <strong>di</strong>sk da 3,5).<br />

Recentemente sono stati prodotti hard <strong>di</strong>sk in formato compact flash <strong>di</strong> tipo II, gran<strong>di</strong> solo<br />

due o tre centimetri e spessi quanto una carta <strong>di</strong> cre<strong>di</strong>to, ma contenenti comunque alcuni<br />

gigabyte <strong>di</strong> memoria (ve<strong>di</strong> IBM Microdrive). L'ideazione da parte <strong>di</strong> Hitachi nel 2005 del<br />

cosiddetto metodo <strong>di</strong> "registrazione perpen<strong>di</strong>colare" sembra aprire la strada ad una<br />

nuova generazione <strong>di</strong> hard <strong>di</strong>sk, con capacità <strong>di</strong>eci volte maggiori a parità <strong>di</strong> <strong>di</strong>mensioni<br />

(o, parallelamente, <strong>di</strong>mensioni 10 volte minori a parità <strong>di</strong> capacità), grazie ad una<br />

maggiore densità con cui le informazioni vengono memorizzate nel materiale<br />

magnetizzato che costituisce i piatti dell'hard <strong>di</strong>sk.


Gli hard <strong>di</strong>sk più veloci sviluppano molto calore. Alcuni devono ad<strong>di</strong>rittura essere<br />

raffreddati con ventole apposite.<br />

Il rumore emesso da un hard <strong>di</strong>sk può essere molto fasti<strong>di</strong>oso nel caso <strong>di</strong> un computer<br />

da tavolo. È composto da un sibilo continuo, dato dalla rotazione dei <strong>di</strong>schi ad alta<br />

velocità, e da un crepitio intermittente, <strong>di</strong> cui ogni clic corrisponde ad un movimento della<br />

testina. I produttori <strong>di</strong> hard <strong>di</strong>sk possono scegliere tra realizzare un hard <strong>di</strong>sk silenzioso<br />

ma lento, o rumoroso ma veloce. Per maggiore flessibilità in alcuni hard <strong>di</strong>sk la velocità<br />

della testina è impostabile via software, alcuni produttori, per ridurre <strong>di</strong> qualche decibel il<br />

rumore, adottano come supporto dell'albero rotante, la bronzina al posto del cuscinetto.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!