05.06.2013 Views

LINUX DA ZERO Edizione 3.2

LINUX DA ZERO Edizione 3.2

LINUX DA ZERO Edizione 3.2

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CAPITOLO 3. DENTRO LA SCATOLA 3.4. DISPOSITIVI DI MEMORIZZAZIONE<br />

Ogni istruzione è di solito composta da due parti: il Codice Operativo, che specifica quale operazione<br />

deve essere eseguita, e gli Operandi, che specificano su cosa occorre eseguire l’operazione.<br />

Si noti che un’istruzione di un computer è un’operazione molto limitata come: “SOMMA 1 e 3”,<br />

“TRASFERISCI un dato dalla CPU alla memoria”, “RIPETI i passi precedenti per 5 volte”; la potenza<br />

di un calcolatore è data, in gran parte (ma non totalmente,↩→ 3.7 a pagina 41) dalla velocità cui è in<br />

grado di eseguire le istruzioni. Per fare un parallelo: supponete di aver dimenticato come si fanno le<br />

moltiplicazioni e di sapere soltanto fare la somma tra due numeri. Per fare 23x45 dovrete mettere in<br />

colonna il 23 quarantacinque volte e sommare il tutto. Il compito è gravoso, ma se riuscite a fare una<br />

somma in un miliardesimo di secondo saprete supplire egregiamente alla vostra ignoranza.<br />

Cosa accade quando si esegue un programma? Per la verità, non è una cosa troppo eccitante: il<br />

sistema si limita a eseguire le istruzioni del programma, uno dopo l’altra, senza fine.<br />

Più in dettaglio, possiamo identificare tre fasi distinte, dette ciclo di vita di un’istruzione:<br />

• Prelevamento (ing: fetch): La CPU traferisce al proprio interno il codice relativo alla prossima<br />

operazione da eseguire<br />

• Decodifica (ing: decode): La CPU controlla che il codice operativo sia corretto e si predispone<br />

all’esecuzione dell’operazione.<br />

• Esecuzione (ing: execute): La CPU passa alla vera e propria esecuzione. In genere, dapprima<br />

trasferisce dalla memoria i dati su cui operare, poi effettua l’operazione, quindi trasferisce<br />

nuovamente in memoria i dati elaborati.<br />

3.4. Dispositivi di memorizzazione<br />

I dispositivi di memorizzazione sono supporti grazie ai quali è possibile memorizzare (in gergo informatico,<br />

salvare) i programmi, i dati necessari ai programmi e, soprattutto, i risultati ottenuti dai nostri<br />

programmi; tra essi citiamo la memoria RAM, i dischetti, e i CD-Rom.<br />

Come fanno i computer a memorizzare i dati? Come detto in precedenza, un calcolatore è in grado<br />

di elaborare esclusivamente sequenze di numeri, cioè i famosi bit. Esiste una nomenclatura in base<br />

alla lunghezza delle sequenze: la sequenza di 8 bit forma un byte, che è usato a sua volta come unità di<br />

misura della capacità delle memorie (ovvero della quantità di dati memorizzabile): si veda la tabella<br />

3.1.<br />

Esitono differenti tipologie di memorie che presentano caratteristiche molto diverse l’una dall’altra:<br />

possiamo dapprima dividerle in tre grandi categorie: memoria centrale, memoria di massa e memorie<br />

rimuovibili.<br />

Memoria centrale<br />

La memoria centrale è, dopo la CPU, il componente più importante. Si utilizza per<br />

memorizzare tutti i dati quando non devono essere elaborati, ma devono essere resi<br />

rapidamente accessibili in caso di necessità.<br />

In linea di massima la memoria centrale è una memoria veloce ma di dimensioni limitate<br />

(soprattutto per il costo) e possiamo dividerla in due categorie: Memoria RAM e Memoria ROM.<br />

RAM sta per Random Access Memory - Memoria ad accesso casuale. Ciò non significa che si tratta<br />

di un sistema inaffidabile, ma che i tempi di risposta sono identici indipendentemente dalla posizione<br />

33

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

Saved successfully!

Ooh no, something went wrong!