Sistema di Elaborazione Dati
RAM
CPU
INTERNET
Il Modello di Von Neumann
Memoria Memoria centrale centrale (Ram)(Ram)
C.P.U. C.P.U. (Processore)(Processore)
Unità di elaborazione
Unità di Unità di outputoutput
Unità di Unità di inputinput
Memorie di Memorie di massamassa
Hardware•Definizione:
l’insieme dei dispositivi (elettronici, elettrici meccanici, ecc.) che costituiscono fisicamente il sistema di elaborazione.
SoftwareDefinizione:Definizione:
l’insieme dei programmi e dei dati che l’insieme dei programmi e dei dati che permettono lo svolgimento delle funzioni di permettono lo svolgimento delle funzioni di elaborazioneelaborazione
Il transistore
• È l’elemento base degli attuali elaboratori elettronici digitali:– piccole dimensioni ( m )– basso consumo di energia ( W )– alta velocità di funzionamento (milioni di
operazioni al secondo)
Circuiti integrati (Chip)Chip:circuito integrato, microcircuito, componente elettronico contenenteal suo interno moltissimi transistor
Il chip sta al calcolatore come il mattone sta alla casa
Calcolatore
Le generazioni informatiche
• 1942-’57, 1a gen. = valvole
• 1958-’63, 2a gen. = transistori
• 1964-’80, 3a gen. = circuiti integrati
•1980-oggi, 4a gen. = circuiti VLSI
• (futuro) 5a gen. = ?
ENIAC (1943): Electronic Numerical Integrator And
Calculator• Primo eleboratore general-purpose• 18000 Valvole, 1500 relay• Uso per calcoli balistici•Lunghezza 25m, altezza 3m, superficie 180m2, peso 30ton, potenza assorbita 140KW• Programmazione con interruttori manuali• Aritmetica decimale, 5000 operazioni/sec
Microprocessori INTEL 80x86
8088/8086MIPS: 0.33 (5 MHz)Transistors: 29.000
80286MIPS: 3 (12 MHz)
Transistors: 134.000
80386MIPS: 11 (33 MHz)
Transistors: 275.000
80486MIPS: 41 (50 MHz)
Transistors: 1.200.000
PentiumMIPS: 100+ (66 MHz)
Transistors: 3.000.000+
1979
1982
1985
1989
1993
Pentium 32 bit - (166 MHz)
Transistors: 3.000.000+
19931993
Pentium II64 bit - 450 MHz
Transistors: 7.000.000+
19981998
Pentium PRO64 bit - 200 MHz
Transistors: 7.000.000+
19951995
Microprocessori INTEL 80x86
Pentium III64 bit – 1.13 GHz
Transistors: 9.000.000+
19991999
Processore
Processore AMD Athlon
Processore Intel 80286
Il Il processoreprocessore o CPU è uno dei componenti principali del o CPU è uno dei componenti principali del
computer. Esso consente l’esecuzione di numerose computer. Esso consente l’esecuzione di numerose
istruzioni come: istruzioni come:
operazioni di elaborazione dei dati o comandi per operazioni di elaborazione dei dati o comandi per
controllare tutti gli altri elementi del sistema.controllare tutti gli altri elementi del sistema.
Processore• Dalla frequenza di lavoro del processore, espressa in MHZ cioè in
milioni di cicli di istruzioni a secondo, dipende la velocità di calcolo
dell’intero sistema.
• Le operazioni che il processore è in grado di eseguire sono
elementari (somma, lettura di un dato, etc.), ma vengono svolte ad
una velocità notevole, consentendo di fornire funzionalità complesse
come somma di un numero elevato di operazioni semplici.
8086 - 8088 (4.77 - 12 MHz) -19798086 - 8088 (4.77 - 12 MHz) -1979
80286 (8 - 20 MHz) - 198380286 (8 - 20 MHz) - 1983
80386 (16 - 40 MHz) - 198780386 (16 - 40 MHz) - 1987
80486 (25 - 133 MHz) - 199180486 (25 - 133 MHz) - 1991
Pentium (75 - 200 MHz) - 1994Pentium (75 - 200 MHz) - 1994
Pentium II (180 - ? MHz) - 1997 Pentium II (180 - ? MHz) - 1997
Pentium III (400 - 1200 MHz) - 1999Pentium III (400 - 1200 MHz) - 1999
Pentium 4 (1.2 – 2.4 GHz) - 2001Pentium 4 (1.2 – 2.4 GHz) - 2001
Il clock– T = periodo di clock– f = frequenza di clock ( unità di misura Hertz )
t
T• Ogni elaboratore contiene un elemento di temporizzazione
(detto clock ) che genera un riferimento temporale comune per tutti gli elementi costituenti il sistema di elaborazione.
Memoria• Il modulo della memoria è fondamentale perché consente di memorizzare i
programmi da eseguire, i dati da elaborare, i risultati intermedi e finali forniti dal
computer.
• La memoria si divide in memoria interna, quella posta fisicamente sulla scheda
elettronica che ospita anche il processore, e quella esterna che si trova su dispositivi
posti fuori della scheda e ad essa collegati.• Memoria interna o principale
– ROM (read only memory)– RAM (random access memory)– Cache
• Memoria esterna, di massa o secondaria– Floppy disk – Hard Disk – Nastro magnetico – CD/DVD ROM
Memoria Interna
• ROM (Read Only Memory)
– Memoria non cancellabile che contiene le informazioni necessarie
per inizializzare l’elaboratore (64 kB - 512 kB)
• RAM (Random Access Memory)
– Memoria cancellabile e riscrivibile che contiene il/i programma/i
attualmente in esecuzione (128 MB - 1 GB)
• CACHE
Memoria di transito fra componenti diversi (fra CPU e RAM, tra RAM
e memoria esterna)
Memoria interna
• Banchi di memoria DRAM su supporti SIMM
Memoria Esterna o Memoria di massaMemoria Esterna o Memoria di massa
Periferiche di ingresso
• Le periferiche d’ingresso sono quei dispositivi che
consentono all’elaboratore di acquisire informazioni dal
mondo esterno ed in particolare dall’utente che
interagisce con la macchina.
Periferiche di uscitaPeriferiche di uscita
Le periferiche d’uscita sono tutti quei dispositivi che Le periferiche d’uscita sono tutti quei dispositivi che
consentono di ottenere i risultati delle elaborazioni effettuate dal consentono di ottenere i risultati delle elaborazioni effettuate dal
calcolatore. calcolatore.
Periferiche di ingresso
• Tastiera (inserimento alfanumerico)
• Mouse (inserimento posizioni)
• Tavoletta grafica (inserimento posizioni)
• Scanner (inserimento immagini)
• Modem (ricezione dati)
Periferiche di uscita• Monitor (visualizzazione)
• Stampanti (trasferimento su carta)
• Plotter (disegni e grafici)
• Modem (trasmissione dati)
• Macchine a controllo numerico
Periferiche di uscita - Monitor
• I parametri fondamentali di un monitor sono la sua dimensione (da
12 a 21 pollici), la sua risoluzione intesa come punti distinti che
possono essere attivati sulla superficie (da 200x320 a 1280x1024) e
la sua “precisione” misurata con un indice che varia da 0.25
(migliore) a 0.38 (peggiore).
• Esistono anche particolari monitor detti “touch screen” che
consentono, tramite il tocco di aree particolari della loro superficie,
di acquisire informazioni (periferica di input).
Periferiche di uscita - Stampanti
• Stampanti (trasferimento su carta)
Consentono di trasferire su carta i risultati delle elaborazione per poi
poterli utilizzare come strumenti di verifica o di memorizzazione.
• Ad impatto ( metodo di stampa vecchio ma economico).
• A getto d’inchiostro: La definizione è migliore delle stampanti ad
impatto ed anche il rumore è ridotto a quello causato dal movimento
della carta.
• Laser: La qualità di stampa è ottima, ma il costo del dispositivo e della
sua manutenzione è elevato.
• Plotter (disegni e grafici) A questo dispositivo trasferisce su carta
immagini e grafici di dimensioni elevate, normalmente per disegno
tecnico o meccanico.
Periferiche di uscita
• Macchine a controllo numerico
Un elaboratore può avere come periferica d’uscita a diretto contatto
anche una macchina operatrice a controllo numerico; in tale caso i
“dati” in uscita dal computer sono i manufatti realizzati dalla
macchina stessa.
Generazioni di calcolatori elettronici
La prima generazione è basata sulla tecnologia dei tubi a vuoto (valvole).
Nel 1951 si costruisce l'Univac1, dotato di memoria a mercurio e nastri magnetici che consentivano di elaborare 30.000 informazioni al minuto.
La seconda generazione, comparsa nel 1959, è basata sui transistor che
sostituiscono le ingombranti e dispendiose valvole.
Le memorie di questi calcolatori sono costituite da nuclei di ferrite, le cui
dimensioni si riducono fino al diametro di pochi decimillimetri. La velocità
di calcolo raggiunge le 210.000 addizioni al secondo.
La terza generazione è costituita da circuiti integrati (chip) che sostituiscono il transistor, ed appare a partire dal 1964. Le memorie a nuclei sono affiancate da quelle a bolle magnetiche (minore ingombro, maggiore velocità e sicurezza di funzionamento.
La quarta generazione di calcolatori è nata con la realizzazione del microprocessore, cioè dell'Unità Centrale (CPU) ottenuta su un unico circuito integrato. È iniziata nel 1971 con l'invenzione del microprocessore a 4 bit (4004) ad opera di Enrico Faggin della Intel e prosegue tuttora.
Le diverse tipologie di computer apparse dal 1971 ad oggi sono il risultato di un'evoluzione nelle tecniche di realizzazione dei circuiti integrati e di aumento della densità circuitale, il cui massimo valore si indica con il termine di livello di integrazione.
Nell'evoluzione dei livelli di integrazione si è passati dalla SSI (Small Scale Integration) alla MSI (Medium Scale Integration), LSI (Large Scale Integration) ed infine alla VLSI (Very Large Scale Integration).
La tecnologia VLSI ha consentito di realizzare microprocessori a basso costo e memorie di grande capacità su un unico chip.
La quinta generazione di computer si basa su architetture parallele (es. dual core) e
sulla costruzione di cluster di computer.
Fin dall'antichità gli uomini hanno sempre cercato di rendere meno laboriosi i calcoli.
Il desiderio di rendere più veloce e più possibile automatico il calcolo è
probabilmente antico come l'uomo. Anche se il calcolatore non si può considerare
semplicemente una macchina di calcolo, senz'altro è il prodotto più recente e più clamoroso delle ricerche nate da questo
desiderio.
Cenni Storici
Nell'VIII secolo a.C. fu inventato in Cina il primo pallottoliere.
Presso i Romani era diffuso l'abaco. Strumento di calcolo formato da un telaietto su cui scorrono alcune file di palline che denotano le unità, le decine, le centinaia, le migliaia.
Abaco
Per giungere a qualcosa di nuovo bisogna aspettare fino al 1600, quando il matematico scozzese John Napier inventa il regolo calcolatore.Strumento costituito da stecche di avorio su cui erano incise opportune serie di numeri. Facendo scorrere le stecche una sull'altra era possibile eseguire moltiplicazioni e divisioni.
Regolo calcolatore
La prima vera calcolatrice (che prese il nome di "pascalina") fu inventata da Blaise Pascal nel 1642. La pascalina, poteva eseguire solamente l'addizione e la sottrazione.
La pascalina
Guglielmo Leibniz (nel 1971) ideò una macchina che eseguiva anche la moltiplicazione e la divisione.
La macchina di Leibniz
Le prime macchine calcolatrici prodotte in serie comparvero agli inizi del 1800 dopo la rivoluzione industriale.
Ma è solo nel 1801 che si assistette ad una svolta decisiva, grazie al francese Joseph Jacquard che realizzò un telaio da tessitura controllato da schede perforate, sulle quali era memorizzato il programma di funzionamento della macchina stessa.
Il telaio Jacquard
Sfruttando questa idea, l'inglese Charles Babbage ideò una macchina analitica (macchina di Babbage) che si può considerare il primo esempio di calcolatore. Esso adottava schede perforate per introdurre dati ed istruzioni ed era fornito di una memoria in grado di immagazzinare fino a 1000 cifre.
La macchina analitica di C. Babbage
Verso la fine del 1800, negli Stati Uniti si presentò un problema molto concreto e urgente: l'elaborazione dei dati del censimento americano del 1890.
Uno studioso di statistica, Herman Hollerith adattò la scheda perforata a questo scopo, registrando su ogni scheda i dati di un cittadino e realizzando una macchina in grado di contarli. La società fondata da questo brillante individuo si chiamò, e si chiama tuttora, IBM (International Business Machine).
Macchina di Hollerith
Il primo vero calcolatore elettro-meccanico fu il MARK 1, messo a punto nel 1944 da un gruppo di ricercatori dell'università americana di Harvard.
Con l'avvento delle valvole elettroniche si costruì l'ENIAC (Elettronic Numerical Integrator and Calculator) e nel 1951 si realizzò l'UNIVAC 1 (UNIVersal Automatic Computer).
L'UNIVAC fu il primo calcolatore elettronico in grado di conservare il programma all'interno della memoria (grazie ad un'importante innovazione dovuta al matematico John Von Neumann).
UNIVAC
Sistemi Operativi
Che cosa è un sistema operativo?
Un software che agisce da intermediario fra l’utente e la struttura fisica del calcolatore: gestisce gli elementi fisici di un calcolatore e fornisce all’utente un’interfaccia per poter utilizzare le risorse del sistema di calcolo in modo semplice, efficiente e sicuro
Scopi del sistema operativo:
Eseguire i programmi utenti e facilitare la soluzione dei problemi degli utenti.
Rende il sistema di calcolo un ambiente in cui si può lavorare in modo conveniente e corretto.
Utilizzo del calcolatore in maniera efficiente.
Quali sono le parti di un SO ?
Gestore delprocessore
Gestore dellamemoria
File systemGestore delleperiferiche
Interprete di comandi (shell)Applicazioni
Hw
Interfaccia grafica(desktop)
Il nucleo (Kernel) del SO• Le funzioni del SO che riguardano:
– la gestione dei processi, – la loro cooperazione (sincronizzazione e
comunicazione)– la gestione del processore sono dette Nucleo (Kernel) del SO.
Hardware e Firmware
Nucleo: System call Send, Receive, Scheduling
Processo utente
Processo sistema
Processo sistema
Processo utente
Schema del sistema MS-DOS
PROGRAMMI DI APPLICAZIONE
PROGRAMMI DI SISTEMA
DRIVER DISPOSITIVI MS-DOS
DRIVER DISPOSITIVI ROM BIOS
Non ha l’identificazione dell’utente con login e password;
Non ha protezione del file system (administrator, gruppi).
Non supporta meccanismi di protezione della memoria.
Non esiste la modalità supervisore distinta da quella utente.
Non è multiprogrammato: la shell lancia un programma e attende che sia completato.
i comandi utente di I/O agiscono direttamente sui dispositivi non passano attraverso il S.O.
Lo schema di Unix
Utenti
Programmi di utilità (Shell, compilatori, editors)
Libreria Standard (Open close, read, write, fork)
Libreria Standard (Open close, read, write, fork)
Unix kernel: Gestione Processi, Memoria, File System, I/O
Unix kernel: Gestione Processi, Memoria, File System, I/O
user mode
kernel mode
interfaccia utente
interfaccia delle librerie di sistema
interfaccia system call
Windows NT-2000 un modello ibrido
non è microkernel
Macchine virtuali
Client Server
Fine