Evoluzione degli Elaboratori Generazione 0 (1600-1945)

Evoluzione degli Elaboratori
Generazione 0 (1600-1945)
Pascal (1623-1662)
! addizioni e sottrazioni
Leibniz (1646-1716)
! anche moltiplicazioni e divisioni
Charles Babbage (1792-1871)
! A) Macchina Differenziale
! Algoritmo fisso (differenze finite)
! Output su piastra di rame
! B) Macchina Analitica
! Prima macchina programmabile
! Primo programmatore: Ada Lovelace (figlia di Lord Byron)
! Memoria: 1000 x 50 cifre decimali
! Mulino (CPU)
! I/O su schede perforate
! Limite: tecnologia meccanica
N.B. Quasi tutta l’evoluzione ha avuto luogo negli ultimi 50 anni
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
9
Generazione 0 (continua)
10
I Generazione (1945-1955)
(Macchine elettromeccaniche)
(Tecnologia a tubi termoionici)
COLOSSUS (~1940 GB)
! Gruppo di Alan Turing
! Decifrazione del codice Enigma
! Progetto mantenuto segreto
!
Konrad Zuse (~1930 Germania)
! Macchina a relè
! Distrutte nella guerra
John Atanasoff (~1940 USA)
! Aritmetica binaria
! Memoria a condensatori
ENIAC (~1946 USA)
! J. Mauchley, J. Eckert
! 18.000 valvole
! 30 tonnellate di peso
! 140kw assorbimento
! Programmabile tramite 6000 interruttori e pannelli cablati
! 20 registri da 10 cifre
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
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
EDVAC (~1950 USA)
! Successore dell’ENIAC
! Mai giunto a termine
11
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
12
Il Boom del Mercato
La Macchina di Von Neumann
Finora gli elaboratori sono limitati all’ambito scientifico, a
quello militare e istituzionale (censimento)
Diventa ormai chiara l’occasione di mercato
Nel 1950 Mauchley e Eckert escono dal progetto EDVAC e
fondano la UNIVAC, la prima grossa società del settore
IAS (~ 1950, Princeton USA)
! Programma memorizzato
! Aritmetica binaria
! Memoria: 4096 x 40 bit
! Formato istruzioni a 20 bit:
Fine dell’era romantica: da Lady Ada Lovelace, figlia
di Byron e prima programmatrice, a Bill Gates...
OPCODE
8
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
13
14
(Tecnologia a transistor)
Inizialmente il mercato è dominato dalla UNIVAC
L’IBM entra nel mercato nel 1953, e assume una posizione
dominante che manterrà fino agli anni ‘80:
! IBM 701 (1953):
TXO e TX2 macchine sperimentali costruite al MIT
Uno dei progettisti del TX2 fonda una propria società la
Digital Equipment Corporation (DEC)
La DEC produce il PDP-1 (1951):
! Memoria: 4k parole di 18 bit
! Tempo di ciclo di 4µsec
! Prestazioni simili all’IBM 7090
! Prezzo meno di un decimo
! Schermo grafico 512 × 512 pixel
! Comincia la produzione di massa
Memoria: 2k word di 36 bit
! 2 istruzioni per word
!
IBM 704 (1956):
Memoria: 4k word di 36 bit
! Istruzioni a 36 bit
! Floating-point hardware
!
!
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
II Generazione (1955-1965)
Sistemi Commerciali
!
INDIRIZZO
12
IBM 709 (1958)
(primi videogiochi)
Praticamente un 704 potenziato
! Ultima macchine IBM a valvole
!
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
15
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
16
Sistemi Commerciali
Il Minicomputer
Mainframe : grossi calcolatori per applicazioni scientifiche,
militari e PA
IBM 7090
! Versione transistorizzata del 709
! Memoria 32k word a 36 bit
! Tempo di ciclo 2 µsec
! Domina il mercato fino agli anni ‘70
! Pochi esemplari, costano milioni di dollari
!
DEC PDP-8 (1965)
Piccoli sistemi: per medie aziende o di appoggio ai mainframe
!
Successore diretto del PDP-1
!
Interconnessione a bus, molto flessibile
!
Architettura incentrata sull’I/O
!
Possibilità di connettere qualsiasi periferica
!
Prodotto in oltre 50.000 esemplari
IBM 1401
! Stessa capacità di I/O del 7090
! Memoria 4k word 8bit (1byte)
! Orientata a caratteri
! Istruzioni per la manipolazione di stringhe
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
17
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Supercomputer
18
III Generazione (1965-1980)
(Tecnologia LSI e VLSI)
!
!
!
!
!
!
!
Macchine molto potenti dedicate al number crunching
10 volte più veloci del 7090
Architettura molto sofisticata
Parallelismo all’interno della CPU
Nicchia di mercato molto specifica (resta vero anche
oggi)
CDC 6600 (1964)
Progettista del CDC 6600 è Seymour Cray, poi fondatore
della CRAY
Evoluzione dell’architettura HW
!
!
!
Evoluzione dei Sistemi Operativi
!
!
!
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Microprogrammazione
Unità veloci floating-point
Processori ausiliari dedicati alla gestione dell’I/O
19
Virtualizzazione delle risorse
Multiprogrammazione: esecuzione concorrente di più
programmi
Memoria Virtuale: rimuove le limitazioni dovute alle
dimensioni della memoria fisica
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
20
Serie IBM System/360
Serie DEC PDP-11 e UNIX
Evoluzione diretta del PDP-8
! Parole di memoria e istruzioni a 16 bit
! Architettura a bus (Unibus)
! Grande flessibilità nella gestione e nell’interfacciamento di
periferiche e strumentazione al bus
! Domina il mercato fino alla fine degli anni ’70
! Prodotto in milioni di esemplari
! Diffusissimo nelle università
! Supporta il sistema operativo UNIX, indipendente dalla
piattaforma
! Influenzerà un’intera generazione di progettisti e di utenti
!
!
!
!
!
!
!
!
L’IBM introduce una famiglia di elaboratori (passo decisivo)
Serie IBM System/360
Macchine con lo stesso linguaggio
Range di prestazioni (e prezzo) 1-20
Completa compatibilità
Portabilità totale delle applicazioni
Sistema Operativo comune OS/360
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
21
22
La legge di Moore (1965)
IV Generazione: il PC
Diretto discendente del minicomputer:
! Architettura a bus
! Parole e istruzioni a 16 bit
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
Dai grandi Centri di Elaborazione a un contesto di
Informatica Distribuita
L’espansione del PC è trainata da tre fattori:
! Aumento della capacità della CPU
! Discesa dei costi della memoria
! Discesa dei costi dei dischi
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Il numero di transistor su di un 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
23
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
24
Legge di Moore per le CPU
Legge di Nathan
Il software è un gas: riempie sempre completamente
qualsiasi contenitore in cui lo si metta
Al calare dei costi e all’aumentare della memoria
disponibile, le dimensioni del software sono sempre
cresciute in proporzione
Il Circolo Virtuoso
! Spinta tecnologica (Moore law)
! Costi più bassi e prodotti migliori
! Nuove applicazioni e mercati
! Nuove compagnie e maggiore competizione
! Spinta tecnologica …...
Più transistor in una CPU significano:
! Eseguire direttamente istruzioni più complesse
! Maggiore memoria sul chip (cache)
! Maggiore parallelismo interno
N.B. Altro fattore tecnologico decisivo è la frequenza
di funzionamento
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
25
Tipologie di Computer
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
26
Tipologie di computer (2)
Personal Computer
! Sappiamo chi è
Server
! Su rete locale o Web server
! Memorie fino a qualche Gbyte
! Molti Gbyte di disco
! Gestione di rete efficiente
COW (Cluster of workstations)
! Sistema multiprocessore ad accoppiamento lasco
! Hardware di tipo standard: costi contenuti
! Strutture di connessione veloci
! Elevata capacità di elaborazione complessiva
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
27
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
28
La famiglia Intel
Tipologie di Computer (3)
Mainframe
! Diretti discendenti della serie 360
! Gestione efficiente dell’I/O
! Periferie a dischi di molti Tbyte
! Centinaia di terminali connessi
! Costi di parecchi miliardi
Perché sopravvivono?
! Gestiscono applicazioni legacy
! Costi di migrazione delle applicazioni molto superiori a
quelli dell’HW
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
29
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Pentium III
!
!
!
!
!
!
!
!
Pentium IV
Disponibilità: febbraio 1999
450Mhz – 1Ghz di frequenza di clock
Pipeline a 10 stadi
Circa 9 milioni di transistor in un chip
4 GB di memoria indirizzabile
Nuove istruzioni SIMD (SSME2) per applicazioni
multimediali (estensione del set MMX)
Potenziamento delle memorie cache
Introduzione di un numero di serie al processore
(abilitazione via software)
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
30
!
!
!
!
!
!
!
!
31
Disponibilità: dicembre 2000
1.3–2 Ghz di frequenza di clock
Pipeline a 20 stadi
Circa 30 milioni di transistor in un chip
Bus di sistema a 400 Mhz
144 nuove istruzione SIMD per applicazioni multimediali
Tecnologia di integrazione a 0.18-micron
Potenziamento delle memorie cache
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
32
La Famiglia SPARC
Java e Java Virtual Machine
Java: linguaggio di programmazione orientato agli oggetti
introdotto da Sun:
! In alternativa al C++
! Risolve i problemi di sicurezza
! Gestione della multimedialità
Scalable Processor ARChitecture
Proposta da Sun Microsystems nel ’87
Dedicata a workstation Unix
Non prodotta direttamente da Sun
Caratteristiche principali
! Insieme ridotto di istruzioni (55)
! Esecuzione non interpretata
! Architettura a 32 bit
! Unità FP addizionale (14 istr.)
UltraSPARC I (1995)
! Registri e indirizzi a 64 bit
! VIS (Visual Instruction Set)
! Dedicata a sistemi high-end : dozzine di CPU, memorie di Tbyte
Ultra SPARC II e III
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
33
Portabilità delle applicazioni Java
Codice JVM
Obiettivo:
! distribuire, eventualmente su rete, software indipendente
dalla piatta-forma
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
34
Portabilità ed efficienza
Vantaggi di Java:
! Indipendenza dalla piattaforma
! Totale portabilità delle applicazioni
Codice JAVA
JAVA
Compiler
JVM (Java Virtual Machine):
! Macchina virtuale che esegue un codice speciale (Java
byte code)
! Il codice JVM può essere eseguito da interpreti software
su diverse piattaforme
Codice piattaforma HW
JAVA
Machine
(HW)
Interprete
JVM
(SW)
Compilatore
Just In Time
(SW)
Tipico contesto applicativo: il Web
! Applets: piccoli programmi inseriti nelle pagine HTML
! I browser hanno al loro interno interpreti JVM
! Semplice sviluppo di applicazioni client-server su Internet
RETE
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
Svantaggi di Java:
! Inefficienza degli interpreti
! Potenziale inefficienza del codice
35
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
36
Java: Soluzioni HW e SW
Soluzione SW (parziale):
! Compilatori JIT (Just In Time)
! Compilazione al volo subito prima dell’esecuzione
! Ritardo di compilazione
Soluzione HW:
! Java Machine: implementazione HW della Java Virtual
Machine
! PicoJava I e II:
! Architettura definita da Sun
! Diverse implementazioni disponibili
Riccardo Torlone - Corso di Calcolatori Elettronici (a.a. 2001/2002)
37