IL MICROPROCESSORE
• Il microprocessore è un singolo circuito
integrato in grado di effettuare operazioni
decisionali, di calcolo o di elaborazione
dell’informazione.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
SCHEMA GENERALE DI UNA CPU
PRELIEVO E DECODIFICA
ISTRUZIONE (INSTRUCTION FETCHER E DECODER)
MEMORY
INTERFACE
ALLA
MEMORIA
INTERFACCIA CON LA RAM
ABILITAZIONI E DISABILITAZIONI FUNZIONI VARIE
REGISTRI
TEMPORIZZAZIONE
UNITA’ CPU
Unità logico aritmetica
UNITA’ DI CONTROLLO
E TEMPORIZZAZIONE
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
IMPULSI DI CLOCK
• Il microprocessore costituisce
l’implementazione fisica della CPU più
comune, utilizzata dalla quasi totalità dei
computer e altri dispositivi digitali.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
BUS DI SISTEMA
001110100000011110…..00000111110000000
0000011110101……….11111111111111110
PR 1
CONTROLLER HD
PROCESSORE
PR 2
ALU
REGISTRI
PR…..
MEMORIA RAM
PR N-1
PR N
MEMORIA CACHE
(NASCONDIGLIO)
SISTEMA
OPERATIVO
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
UNITA’ DISCO
Microprocessore Intel 8086
Fondamenti architetturali
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
ISTRUZIONE
00110...001111
CODICE OPERATIVO
00000111…..11111110000000000111
OPERANDI
UN PROGRAMMA E’ COSTITUITO DA UNA SERIE DI ISTRUZIONI
CIASCUNA DELLE QUALI SPECIFICA UNA DETERMINATA AZIONE.
LA PRIMA PARTE PRENDE IL NOME DI CODICE OPERATIVO, E SERVE
APPUNTO A SPECIFICARE IL TIPO DI OPERAZIONE DA COMPIERE
(somma, prodotto, trasferimento di dato, confronto tra dati,… ) :
“CAMPO CODICE OPERATIVO”
LA SECONDA PARTE RIGUARDA LA SPECIFICAZIONE DI QUALI SIANO E
DOVE SI TROVINO GLI OPERANDI :
“CAMPO OPERANDI”
(un operando può essere specificato direttamente, oppure indicando la sua
posizione in un registro interno alla cpu oppure in memoria centrale o anche
nell’interfaccia di una periferica)
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Evoluzione in pillole
Introdotto nel 1978, il chip 8086 a 16 bit
conteneva appena 29.000 transistor e
operava a 5 MHz.
In confronto, il processore Pentium 4
contiene 55 milioni di transistor e opera a
3,06 GHz, una velocità più di 600 volte più
elevata.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Transistor
I transistor vengono impiegati in ambito elettronico, principalmente,
come amplificatori di segnali elettrici o come interruttori elettronici
comandati da segnali elettrici
Processo di fabbricazione di un transistor
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Struttura esterna
Il package ha una struttura
dual in line
che significa: “due file di 20 piedini (pin) parallele”
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Chip
In informatica il termine chip può significare:
• circuito integrato cioè un dispositivo elettronico costituito dall'integrazione di
un circuito elettronico su di un substrato di materiale semiconduttore (in genere
silicio, ma a volte anche arseniuro di gallio o altri).
• microprocessore (spesso abbreviato con µP) cioè un componente
elettronico digitale formato da transistor racchiuso in uno o più circuiti integrati.
Uno o più processori sono utilizzati come CPU da un sistema di elaborazione
digitale come può essere un personal computer, un palmare, un telefono
cellulare o un altro dispositivo digitale.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Piedinatura (pin-out)
Ogni piedino fornisce
una funzionalità
diversa.
Il CLOCK ad esempio
scandisce gli intervalli
di tempo sulla base dei
quali avvengono tutte
le elaborazioni
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Schema a blocchi
Registri
generali
CU
ALU
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Dalla loro introduzione ad oggi, l’evoluzione del
microprocessore ha seguito con una buona
approssimazione la legge di Moore,
una legge esponenziale che prevede il raddoppio
del numero di transistor integrabili sullo stesso
chip ogni 18 mesi.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Le caratteristiche principali di un processore sono
•il numero di transistor,
•il numero di bit (che determina la quantità di dati
che il processore può elaborare)
•la frequenza (cioè la velocità con il quale vengono
elaborati i dati).
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Il valore del processo produttivo espresso in nanometri indica
la distanza fra i gate dei transistor.
Il processo produttivo è connesso con le dimensioni dei transistor utilizzati in una CPU.
Al diminuire del processo produttivo è richiesta una tensione di alimentazione minore
dai transistor producendo così meno calore e diminuendo conseguentemente i consumi
di energia elettrica.
Per esempio, nell'anno 2006 il processo produttivo delle CPU era di 45 nanometri contro
i 22 nanometri attuali, una gran bella differenza in termini di produzione di calore
e di consumi.
Più è minore il valore del processo produttivo più transistor si avranno per unità
di superficie e generalmente più le frequenze di clock delle CPU potranno aumentare.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
I processori Dual core e Multi core mettono insieme due o più CPU indipendenti
con una propria cache, controller in un singolo package.
Per quanto concerne i processori Dual core esistono tre modi diversi per crearli:
1) Die singolo. Consiste nel combinare due core su un singolo die.
Un esempio di die singolo sono il Pentium D SmithField.
2) Die Doppio. In questo metodo due die separati vengono posti su un singolo
package e poi collegati tra di loro da collegamenti esterni. Il primo progetto Intel
cha ha sfruttato tale metodo è il Pentium D Presler.
3) Die Monolitico. Tale metodo permette di condividere alcune unità del processore,
tipo la cache che in tal mdo è condivisa con tutti i core.
Oltre che alla cache anche il controller della memoria RAM può essere condiviso.
Tale metodologia viene impiegata con successo sui processori multi core.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Per quanto riguarda i processori Multi core
si tratta di combinare i modi descritti nel Dual Core.
Così avremo per esempio due core Dual Core (Conroe)
costruiti su un Die Monolitico accoppiati su Die Doppio
per un numero 4 di core complessivi.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Generalmente la memoria cache ha la funzione di mantenere
una copia dei dati a cui si accede
più frequentemente nella memoria principale di sistema.
Quando la CPU deve leggere un dato dalla memoria principale
di sistema controlla se questo è residente in cache e in caso
positivo lo carica velocemente. In questo caso si parla di cache hit,
e nel caso contrario di cache miss.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
SISTEMA OPERATIVO
E’ UN’INFRASTRUTTURA SOFTWARE
(strato software) CHE SI PONE TRA
L’INFRASTRUTTURA HARDWARE E
L’UTENTE ( O IL SOFTWARE
APPLICATIVO : EDITOR DI TESTI,
BROWSER WEB, …)
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
APPLICAZIONI
SISTEMA OPERATIVO
KERNEL
BIOS
(firmware)
HARDWARE
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
IL SISTEMA OPERATIVO
Consente di utilizzare la risorse del
sistema informatico senza preoccuparsi
delle loro caratteristiche fisiche
( cioè tipo di processore, dimensione del
bus dati, interfaccia video, … )
GRAZIE AL SISTEMA OPERATIVO
L’UTENTE SI PONE AD “alto livello”
RISPETTO ALL’HARDWARE
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
IL SISTEMA OPERATIVO
• CONSENTE L’UTILIZZO
CONCORRENTE DEL SISTEMA DA
PARTE DI PIU’ PROGRAMMI :
• PIU’ PROGRAMMI concorrono
NELL’UTILIZZO DELLE RISORSE
RENDENDO “trasparente” LA
GESTIONE DELLA CONCORRENZA
( L’UTENTE NON SE NE PREOCCUPA)
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
IL SISTEMA OPERATIVO
• TRASFORMA LA MACCHINA
HARDWARE IN UNA
“macchina astratta” ( O VIRTUALE)
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
ESISTE UNA GRANDE VARIETA’ DI
SISTEMI OPERATIVI DIVERSI
-
UNIX
UBUNTU GNU/LINUX
MAC OS X
WINDOWS
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
IL SISTEMA OPERATIVO RISIEDE SU UNA MEMORIA DI MASSA
(TIPICAMENTE UN HARD – DISK).
I tablet utilizzano memorie di massa di tipo SSD ( Solid State Drive)
Cella di memoria SSD
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Transistor metallo ossido semiconduttore a canale N con
GATE FLOTTANTE per la memorizzazione del bit
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Schiera ( ARRAY) di celle di memoria SSD
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
I RICERCATORI STANNO CERCANDO DI REALIZZARE
hard disk TRADIZIONALI ESTREMAMENTE SOTTILI,
TALI DA POTER ESSERE UTILIZZATO ALL'INTERNO
DI SISTEMI TABLET
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
RECENTEMENTE SI E’ LAVORATO ALLA REALIZZAZIONE DI
HARD DISK IN FORMATO DA 2,5 POLLICI E DA 5 MILLIMETRI DI
SPESSORE,
CHE PUO’ ESSERE ADATTO PER LA REALIZZAZIONE DI
unità di storage ibride DA USARSI ALL'INTERNO DI
TABLET MULTIMEDIALI (I ricercatori hanno preso come
riferimento lo spessore di iPad 2, 8,8 millimetri )
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Nella progettazione di un hard disk di ridotto spessore è importante
riuscire a risolvere la sfida di ridurre adeguatamente le dimensioni del
motore di rotazione evitando allo stesso tempo
di compromettere le prestazioni del dispositivo e la sua stabilità
meccanica, dato che la velocità di rotazione è di qualche migliaia di
giri al minuto.
Tali hard-disk possono fungere da base per la realizzazione di una
soluzione ibrida provvista di elementi di memoria allo stato solido
(porte logiche NAND in tecnologia NMOS di tipo flash [le flash-rom],
in grado di migliorare prestazioni e consumo energetico dell'unità di
storage).
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Resta comunque qualche dubbio sull'effettiva volontà
da parte dei produttori di tablet di impiegare hard drive tradizionali :
gli hard disk sono infatti costruiti con l'impiego di parti mobili, che li
rendono pertanto meno affidabili dei dispositivi a stato solido.
I tablet, inoltre, sono per lo più utilizzati in movimento e non su superfici
stabili come ad esempio i sistemi notebook.
La ricerca di per la realizzazione di hard-disk di ridotte dimensioni
e alta capacità però continua, poiché il mercato dei
TABLET è destinato ad arrivare a 200 milioni di unità
nel corso del 2014.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
E' inoltre opportuno tenere presente che le alluvioni che hanno
funestato la Tailandia nel corso del 2011
e che hanno causato problemi a tutta la filiera dell'industria
degli hard disk, comporteranno un ritardo anche nell'eventuale
adozione di nuove tecnologie.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
ATTUALMENTE I TABLET UTILIZZANO memorie di archiviazioni di massa
di tipo Solide State Drive (SSD o Disco allo Stato Solido in italiano).
Le SSD rappresentano l’ultima frontiera dell’archiviazione di massa per i nostri PC.
A differenza del tradizionale Hard Disk, non sono presenti dischi:
né magnetici né di altro tipo.
Nonostante tutto gli si da l’appellativo di disco perché usato in sostituzione
del vecchio Hard Disk.
La capacità resta (normalmente) limitata a 32, 64, 128 Gbyte.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
SSD: quando e a chi conviene abbandonare l’Hard Disk tradizionale?
Il vantaggio di acquisire una SSD è quello di ottenere sia un miglioramento
complessivo delle prestazioni del PC sia un notevole aumento della
capacità di trasferimento dati. Il prezzo di una SSD è fino a 10 volte maggiore
quello di un Hard Disk tradizionale.
Facendo un confronto tra il TOP delle memorie attualmente in commercio,
mentre una SSD può costare da 350 euro
(per la versione da 120Gb) fino a 3.000 euro (per la versione da 1 TB),
un Hard Disk tradizionale 3 TB costa circa 230 euro.
Per l’utente normale di tablet, che difficilmente riempie l’hard disk ,
conviene sicuramente una memoria di massa di tipo SSD con capacità
relativamente bassa, poiché i costi sono ancora modesti.
In caso di necessità di archiviazione di grosse quantità di dati
( film, ad esempio) l’uso di memorie SSD diventerebbe piuttosto
costoso.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
ALL’ATTO DELL’ACCENSIONE DEL CALCOLATORE E’ NECESSARIA UNA
PROCEDURA PER EFFETTUARE IL CARICAMENTO IN MEMORIA CENTRALE
( COSIDDETTA RAM, ESSA SI’ SEMPRE ALLO STATO SOLIDO – SI PENSI
ALLE CELLE DELLE SSD MA PRIVE DEL float-gate ) DEL
SISTEMA OPERATIVO ( O LE PARTI ESSENZIALI DEL S.O.)
Tale operazione viene eseguita dal BIOS, che risiede in un opportuno firmware.
Il firmware di un calcolatore è simile alle SSD, ma non è normalmente accessibile
all’utente :
esso è scritto su una memoria flash-rom, riprogrammabile solo attraverso particolari
Procedure.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Il bios
•Esegue dei test diagnostici sull’hardware inizializzando le unità I/O
•Localizza il S.O. sull’H.D. e lo carica in RAM
•Cede il controllo della macchina al S.O.
Solo quando il S.O controlla la macchina, può avvenire la richiesta
di esecuzione di un programma, che viene perciò caricato in RAM
divenendo così “processo”
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Il sistema operativo fornisce all’utente le istruzioni astratte (lettura/scrittura)
affinchè possa avvenire l’interazione con il calcolatore e il processo in
esecuzione : le istruzioni di basso livello nei confronti delle periferiche
(tastiera, mouse, monitor, stampante, …) vengono mascherate
con comandi astratti (lettura/scrittura) disponibili all’utente.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Anche gli “Hard Disk” SSD devono essere
organizzati logicamente al fine di poter
reperire in modo efficiente le informazioni.
Devono perciò essere “formattati” e
suddivisi in cartelle (directory) organizzate
in modo gerarchico.
Il S.O. si occupa di gestire tale struttura
tramite il file system.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Il file system rende trasparente i dettagli di
lettura/scrittura dell’informazione
indipendentemente dai supporti hardware.
Nel corso degli anni la tendenza è stata
quella di ridurre la funzionalità del kernel al
minimo indispensabile in modo da poter
integrare le varie funzionalità di gestione
dell’hardware periferico con moduli
personalizzati.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Il S.O. si occupa anche della gestione
della CPU e della memoria centrale.
In particolare pianifica l’utilizzo della CPU
e l’allocazione in RAM da parte dei
processi in esecuzione.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Un processo ( detto anche task – azione,
lavoro, incombenza,…) è un programma in
esecuzione.
Contrariamente ad un programma che è
un oggetto statico ( una pura sequenza di
istruzioni), un processo è un oggetto
dinamico : il suo ”stato” cambia nel tempo.
Lo stato di un processo è costituito dai
valori contenuti in memoria e nei registri
della CPU.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Lo stesso programma può dare vita a più
processi distinti ( detti “figli”, ad esempio
più finestre di un browser web).
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
Quando più processi sono attivi, si parla di
elaborazione parallela a livello di
processo : viene gestito dal sistema
operativo che viene perciò classificato
come S.O. multitasking.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
SE UN PROCESSO E’ IMPEGNATO IN OPERAZIONI DI I/O
( input/output –lettura di dati in ingresso o scrittura di dati in uscita)
NON DEVE IMPEGNARE LA CPU NELL’ATTESA DELLA FINE DI TALE
OPERAZIONE, FACENDOLA RIMANENERE INOPEROSA.
LE OPERAZIONI DI I/O SONO INFATTI DI PERECCHI ORDINI DI GRANDEZZA
PIU’ LENTE DELLE OPERAZIONI LOGICO/ARITMETICHE.
E’ ANCHE NORMALE CHE LA MAGGIOR PARTE DEI PROCESSI SIANO
COSTITUITI DA OPERAZIONI DI I/O, INTERVALLATE DA BREVI PERIODI
DI ELABORAZIONE.
L’ACCESSO AL H.D. COSTITUISCE ANCH’ESSO UN’ OPERAZIONE DI I/O
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
E’ CHIARO A QUESTO PUNTO CHE IN OGNI ISTANTE UN SOLO PROCESSO
IMPEGNA LA CPU CON UNA SUA ISTRUZIONE.
E’ POSSIBILE UN’ELABORAZIONE PARALLELA A LIVELLO DI ISTRUZIONI
( DUE PROCESSI CHE IN UN DATO MOMENTO HANNO UNA PROPRIA
ISTRUZIONE IN ESECUZIONE IN MODO SIMULTANEO) SE L’HARDWARE
HA DUE UNITA’ DI ELABORAZIONE, CIOE’ DUE CPU
( PROCESSORE DUAL-CORE )
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
GLI ALTRI PROCESSI SI POSSONO TROVARE IN UNO DEI DUE STATI
pronto ( cioè in grado di far eseguire una proria istruzione
appena la cpu diviene disponibile )
in attesa ( di un evento esterno : accesso ad un h.d.,
pressione di un tasto,…)
E’ IL KERNEL CHE GOVERNA IL CONTROLLO DEI PROCESSI,
FACENDOLI PASSARE DA UNO STATO ALL’ALTRO A SECONDA
DELLA FASE IN CUI SONO
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
SE UNA PERIFERICA HA PRONTO IL DATO RICHIESTO DA UN processo
in attesa AVVISA IL KERNEL CON UN SEGNALE DETTO DI interrupt.
A QUESTO PUNTO IL KERNEL “RISVEGLIA” IL PROCESSO PONENDOLO
IN STATO DI pronto.
LO SCHEDULER E’ IL MODULO DEL KERNEL CHE DECIDE QUALE
TRA I PROCESSI pronti DEBBA IMPEGNARE LA CPU CON LE PROPRIE
ISTRUZIONI.
PRIMA DI RENDERE EFFETTIVA L’ESECUZIONE DI UN PROCESSO
EFFETTIVO, LO SCHEDULER DEVE RECUPERARE IL SUO “contesto”
CHE AVEVA SALVATO IN UNA AREA DI RAM.
il contesto viene caricato nei registri interni della cpu.
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche
FINE ESECUZIONE
COMANDO DI
ESECUZIONE DI UN
PROGRAMMA
FINE “QUANTO” DI TEMPO
PROCESSO IN
ESECUZIONE
EFFETTIVA
LISTA PROCESSI
PRONTI
PRIMO PROCESSO NELLA LISTA “PRONTI”
INTERRUPT ESTERNA
INTERRUPT INTERNA
LISTA PROCESSI
IN ATTESA
A.S.2011/2012
Maurizio Sparacino - Note di
tecnologie informatiche