Breve storia del calcolatore
Transcript
Breve storia del calcolatore
Breve storia del calcolatore Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 1 Storia degli elaboratori • L’età meccanica • L’età elettrica – 1a generazione (le prime macchine) – 2a generazione (il transistor - 1947) – 3a generazione (i circuiti integrati - 1965) – 4a generazione (i VLSI) • L’età del microprocessore – 5a generazione (Intel 4004 - 1971) • L’evoluzione tecnologica Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 2 I primordi Il primo computer usato dall'uomo è stato senza dubbio la mano. Grazie alle mani gli egiziani riuscirono a rappresentare tutti i numeri sino a 9999 ed erano in grado di eseguire addizioni, sottrazioni, moltiplicazioni e anche calcoli più complessi. Il termine inglese "digit" ("cifra"), oggi tanto usato, deriva proprio dalla parola latina digitus ("dito"). Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 3 L’età “meccanica” • L’idea di un sistema di calcolo non è nuova; essa esisteva molto tempo prima che gli apparecchi elettrici ed elettronici fossero inventati: – – – – Abaco Macchina per addizioni (Pascal 1642) Il telaio automatico di Jacquard la macchina analitica di Babbage Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 4 Abaco • • • L’idea di calcolare con macchine risale a prima del 500 a.c. quando i Babilonesi inventarono l’abaco (di fatto il primo elaboratore meccanico). L'abaco è il progenitore del più moderno pallottoliere. gli esemplari a nostra disposizione appartennero ai Maya, Egiziani, Cinesi, Romani ed hanno più di 2000 anni ma probabilmente l'abaco ha più di 5000 anni. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 5 Origine della parola “calcolo” • La parola abaco viene dal semitico “abq” e significa polvere o sabbia • In latino i "calculi" (calculu(m) ‘sassolino’, e in particolare ‘sassolino per fare i conti, pietruzza’) stavano a significare i "sassolini" che si ponevano in una tavoletta con apposite scanalature. • In Occidente è stato importato verso il Mille ed è rimasto in uso fino al XVI sec, benché già nel 1215, in una gara di calcolo voluta dall'imperatore Federico II di Svevia, si era appurato che il calcolo coi numeri indo-arabi era più veloce di quello coll'abaco. • Lo "zero" non ebbe mai una rappresentazione grafica o simbolica. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 6 Macchina per addizioni (Pascal 1642) • La prima macchina per addizioni, lontano precursore del computer digitale, fu inventata nel 1642 dal filosofo e scienziato francese Blaise Pascal. • Era costituita da una serie di ruote a dieci denti, ciascuno associato a una cifra compresa tra 0 e 9. Le ruote erano collegate in modo che i numeri potessero essere sommati facendo avanzare le ruote del giusto numero di denti. • Intorno al 1670, il filosofo e matematico tedesco Gottfried Wilhelm Leibniz perfezionò la macchina di Pascal, realizzandone una capace di eseguire anche le moltiplicazioni. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 7 Telaio automatico di Jacquard • Anche l'inventore francese Joseph-Marie Jacquard contribuì inconsapevolmente alla nascita dell'elaboratore: progettando un telaio automatico usò sottili tavolette di legno perforate per controllare la tessitura di motivi complicati. • Negli anni Ottanta dell'Ottocento, l'ingegnere statunitense Herman Hollerith sviluppò l'idea di elaborare dati usando schede perforate simili alle tavolette di Jacquard. Con un sistema che faceva passare schede perforate sopra opportuni contatti elettrici, egli riuscì a compilare elaborazioni statistiche per il censimento degli Stati Uniti del 1890. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 8 La scheda perforata Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 9 Macchina analitica • • • Sempre nel XIX secolo, il matematico e inventore britannico Charles Babbage progettò una serie di macchine, tra cui la macchina delle differenze e la macchina analitica, capaci di trattare problemi matematici complessi secondo un principio di funzionamento assai vicino a quello dei moderni computer digitali. Molti considerano Babbage e la sua collega, la matematica Augusta Ada Byron (1815-1852), gli inventori del moderno computer digitale. La macchina analitica possedeva infatti molte delle prestazioni di un moderno calcolatore: aveva – – – – • un “flusso di dati” in ingresso costituito da una pila di schede perforate, un "magazzino" (store) per conservare i dati, una "fabbrica" (mill) per svolgere le operazioni aritmetiche, e una stampante che produceva una registrazione permanente. La tecnologia del tempo non fu in grado, tuttavia, di tradurre i progetti di Babbage in dispositivi d'uso pratico. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 10 La macchina di Babbage Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 11 L’età “elettrica” • Il 1800 vide l’avvento del motore elettrico (Michael Faraday) e con esso videro la luce una moltitudine di machine con funzionamento motorizzato per le addizioni. • Nel 1889, Herman Hollerith sviluppò la “scheda perforata” come supporto di memorizzazione per i dati (prendendo a prestito l’idea di Jacquard). • 1943 - COLOSSUS • Nel 1946, presso l’University of Pennsylvania, fu costruito il primo computer elettronico programmabile (generalpurpose) moderno chiamato ENIAC (Electronics Numerical Integrator and Calculator). • Nel 1950 vennero realizzati UNIVAC I e II Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 12 Colossus (1943) • Durante la seconda guerra mondiale, una squadra di scienziati e matematici che operava a Bletchley Park, a nord di Londra, creò una macchina chiamata Colossus, contenente 1,500 tubi a vuoto, considerata il primo computer digitale interamente elettronico. • Nel mese di dicembre del 1943 Colossus era operativo; esso fu usato dal gruppo guidato dal matematico britannico Alan Turing per interpretare i messaggi radio cifrati dei tedeschi. • Indipendentemente da Colossus, un prototipo di macchina elettronica era stato realizzato negli Stati Uniti fin dal 1939, da John Atanasoff e Clifford Berry presso l'Iowa State College. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 13 ENIAC (1945) • Le successive ricerche portarono nel 1945 allo sviluppo del computer ENIAC (Electronic Numerical Integrator and Computer). Esso conteneva 18,000 tubi a vuoto e vantava una velocità operativa di molte centinaia di moltiplicazioni al minuto, ma il suo programma era cablato negli stessi circuiti del processore, il che imponeva che la programmazione venisse effettuata mediante aggiustamenti manuali della circuiteria. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 14 ENIAC (cont.) • Grande trionfo della tecnologia basata su tubi a vuoto • ENIAC poteva sommare 5000 numeri in 1 secondo • poteva calcolare la traiettoria di un proiettile d’artiglieria in 30 secondi, mentre un esperto umano con una calcolatrice meccanica l’avrebbe fatto in circa 40 ore. • La macchina era molto grande – – – – 17,468 tubi a vuoto 30 tonns 16,200 cubic feet consumava 180 kW Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 15 EDSAC (1949) E’ il primo computer con programma immagazzinato Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 16 1a generazione Limiti delle macchine di 1a generazione • Dal punto di vista dell'hardware, – scarsa capacità di memorizzazione – bassa velocità erano un forte limite alla complessità dei problemi risolvibili • Dal punto di vista software, – mancanza di linguaggi di "alto livello” (codice binario), quindi • assenza di variabili • assenza del concetto di "ciclo” – assenza di qualsiasi tipo di supporto alla programmazione ed alla strutturazione dei programmi (sistemi operativi, librerie,..) Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 17 2a generazione (1947) Macchine di 2a generazione • Dal punto di vista dell'hardware, – Avvento del transistor, nel 1947-48. – Le memorie a linee di ritardo vengono sostituite con anelli di ferrite. • Dal punto di vista software, – introduzione di variabili e cicli – primi linguaggi (COBOL, FORTRAN, ALGOL) – primi supporti alla programmazione (librerie, compilatori, monitors) Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 subroutines, 18 Il transistor (1947) • L'uso dei transistor al silicio nei computer, negli ultimi anni Cinquanta, segnò l'avvento di elementi logici più piccoli, veloci e versatili di quelli realizzabili con i tubi a vuoto. I transistor, più durevoli e meno costosi in termini di potenza, permisero la messa a punto di elaboratori più evoluti, compatti, veloci ed economici: i "computer di seconda generazione". • I laboratori Bell sviluppano il transistor (transfer resistor); John Bardeen, Walter Brattain e William Shockley, che l'hanno inventato, otterranno nel 1956 il Nobel per la fisica. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 19 Anelli di ferrite Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 20 3a generazione (1965 ) Nasce con la realizzazione dei circuiti integrati, nel 1965 (le memorie vengono realizzate con tecnologia a semiconduttore) • Dal punto di vista architetturale, – introduzione del concetto di parallelismo (aumenta la velocità di esecuzione delle istruzioni). – Introduzione della microprogrammazione per semplificare il progetto dell'Unità di controllo. • Dal punto di vista software – Introduzione dei primi Sistemi Operativi (singolo utente e multi-utenti) Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 21 Il circuito integrato • L’invenzione del transistor ha aperto l’età dell’elettronica moderna impiegando gli “elettroni” nei “solidi” e lasciando definitivamente alle spalle la tecnologia dei “tubi a vuoto”. • Nel 1958 Jack St. Clair Kilby (NOBEL per la Fisica 2000) ideò un processo di integrazione del transistor con resistori e capacitori su un singolo chip di Silicio. • Nasce coì il circuito integrato monolitico (IC) • Tutta l’elettronica e la microelettronica moderne è basata su questa realizzazione che, quindi, è alla base anche della rivoluzione informatica e delle telecomunicazioni. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 22 4a generazione (VLSI) Realizzazione della VLSI (Very Large Scale Integration) Primi microprocessori Vantaggi dal punto di vista architetturale: – – – – potenziamento del parallelismo, aumento delle funzionalità di elaborazione e controllo, aumento della capacità di memorizzazione. vengono realizzati elaboratori paralleli o supercomputers, • Dal punto di vista software, – vengono introdotti linguaggi orientati al parallelismo ed al problem-solving. – vengono introdotte interfacce amichevoli per facilitare l'uso del computer da parte di non esperti di informatica. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 23 L’età del “microprocessore” • Il primo microprocessore del mondo, l’Intel 4004 (1971) Name 8080 8088 80286 80386 80486 Pentium Pentium II Pentium III Date 1974 1979 1982 1985 1989 1993 1997 1999 Clock Transistors Microns speed Data width 6000 6 2 MHz 8 29000 3 5 MHz 16 bits, 8 bit bus 134000 1,5 6 MHz 16 bits 275000 1,5 16 MHz 32 bits 1200000 1 25 MHz 32 bits 3100000 0,8 60 MHz 32 bits, 64 bit bus 7500000 0,35 233 MHz 32 bits, 64 bit bus 9500000 0,25 450 MHz 32 bits, 64 bit bus Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 MIPS 0.64 MIPS 0.33 MIPS 1 MIPS 5 MIPS 20 MIPS 100 MIPS 400 MIPS 1000 24 5a generazione • Le macchine di 5a generazione cercano di superare i limiti la macchina di Von Neumann, e si propongono di affrontare problemi tipici dell'intelligenza umana, come la comprensione di immagini e del linguaggio naturale. • In generale, le architetture della 5a generazione puntano sulla molteplicità e versatilità delle comunicazioni fra elementi di elaborazione. Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 25 Legge di Moore Transistors Per Die 108 16M M e m o ry M ic ro pr o c e s s o r 107 4M 1M 256K 106 64K 105 103 Intel386™Processor 80286 Processor 4K 16K 104 1K Pentium™ Intel486™Processor 8086 8080 4004 102 101 1 1970 1975 1980 1985 1990 1995 2000 Moore’s Law: No. Tx per chip increases 4X every 3 years CAGR = 60% Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 26 Crescita delle performances 1200 DEC Alpha 21264/600 1100 1000 900 Performance 800 700 600 500 DEC Alpha 5/500 400 300 DEC Alpha 5/300 200 100 SUN-4/ MIPS 260 M/120 0 1987 Figure 1.20 from P&H 1988 IBM MIPS M2000 RS6000 1989 1990 DEC Alpha 4/266 IBM POWER 100 DEC AXP/500 HP 9000/750 1991 1992 Year 1993 1994 1995 1996 1997 Workstation Performance Improving 54% per year That’s almost 1% per week! Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 27 Prezzo/Performance dei sistemi 1977 1998 IBM System 360/50 0.15 MIPS 64 KB $1M DEC VAX11/780 1 MIPS 1 MB $200K Dell Dimension XPS-300 725 MIPS 64 MB $2412 (1/4/98) $6.6M per MIPS $200K per MIPS $3.33 per MIPS 1965 Photographs from Virtual Computing History Group Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 28 Nota importante • Le trasparenze, frutto di un’attiva collaborazione con i prof. F.Cevenini e G.Spadaccini dell’Università di Napoli, non sono da intendersi assolutamente come un libro di testo. • Per quanti sforzi si siano compiuti al fine di rendere il filo logico quanto più trasparente ed omogeneo, esse sono e restano un complemento indispensabile solo durante le lezioni frontali. • Libri di testo – D. Bovet "Introduzione all'Architettura dei calcolatori" Zanichelli (1996) – V. Hamacher, Z. Vranesic e S. Zaky "Introduzione dell'architettura dei calcolatori” McGraw Hill (1997) Dott. Pierluigi Paolucci - Fondamenti d'informatica - 2000/2001 29