Evoluzione degli Elaboratori - Dipartimento di Informatica e

Evoluzione degli Elaboratori (1)
Parte I
Evoluzione dei Sistemi di Elaborazione
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.1
Evoluzione degli Elaboratori
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.2
I primordi (1600-1945)
• Pascal (1623-1662)
– Pascaline: addizioni e sottrazioni
• Leibniz (1646-1716)
– Anche moltiplicazioni e divisioni
• Charles Babbage (1792-1871)
– Macchina Analitica
– Prima macchina programmabile
– Primo programmatore,una signora: Ada Byron Lovelace
(figlia di Lord Byron)
– Memoria: 1000 x 50 cifre decimali
– Limite: tecnologia meccanica
E poi l’evoluzione degli ultimi 15 anni (smartphone, tablet, etc.)
che tutti ben conosciamo
Un’accelerazione incredibile negli ultimi 60 anni
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.3
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.4
Poteva succedere …..
L’Analytical Engine
• Nel 1835 Camillo Cavour incontra Babbage a Londra, sente parlare
della macchina analitica che lo colpisce (Cavour era ingegnere)
• Nel 1840 Charles Babbage è invitato e partecipa al primo Congresso
degli scienziati italiani a Torino
• Babbage tiene una serie di Seminari a Torino e regala i disegni della
sua macchina all’Accademia delle Scienze
• Nel 1842 Luigi Menabrea pubblica (in francese) la descrizione
dell’architettura della macchina di Babbage
• Solo successivamente il lavoro di Menabrea è tradotto in inglese da
Ada Byron Lovelace (detta da Babbage the Enchantress of numbers)
• Il Piemonte pensa a finanziare la costruzione dell’analytical engine
• Poi, come al solito, non se ne fece nulla ……
• Così Moncalieri è rimasto Moncalieri e non è diventato Cupertino
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
Engine Mill (CPU)
I.5
Programma a schede perforate
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.6
La 2a guerra mondiale (1930-1955)
La dedica delle memorie di Babbage
Tecnologia elettromeccanica (relè)
• Konrad Zuse (~1930 Germania)
– Macchina a relè (distrutta nella guerra)
• John Atanasoff (~1940 USA)
– Aritmetica binaria
– Memoria a condensatori
• Howard Aiken (~1940 USA)
– MARK 1: versione a relè della macchina di Babbage
– Memoria: 72 x 23 cifre decimali
– tempo di ciclo: 6 sec.
– I/O su nastro perforato
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.7
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.8
La svolta: la macchina di Von Neumann
La 2a guerra mondiale (continua)
Tecnologia a tubi termoionici (valvole)
• COLOSSUS (~1940 GB)
– Gruppo di Alan Turing
– Decifrazione del codice Enigma
– Secretato dopo la fine della guerra
• ENIAC (~1946 USA)
– 18.000 valvole
– 30 tonnellate di peso
– 140kw assorbimento
– Programmabile tramite 6000 interruttori e pannelli
cablati
– 20 registri da 10 cifre
• IAS (~ 1950, Princeton USA)
– Programma memorizzato
– Aritmetica binaria
– Memoria: 4096 x 40 bit
– Formato istruzioni a 20 bit:
OPCODE
8
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.9
John von Neumann
INDIRIZZO
12
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.10
Alan Turing
• È l’altro grande padre fondatore dell’informatica
• Matematico brillante, educato a Cambridge e con grossi problemi
caratteriali (immortalato nel recente film The Imitation game)
• Ha inventato la macchina di Turing, un automa universale che può
eseguire qualsiasi procedura algoritmica
• Ci ha dimostrato che ci sono problemi indecidibili, per cui non potrà
mai essere trovata soluzione algoritmica che termini in tempo finito
• Ha svolto un ruolo fondamentale nella decifrazione del codice Enigma
• Era una sorta di genio leonardesco: grande calcolatore mentale,
leggeva un libro, capiva subito tutto, e lo ricordava pagina per pagina
• Ha dato contributi a molteplici settori di matematica e fisica
• Era anche un buon ingegnere: concepiva cose che potevano funzionare
• È lo scienziato pazzo immortalato da Peter Sellers nel film cult di Stanley
Kubrick Il dottor Stranamore (1964)
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.11
• Nel 1953 fu condannato per ‘gross indecency’ (castrazione chimica)
• Morì nel 1954 addentando una mela intrisa di cianuro: suicidio o
vendetta dei nazisti? (Comunque aveva visto il film Biancaneve!)
• Ha ottenuto nel 2013 il perdono reale, un po’ tardivo e alla memoria ...
• Galileo però aveva dovuto aspettare 400 anni ….
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.12
Arrivano i semiconduttori (1955-1965)
Primi sistemi commerciali (a valvole)
• Mercato limitato a pochi grandi clienti
Tecnologia a transistor
• Inizialmente dominato da UNIVAC
• IBM entra nel mercato nel 1953, e assume una posizione
dominante che manterrà fino agli anni ’80
Due diverse tipologie di computer
•
Le capacità di queste macchine ci fanno sorridere:
– IBM 701 (1953):
• Memoria: 2k word di 36 bit (circa 8 KB!!!)
• 2 istruzioni per word
– IBM 704 (1956):
• Memoria: 4k word di 36 bit
• Istruzioni a 36 bit
• Floating-point hardware
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
Mainframe: grossi calcolatori usati per applicazioni
scientifiche, militari e nella pubblica amministrazione
• IBM 7090
– Memoria 32k word a 36 bit, tempo di ciclo 2 sec
– Pochi esemplari, costano milioni di $
Piccoli sistemi: per medie aziende o di appoggio ai
mainframe
• IBM 1401
– Stessa capacità di I/O del 7090
– Memoria 4k word 8bit (1byte)
– Sistema orientato alla manipolazione di caratteri
I.13
Piccolo è bello: il minicomputer
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.14
Mostri fuori concorso: i supercomputer
• Macchine molto potenti dedicate al number crunching
• 10 volte più veloci dei mainframe
• Architettura molto sofisticata
• Parallelismo all’interno della CPU
• DEC PDP-8 (1965)
• Nicchia di mercato molto specifica (vero anche oggi)
• Interconnessione a bus, molto flessibile
• Architettura incentrata sull’I/O
• Possibilità di connettere qualsiasi periferica
• Molto meno costoso dei mainframe (1/100)
• Prodotto in oltre 50.000 esemplari
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
• Tipico rappresentante: CDC 6600 (1964)
• Progettista del CDC 6600 è Seymour Cray, poi fondatore
della CRAY, anche oggi leader di mercato
I.15
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.16
Integrazione su larga scala (1965-1980)
L’animale domestico: il PC (1980)
Dal transistor al circuito integrato
• Diretto discendente del minicomputer:
– Architettura a bus
– Parole e istruzioni a 16 bit
– Interfaccia grafica (GUI, Graphical User Interface)
• Nasce nel 1980 all’IBM (che dà così avvio alla propria
decadenza)
• Esplosione del mercato dei ‘cloni’
• Crollo dei costi ed enorme espansione dell’utenza
• L’espansione del PC è trainata da tre fattori:
– Aumento della capacità della CPU
– Discesa dei costi della memoria
– Discesa dei costi dei dischi
• Evoluzione dell’architettura HW:
– Microprogrammazione
– Unità veloci floating-point
– Processori ausiliari dedicati alla gestione dell’I/O
• Evoluzione dei Sistemi Operativi
– Virtualizzazione delle risorse
– Multitasking: esecuzione concorrente di più programmi
– Memoria Virtuale: rimuove le limitazioni dovute alle
dimensioni della memoria fisica
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.17
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
Mobile è bello: palmari, tablet etc.
La nuova frontiera: il ‘cloud computing’
•
•
•
•
• Evoluzione verso dispositivi portatili e molto piccoli
• PDA (Personal Digital Assistent) cioè computer palmari
• Smart phone: fusione di PDA e cellulare
• Tablet: computer senza tastiera, con interazione tattile
• Sistemi operativi ad hoc: Android, iOS, Windows Phone
• Sistemi embedded
– Funzionalità intelligenti aggiunte a elettrodomestici e
dispositivi di vario tipo
– Il software nasce (e muore) col dispositivo, è caricato
nel firmware su memoria flash ed è spesso aggiornabile
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.18
I.19
L’idea è di fornire la potenza di calcolo come servizio
Ci si era pensato negli anni ’60, ma i tempi non erano maturi…
Oggi è fattibile per via della connettività Internet (cloud)
Enormi server farm esistono (in luoghi spesso tenuti segreti)
– Risorse di calcolo: tempo di CPU e memoria
– Memoria di massa: sterminate disk farm
– Schemi di memorizzazione ridondanti
• L’utente sottoscrive contratti di servizio
• Rinuncia a sapere dove i suoi dati sono conservati e dove le
sue elaborazioni saranno effettuate
• Vantaggi:
– Abbattimento di investimenti e costi di gestione
– Crescita dinamica: meno cruciale la pianificazione
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.20
Legge di Moore per le CPU
La legge di Moore (1965)
Il numero di transistor per chip raddoppia ogni 18 mesi
• Più transistor in una CPU significano:
– Eseguire direttamente istruzioni più complesse
– Maggiore memoria sul chip (cache)
– Maggiore parallelismo interno
• Altro fattore decisivo è la frequenza di funzionamento
• Circa un aumento del 60% all’anno
• Conseguenze:
– Aumento della capacità dei chip di memoria
– Aumento della capacità delle CPU
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.21
Legge di Nathan (1997)
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
Tipologie di computer
Il software è un gas: riempie sempre completamente
qualsiasi contenitore in cui lo si metta
Tipo Computer usa e getta
(ma sicuramente non è un gas perfetto!)
• Le dimensioni del software sono sempre cresciute col
calare dei costi e con l’aumentare della memoria
disponibile
• Il Circolo Virtuoso
– Costi più bassi e prodotti migliori
– Aumento dei volumi di mercato
– Fattori di scala nella produzione
– Costi più bassi …...
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.22
Applicazione
0.10 ‐ 0.50
Cartoline d'auguri, pupazzetti
Microcontroller
1 ‐10
Game computer
50 ‐150
Orologi, elettrodomestici, automobili
Console per videogiochi
Personal computer
200 ‐ 1000
Desktop e laptop computer
PDA e Tablet
200 ‐ 800
Smartphone e dispositivi ad alta portabilità
Server
Mainframe
I.23
Prezzo €
3000 ‐ 10.000 Server di rete e di applicazione
1 M ‐ 5 M
Grandi applicazioni legacy
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.24
Tipologie di computer: PC e server
Tipologie di computer: PDA
• Ormai integrati in telefoni mobili (smartphone)
• Personal Computer
– Sappiamo tutti chi è
– Microprocessore a 32/64 bit
– Memoria di 2- 16 GByte
– Capacità dei dischi dell’ordine dei TByte (1012 Byte)
– Per il 95% basato sulla piattaforma Intel
• Sempre con me !
• Configurazione hardware
– CPU specializzate e molto evolute
– Display fino a 960 x 640 (retina display iPhone5)
– Memoria di massa allo stato solido
– Fotocamera/telecamera
– Connettività WiFi e 3G (4G)
– Interfaccia tattile
• Applicazioni principali
– Gestione agenda e rubrica
– Navigazione Internet e posta elettronica
– Fruizione multimediale
• Server
– Su rete locale o Web server
– Memorie di decine di GByte
– Capacità dei dischi dell’ordine di decine di TByte
– Gestione di rete efficiente
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.25
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.26
Tipologie di computer: Tablet
Playstation
• Evoluzione del laptop comparsa nei primi anni 2000…
• Computer dedicati con elevate capacità di elaborazione grafica
• Playstation 4 di Sony (2013)
– CPU 8-core a 64 bit e 6 processori ausiliari (SPE) a 128 bit
– GPU (processore grafico) con 18 unità per 1.84 Tflops
– 8 GB di memoria GDDR5 + 2 GB MB di memoria video
– Grafica ad alte prestazioni e chip audio dedicato
– Hard disk fino a 500 GB
– Dischi ottici blue-ray
– Controllori sofisticati con rilevazione di movimento
• Si tratta di sistemi chiusi
– Poco espandibili
– Ottimizzate per un particolare tipo di applicazioni
… ma il mercato non era maturo
• L’idea: per molte cose la tastiera non serve
• Rilanciato clamorosamente dall’iPAD nel 2010
• Interfacce tattili con tastiere virtuali
• Configurazione tipo PDA potenziato
• Connettività basata su WiFi e GSM (aspettando WiMax ..)
• Applicazioni tipiche:
– Gestione e-mail e navigazione web
– Accesso ai media: giornali, TV …
– Lettura documenti (integra e-book reader)
Ha modificato il paradigma d’interazione uomo-macchina
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.27
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.28
Microcontrollori: nascosti e onnipresenti
Computer usa e getta
• Piccoli computer integrati nei dispositivi
– Elettrodomestici
– Dispositivi per la comunicazione: telefoni, fax, cellulari
– Dispositivi multimediali: fotocamere, televisori etc.
– Armi: missili, siluri
– Giochi sofisticati
• In un’auto moderna sono presenti tipicamente una cinquantina
di microcontrollori (ABS, iniezione, radio, GPS, …..)
• Sono sistemi con architettura completa
• Versioni a 4, 8, 16 e 32 bit (ora anche a 64 bit)
• Scelte architetturali basate sui costi
• Dispositivi del costo di pochi centesimi, da inserire in biglietti
di auguri etc.
– Costano pochi centesimi
– Emettono un codice di identificazione a 128 bit
– Si caricano grazie ad un segnale entrante
– Sostituiscono etichette con codice a barre
– Applicazioni ‘tipo Telepass’
– Gestione dei bagagli
– Inseriti anche nel bestiame, e nei cani e gatti
– Si pensa di inserirli anche nelle banconote
Un microcontrollore a 8 bit costa circa 10 centesimi
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
• Dispositivi RFID (Radio Frequency Identification)
I.29
Tipologie di Computer: mainframe
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.30
La famiglia Intel
• Diretti discendenti della serie IBM/360
• Gestione efficiente dell’I/O
• Periferie di dischi di Petabyte (1015 byte)
• Centinaia di terminali connessi
• Costi di molti milioni di Euro
Perché sopravvivono?
– Gestiscono applicazioni legacy
– Costi di migrazione delle applicazioni molto
superiori a quelli dell’hardware
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.31
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.32
L’architettura ARM
Perché Intel ha monopolizzato il mercato?
• Intel oggi detiene ben oltre il 90% del mercato desktop, laptop
e server
Advanced RISC Machine)
Sviluppato da ARM Holding (Cambridge, UK)
IP core business: vendono IP (Intellectual Property)
• Persino Apple, dopo feroce resistenza, si è arresa
• Una delle carte vincenti è stata la compatibilità all’indietro:
− Significa che tutti i membri della famiglia sono in grado di
eseguire in modo nativo il codice dei loro predecessori
− Ciò è vero partire dal 8088 (anno 1979)
− Ad esempio il Core i7 a 64 bit esegue in modo nativo anche
il codice a 32 bit del Pentium e quello a 16 bit del 8088
− Ciò ha garantito nel corso degli anni la portabilità del
software, e quindi l’assenza di brusche discontinuità
• Una proposta che non si poteva rifiutare ….
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.33
•
•
•
•
Architettura RISC a 32 bit (64 nell'ultima versione) a basso consumo
Chip costruiti su licenza: Apple, Samsung, AMD, Nvidia, Sony …..
Spesso usata come componente in SoC (System on a Chip)
8-10 miliardi di pezzi prodotti all'anno. Presente in:
– 95% degli smartphone e tablet (iPhone, iPod, iPad, Galaxy.....)
– 90% dei controllori di hard disk
– 40% dei televisori digitali
– 15% dei microcontrollori, router, switch
– 20% degli altri dispositivi mobili (navigatori GPS, fotocamere ...)
Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2015-2016
I.34