[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
L’ELABORATORE …dall’esterno
Componenti principali• Unità centrale (“case”)• Video (“monitor”)• Tastiera e Mouse• Lettore CD
Componenti accessori• Stampante• Modem• Scanner• Tavolette grafiche…
HARDWAREComposto da un insieme di unità funzionali
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
Architettura di un PC
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
Organizzazione gerarchica della memoria
• la memoria negli elaboratori non è tutta uguale
• compromessi tra costo, prestazioni e dimensione della memoria
• la memoria è più lenta del processore e tende a limitarne le prestazioni
• poca memoria veloce vicino al processore e tanta memoria lenta
complessiva
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
ARCHITETTURA DI UN ELABORATORE
Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni ’40).
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
MACCHINA DI VON NEUMANN
UNITÀ FUNZIONALI fondamentali:1. Processore (CPU, Central Processing Unit)2. Unità di I/O (Input / Output)3. Memoria Centrale (RAM & ROM)4. Bus di sistema
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
MACCHINA DI VON NEUMANN
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
TECNOLOGIA DIGITALE
Dati ed operazioni vengono codificati a partire da due valori distinti di grandezze elettriche:• tensione alta (VH, 5V) • tensione bassa (VL, 0V)
A tali valori vengono convenzionalmente associate le due cifre binarie 0 e 1 :• logica positiva: 1 « VH , 0 « VL
• logica negativa: 0 « VH, 1 « VL
CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
TECNOLOGIA DIGITALE (segue)
01000110101 ....
Dati ed operazioni vengono codificati tramite sequenze di bit (bit = Binary digIT)
CPU è in grado di operare soltanto in aritmetica binaria, effettuando operazioni elementari :• somma e differenza• scorrimento (shift)• ...
Lavorando direttamente sull’hardware, l’utente è forzato a esprimere i propri comandi al livello della macchina, tramite sequenze di bit.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
Svolge le elaborazioni e il trasferimento dei dati, cioè esegue i programmi.
CPU (Central Processing Unit)
•Clock•Registri•ALU (Arithmetic & Logic Unit)•Unità di controllo
E’ composta da:
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
CPU …all’interno
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
CPU: CLOCK
Il clock dà la base dei tempi necessaria per mantenere il sincronismo fra le operazioni imponendo che l’esecuzione di ogni operazione impieghi un tempo al massimo uguale al periodo di clock.
DUBBIO: come si sceglie la frequenza (inverso del periodo) di clock?
Risposta: in base al tempo necessario per eseguire l’istruzione più lunga.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
CPU: REGISTRI
•I registri sono locazioni usate per memorizzare dati, istruzioni, o indirizzi all’interno della CPU.
•L’accesso ai registri è molto veloce.
•Numero e dimensione dei registri variano da macchina a macchina.
•Due classi:§general purpose (A, B, C, …)§specializzati (PC, IR, RI, RD, RINT, FLAG)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
I REGISTRI SPECIALIZZATI
Program Counter (PC)• Indica l’indirizzo della cella di memoria che contiene la
prossima istruzione da eseguireInstruction Register (IR)
• Contiene l’istruzione da eseguire.
Registro Indirizzi (RI)• Contiene l’indirizzo della cella di memoria da selezionare
per il trasferimento di un dato con la CPURegistro Dati (RD) o Accumulatore
• Contiene il dato attualmente oggetto di elaborazione e il risultato al termine dell’esecuzione
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
ALTRI REGISTRI
Registri di uso generale (A,B,C,...)• Sono usati per contenere sia dati (in particolare, operandi
di operazioni aritmetico/logiche) sia indirizzi.
Registro Interruzioni (RINT)• Serve per gestire le interruzioni (hw e sw).
Registro dei flag (FLAG)• Ogni flag indica la presenza/assenza di una proprietà
nell’ultimo risultato generato dalla ALU. Altri bit riassumono lo stato del processore.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
4. Il registro FLAG riporta sui suoi bit indicazioni sul risultato dell'operazione (riporto, segno, etc.).
CPU: ALU (Arithmetic & Logic Unit)
ESEMPIO: ALU in grado di eseguire somma, sottrazione, prodotto, divisione con due operandi contenuti nei registri A e B.
Esegue operazioni aritmetiche, logiche e confronti sui dati della memoria centrale o dei registri. Può essere semplice oppure (più spesso) molto complessa e sofisticata.
1. I due operandi vengono caricati nei registri A e B.2. La ALU viene attivata da un comando inviato dalla CPU che specifica
il tipo di operazione.3. Nel registro A viene caricato il risultato dell'operazione eseguita dalla ALU.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
CPU: UNITÀ DI CONTROLLO
Da quando viene acceso a quando è spento, essa esegue in continuazione il ciclo:
prelievo / decodifica / esecuzione
( fetch / decode / execute )
L'unità di controllo fa funzionare l’elaboratore
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
IL CICLO fetch / decode / execute
FETCH• si accede alla prossima istruzione (cella il cui indirizzo
è contenuto nel registro PC) ...• … e la si porta dalla memoria centrale, memo-
rizzandola nel Registro Istruzioni (IR)DECODE• si decodifica il tipo dell’istruzione in base al suo
OpCode (codice operativo)EXECUTE• si individuano i dati usati dall’istruzione• si trasferiscono tali dati nei registri opportuni• si esegue l’istruzione.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
IL CICLO fetch / decode / execute
Attenzione: Istruzioni particolari possono alterare il prelievo delle istruzioni da celle consecutive:
• istruzioni di salto• istruzioni di chiamata a sotto-programmi• istruzioni di interruzione
Eseguita un’istruzione si incrementa il PC di 1:esecuzione sequenziale dei programmi
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
MULTITASKING
Poiché i registri compendiano tutto lo stato dell’elaborazione di un certo processo,
• salvando in memoria il contenuto di tutti i registri è possibileaccantonare un processo per passare a svolgerne un altro (salvataggio di contesto)
• ripristinando dalla memoria il contenuto di tutti i registriprecedentemente salvati è possibile ripristinare lo stato di un processo accantonato, riprendendone l’esecuzione come se nulla fosse accaduto.
E’ la possibilità che consente a un sistema operativo di eseguire più compiti “allo stesso tempo”
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
UNITA’ DI I/O
INTERFACCE dispositivi che consentono all’elaboratore di comunicare con le periferica.Sono molto diverse tra loro (dipendono dal tipo di unità periferica da connettere).
PERIFERICHE• Tastiera e Mouse• Video e Stampante• Scanner e tavoletta grafica• Dispositivi di memoria di massa• ...
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
Collegamenti delle periferiche:le porte e i connettori
• Porta seriale (maschio a 9 o 25 pin) per collegare mouse, modem ... ;
• Porta parallela (femmina a 25 pin) per collegare ad esempio la stampante;
• Porta video (femmina a 15 pin su tre file) per il collegamento dello schermo;
• Porta PS/2 (femmina circolare) per il collegamento del mouse;
• Porta USB (Universal Serial Bus) nuovo tipo di connessione ad alta velocità per collegare periferiche esterne in cascata
• Porte audio (connettori jack) casse audio.• Per ogni porta è definito il protocollo di comunicazione per specificare:
velocità di trasmissione, comunicazione sincrona o asincrona ...
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
LA MEMORIA DI MASSA
• memorizza grandi quantità di informazioni• persistente (le informazioni non si perdono spegnendo
la macchina)• accesso molto meno rapido della memoria centrale
(millisecondi contro nanosecondi Þ differenza 106)
MEMORIA DI MASSA• Dischi• CD• DVD• ...
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
• Tecnologia magnetica: dischi fissi
• Tecnologia ottica:• CD (audio, CD-ROM)• CD-R• CD -RW• DVD
• Tecnologia flash (memorie USB)
LA MEMORIA DI MASSA
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
LA MEMORIA DI MASSA
Caratteristiche:• tempo di accesso• capacità
Scopo: memorizzare grandi masse di dati in modo persistente / permanente
Multipli del byte (=8 bit):• Kbyte (210 =1.024 Byte)• Mbyte (220 = 1.048.576 Byte)• Gbyte (230 = 1.073.741.824 Byte)
Tempo di accesso• disco fisso: ~10 ms• floppy: ~100 ms
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
• Dimensioni relativamente limitate• Accesso molto rapido• E’ composta da:
§RAM (Random Access Memory) è volatile (perde il suo contenuto quando si spegne il calcolatore) § usata per memorizzare dati e programmi
§ROM (Read Only Memory) è persistente (mantiene il suo contenuto quando si spegne il calcolatore) ma il suo contenuto è fisso e immutabile
• usata per memorizzare programmi di sistema
LA MEMORIA CENTRALE
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
LA MEMORIA CENTRALE …all’interno
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
INDIRIZZAMENTO
E’ l’attività con cui l’elaboratore seleziona una particolare cella di memoria
• Per farlo, l’elaboratore pone l’indirizzo della cella desiderata nel Registro Indirizzi (RI).
• se il RI è lungo N bit, si possono indirizzare 2N celle di memoria (numerate da 0 a 2N-1)
• esempio: N=10 Þ 1024 celle.
• Oggi, RI è lungo tipicamente 32 bit® SPAZIO INDIRIZZABILE di 4 Gb
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
OPERAZIONI DI LETTURA
Lettura (Read): il contenuto della cella di memoriaindirizzata dal Registro Indirizzi è copiato nel RegistroDati.
(N bit)
RIRD
read
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
OPERAZIONI DI SCRITTURAScrittura (Write): il contenuto del Registro Dati è copiato nella
cella di memoria indirizzata dal Registro Indirizzi.
0
1
(N bit)
N-12
RIRD
write
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
Memorie Gerarchiche
“Teoricamente si vorrebbe avere una memoria di capacitàindefinitamente grande, tale che ogni particolare parola possa essereimmediatamente disponibile.Siamo così costretti a riconoscere la possibilità di costruire una gerarchiadi memorie, ognuna delle quali ha capacità superiore a quella precedente,ma a cui si può accedere con minor velocità”.
John von Neumann et al. (1946)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
GERARCHIA DELLE MEMORIE
REGISTRI
CACHE
RAM
Velo
cità
/ co
sto
Capacità
Memoria locale
Memoria di massa
Memoria centrale
HD
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
MEMORIE CACHE
PROBLEMA:Sebbene la RAM sia veloce, non è abbastanza veloce da “star dietro” ai moderni processori.
CONSEGUENZA:il processore perde tempo ad aspettare l’arrivo dei dati dalla RAM.
SOLUZIONE:Inserire tra processore e RAM una memoria particolarmente veloce dove tenere i dati usati più spesso (memoria cache)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
MEMORIE CACHE (2)
In questo modo,¨la prima volta che il microprocessore carica dei dati
dalla memoria centrale, tali dati vengono caricati anche sulla cache¨le volte successive, i dati possono essere letti dalla
cache (veloce) invece che dalla memoria centrale (più lenta)¨Principio di località di dati e istruzioni
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
MEMORIE CACHE (3)
DUBBIO:Ma se abbiamo memorie così veloci,perché non le usiamo per costruire tutta laRAM?
Semplice...perché costano molto!!OGGI, la cache è spesso già presentedentro al processore (cache di I° livello), ealtra può essere aggiunta (cache di II°livello)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
Principio di località
• Temporale: tendenza a riferirsi allo stesso elemento entro breve tempo– cicli di programma– variabili istanziate nei cicli
• spaziale: tendenza a riferire la successiva lettura/scrittura in memoria adelementi che hanno indirizzo vicino a quello dell’elemento corrente– programmi sequenziali– strutture dati allocate sequenzialmente
• obiettivo ideale: fornire una quantità di memoria pari a quella disponibilenella tecnologia più economica garantendo una velocità di accesso pari aquella della memoria più costosa
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
CAPACITÀ DELLE MEMORIE
Tipo di memoria Capacità
Memoria centrale 256 Mbyte – 2GbyteDischi magnetici 80 – 200 GbyteDischi floppy 1.4 MbyteNastri (bobina) 20-400 MbyteDischi ottici 650 Mbyte - 17 GByte
Memoria cache 256 Kbyte – 2Mbyte
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
BUS DI SISTEMA
ll Bus è un insieme di “linee di comunicazione” diverse:• bus dati (data bus)• bus indirizzi (address bus)• bus comandi (command bus)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
BUS DI SISTEMA (2)
Il Bus collega due unità funzionali alla volta:• una trasmette…•... e l’altra riceve. Il trasferimento dei dati avviene o sotto il controllo della CPU, o mediante accesso diretto alla memoria (DMA).
ǺÊ Ė
Đ Į Ŀ ŇÒĹÏ Ĭ Į ŃÔÒÏ ŁĮ
ČOÉ
ÅÕÓ
DMA
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
BUS DI SISTEMA (3)
BUS DATI• bidirezionale• serve per trasmettere dati dalla memoria o viceversa.
BUS INDIRIZZI• unidirezionale• serve per trasmettere il contenuto del registro indirizzi alla
memoria (si seleziona una specifica cella su cui viene eseguita o un’operazione di lettura o una operazione di scrittura)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
BUS DI SISTEMA (4)
BUS COMANDI• bidirezionale• tipicamente usato per inviare comandi verso la memoria
(es: lettura o scrittura) o verso una periferica (es. stampa verso la stampante ® interfaccia)
• può essere usato per inviare comandi verso il processore nel caso di DMA (o interfacce di I/O)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
PERSONAL COMPUTER
BUS COMANDI• bidirezionale• tipicamente usato per inviare comandi verso la memoria
(es: lettura o scrittura) o verso una periferica (es. stampa verso la stampante ® interfaccia)
• può essere usato per inviare comandi verso il processore nel caso di DMA (o interfacce di I/O)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
PERSONAL COMPUTER
• PC desktop e notebook (ex “IBM-compatibili”)
• Principalmente usano processori Intel (x86, Celeron, Pentium, …) o AMD (x86, K5, K6, Duron, Athlon, …)
• Le prestazioni dipendono da:§ frequenza dell’orologio di sistema (clock)§ dimensione della RAM§ velocità/parallelismo del trasferimento dati§ scheda grafica
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
ALTRI SISTEMI DI CALCOLO
Workstationsistemi con prestazioni normalmente superiori aquello di un tipico PC e spesso dedicati ad unasingola attività (e.g., grafica) ma anche persupportare più utenti.
ServerMacchine capaci di servire contemporaneamente(i.e., mettere a disposizione risorse per) decine diutenti collegati tra loro.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
OLTRE la macchina di Von Neumann
•Problema: nella macchina di Von Neumann le operazioni sonostrettamente sequenziali.
• Altre soluzioni introducono forme di parallelismo• processori dedicati (coprocessori) al calcolo numerico, alla
gestione della grafica, all’I/O.• esecuzione in parallelo delle varie fasi di un’istruzione: mentre
se ne esegue una, si acquisiscono e decodificano le istruzionisuccessive (pipeline)
• architetture completamente diverse: sistemi multi-processore,macchine dataflow, Lisp machine, reti neurali.
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
ARCHITETTURE MULTI-COMPONENTE
• componenti software e hardware eterogenei
• servizi distribuiti: i componentiforniscono servizi ad altri componenti e usano i servizi forniti da altri componenti
• esecuzione distribuita nel tempo e nello spazio• necessità di protocolli di
comunicazione
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
RETI DI CALCOLATORI
• Reti Locali: connettono elaboratori fisicamente vicini (nello stesso ufficio o stabilimento).• LAN (Local Area Network)
Stampante di qualita`
Stampante ad aghi
Workstation Workstation Workstation Workstation Workstation
Disk server
Bus di rete
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
RETI DI CALCOLATORI (segue)
• Reti geografiche: collegano elaboratori medio-grandi situati anche a grande distanza.
• WAN (Wide Area Network)
HostHost
Host
Rete geografica
Rete locale
terminali remoti
mini
PC
printer
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
INTERNET: la rete delle reti
• Internet: la rete risultante dalla interconnessione mondiale di tutte le reti.
• Milioni di elaboratori (“siti”) collegati a ragnatela
• World-Wide Web (WWW)
[email protected]. Marina Paolanti – Informatica per la comunicazione– a.a. 2021/2022
INTERNET: i servizi
• lettura ipertesti in linea http• trasferimento file ftp• posta elettronica mailto
• terminale remoto telnet• gruppi di discussione news• transazioni sicure https
• … e tutto ciò che su questo si può costruire!(commercio elettronico, prenotazioni …)
Top Related