Evoluzione degli Elaboratori (1) Parte I Evoluzione dei Sistemi di Elaborazione Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.1 Evoluzione degli Elaboratori Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 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. 2014-2015 I.3 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.4 Poteva succedere ….. La dedica delle memorie di Babbage • 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. 2014-2015 I.5 La 2a guerra mondiale (1930-1955) Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 La 2a guerra mondiale (continua) Tecnologia elettromeccanica (relè) Tecnologia a tubi termoionici (valvole) • Konrad Zuse (~1930 Germania) – Macchina a relè (distrutta nella guerra) • 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 • 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. 2014-2015 I.6 I.7 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.8 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 • 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) INDIRIZZO 12 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 John von Neumann I.9 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 Alan Turing I.10 Primi sistemi commerciali (a valvole) • È l’altro grande padre fondatore dell’informatica • Mercato limitato a pochi grandi clienti • Matematico brillante, educato a Cambridge e con grossi problemi caratteriali (immortalato nel recente film The Imitation game) • Inizialmente dominato da UNIVAC • IBM entra nel mercato nel 1953, e assume una posizione dominante che manterrà fino agli anni ’80 • 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 oltre 400 anni …. Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.11 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. 2014-2015 I.12 Piccolo è bello: il minicomputer 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 $ • 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 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. 2014-2015 I.13 Mostri fuori concorso: i supercomputer Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 Integrazione su larga scala (1965-1980) Dal transistor al circuito integrato • Macchine molto potenti dedicate al number crunching • Evoluzione dell’architettura HW: • 10 volte più veloci dei mainframe – Microprogrammazione • Architettura molto sofisticata – Unità veloci floating-point – Processori ausiliari dedicati alla gestione dell’I/O • Parallelismo all’interno della CPU • Nicchia di mercato molto specifica (vero anche oggi) • Evoluzione dei Sistemi Operativi • Tipico rappresentante: CDC 6600 (1964) – Virtualizzazione delle risorse • Progettista del CDC 6600 è Seymour Cray, poi fondatore della CRAY, anche oggi leader di mercato – 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. 2014-2015 I.14 I.15 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.16 L’animale domestico: il PC (1980) Mobile è bello: palmari, tablet etc. • 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. 2014-2015 • 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 I.17 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. 2014-2015 I.18 La legge di Moore (1965) • • • • Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.19 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. 2014-2015 I.20 Legge di Moore per le CPU 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 …... • 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. 2014-2015 I.21 Tipologie di computer Tipo Computer usa e getta Applicazione 0.10 - 0.50 Cartoline d'auguri, pupazzetti 1 -10 Game computer 50 -150 Console per videogiochi 200 - 1000 Desktop e laptop computer PDA e Tablet 200 - 800 Smartphone e dispositivi ad alta portabilità Mainframe • 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 Orologi, elettrodomestici, automobili Personal computer Server • 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 3000 - 10.000 Server di rete e di applicazione 1M-5M I.22 Tipologie di computer: PC e server Prezzo € Microcontroller Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 Grandi applicazioni legacy Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.23 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.24 Tipologie di computer: PDA Tipologie di computer: Tablet • Ormai integrati in telefoni mobili (smartphone) • Evoluzione del laptop comparsa nei primi anni 2000… • 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 … 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) Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 Ha modificato il paradigma d’interazione uomo-macchina I.25 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.26 Playstation Microcontrollori: nascosti e onnipresenti • 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 • 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 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.27 Un microcontrollore a 8 bit costa circa 10 centesimi Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.28 Computer usa e getta Tipologie di Computer: mainframe • Dispositivi del costo di pochi centesimi, da inserire in biglietti di auguri etc. • Diretti discendenti della serie IBM/360 • Gestione efficiente dell’I/O • Dispositivi RFID (Radio Frequency Identification) • Periferie di dischi di Petabyte (1015 byte) • Centinaia di terminali connessi • Costi di molti milioni di Euro – Costano pochi centesimi – Emettono un codice di identificazione a 128 bit – Si caricano grazie ad un segnale entrante – Sostituiscono etichette con codice a barre Perché sopravvivono? – Gestiscono applicazioni legacy – Costi di migrazione delle applicazioni molto superiori a quelli dell’hardware – 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. 2014-2015 I.29 La famiglia Intel Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.30 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. 2014-2015 I.31 Fondamenti di Informatica - Architetture di Elaborazione - prof. Silvio Salza - a.a. 2014-2015 I.32 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. 2014-2015 I.33