Parte I Evoluzione dei Sistemi di Elaborazione Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.1 Evoluzione degli Elaboratori (1) Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.2 Evoluzione degli Elaboratori 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. 2016-2017 I.3 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.4 Poteva succedere ….. • 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. 2016-2017 I.5 L’Analytical Engine Engine Mill (CPU) Programma a schede perforate Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.6 La dedica delle memorie di Babbage Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.7 La 2a guerra mondiale (1930-1955) 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. 2016-2017 I.8 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.9 La svolta: la macchina di Von Neumann • IAS (~ 1950, Princeton USA) – Programma memorizzato – Aritmetica binaria – Memoria: 4096 x 40 bit – Formato istruzioni a 20 bit: OPCODE 8 INDIRIZZO 12 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.10 John von Neumann • 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. 2016-2017 I.11 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 • 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. 2016-2017 I.12 Primi sistemi commerciali (a valvole) • Mercato limitato a pochi grandi clienti • Inizialmente dominato da UNIVAC • IBM entra nel mercato nel 1953, e assume una posizione dominante che manterrà fino agli anni ’80 • 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. 2016-2017 I.13 Arrivano i semiconduttori (1955-1965) Tecnologia a transistor Due diverse tipologie di computer 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.14 Piccolo è bello: il minicomputer • DEC PDP-8 (1965) • 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. 2016-2017 I.15 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 • Nicchia di mercato molto specifica (vero anche oggi) • Tipico rappresentante: CDC 6600 (1964) • Progettista del CDC 6600 è Seymour Cray, poi fondatore della CRAY, anche oggi leader di mercato Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.16 Integrazione su larga scala (1965-1980) Dal transistor al circuito integrato • 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. 2016-2017 I.17 L’animale domestico: il PC (1980) • 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.18 Mobile è bello: palmari, tablet etc. • 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. 2016-2017 I.19 La nuova frontiera: il ‘cloud computing’ • • • • 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. 2016-2017 I.20 La legge di Moore (1965) Il numero di transistor per chip raddoppia ogni 18 mesi • 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. 2016-2017 I.21 Legge di Moore per le CPU • 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.22 Legge di Nathan (1997) Il software è un gas: riempie sempre completamente qualsiasi contenitore in cui lo si metta (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. 2016-2017 I.23 Tipologie di computer Tipo Computer usa e getta Prezzo € 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 3000 - 10.000 Server di rete e di applicazione 1M-5M Grandi applicazioni legacy Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.24 Tipologie di computer: PC e server • 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 • 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. 2016-2017 I.25 Tipologie di computer: PDA • Ormai integrati in telefoni mobili (smartphone) • 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.26 Tipologie di computer: Tablet • Evoluzione del laptop comparsa nei primi anni 2000… … 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. 2016-2017 I.27 Playstation • 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.28 Microcontrollori: nascosti e onnipresenti • 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 Un microcontrollore a 8 bit costa circa 10 centesimi Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.29 Computer usa e getta • Dispositivi del costo di pochi centesimi, da inserire in biglietti di auguri etc. • Dispositivi RFID (Radio Frequency Identification) – 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.30 Tipologie di Computer: mainframe • 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. 2016-2017 I.31 La famiglia Intel Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2016-2017 I.32 Perché Intel ha monopolizzato il mercato? • Intel oggi detiene ben oltre il 90% del mercato desktop, laptop e server • 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. 2016-2017 I.33 L’architettura ARM Advanced RISC Machine) Sviluppato da ARM Holding (Cambridge, UK) IP core business: vendono IP (Intellectual Property) • • • • 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. 2016-2017 I.34