IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore...

97
IDUL 2009 COMPUTER: HARDWARE E SOFTWARE

Transcript of IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore...

Page 1: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IDUL 2009

COMPUTER: HARDWARE E SOFTWARE

Page 2: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

H ard w are S oftw are

C om p u te r

Page 3: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Hardware

Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche

Page 4: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Software

Componente del calcolatore costituita dai: Programmi di base per la gestione del sistema

(sistema operativo) Programmi applicativi per l’uso del sistema

(possono usare i programmi di base)

Page 5: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

H ard w are S oftw are

C om p u te r

PRIMA PARTE: HARDWARE

Page 6: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

HARDWARE: IDEE CENTRALI

CICLO DI ESECUZIONE ISTRUZIONI MEMORIA PRINCIPALE E MEMORIA

SECONDARIA

Page 7: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

DI NUOVO LA MACCHINA DI TURING

Page 8: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Dalla macchina di Turing alla architettura di von Neumann

Un passo ulteriore, volendoci avvicinare al funzionamento di un vero computer, è costituito dalla

ARCHITETTURA DI VON NEUMANN

Page 9: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ARCHITETTURA DI VON NEUMANN

I/O MemoriaCPUPreleva istruzione

Esegue

Memorizza risultato

BUS

Page 10: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

UNITA’ CENTRALE E PERIFERICHE

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitorPeriferiche

Page 11: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria (DISCHI RIGIDI)

fare l’input/output dell’informazioneusando i dispositivi localidi input/outputCollegandosi in rete con altri computer

Page 12: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LA CPU IN DETTAGLIO

Page 13: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ARCHITETTURA DI VON NEUMANN: COMPONENTI DELLA CPU

La CPU non è un unico componente ma è costituita da componenti diversi che svolgono compiti diversi

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 14: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

UNITA’ DI CONTROLLO

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 15: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Unità di controllo

L’unità di controllo è la parte più importante del processore Esegue le istruzioni dei programmi Coordina le attività del processore Controlla il flusso delle istruzioni tra il processore

e la memoria

Page 16: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

COMPONENTI DELLA CPU: UNITA’ ARITMETICO-LOGICA

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 17: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Unità aritmetico logica

L’Unità aritmetico logica si occupa di eseguire le operazioni di tipo aritmetico/logico Somme, sottrazioni, …, confronti, …

Preleva gli operandi delle operazioni dai Registri Generali

Deposita il risultato delle operazioni nei Registri Generali

Insieme all’unità di controllo collabora al completamento di un ciclo della macchina

Page 18: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

COMPONENTI DELLA CPU: REGISTRI

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 19: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ARCHITETTURA DI VON NEUMANN: I BUS

Page 20: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ARCHITETTURA DI VON NEUMANN: CLOCK

Abbiamo visto che il processore svolga la sua attività in modo ciclico Ad ogni ciclo corrisponde l’esecuzione di un’operazione

elementare (un’istruzione macchina) Il clock fornisce una cadenza temporale per

l’esecuzione delle operazioni elementari

La frequenza del clock indica il numero di operazioni elementari che vengono eseguite nell’unità di tempo

Page 21: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Evoluzione dei processori

Un grafico dell’evoluzione dei processori INTELhttp://www.techs-on-call.biz/downloads/CPU_history.pdf

Page 22: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

CODICE PER I PROGRAMMI: Istruzioni macchina

I programmi: sequenze di istruzioni elementari (somma due numeri, confronta due numeri, leggi/scrivi dalla memoria, ecc.)

Per ogni tipo di processore è definito un insieme di istruzioni, chiamate istruzioni macchina Ognuna delle quali corrisponde ad un’operazione elementare Le operazione più complesse possono essere realizzate

mediante sequenze di operazioni elementari

Page 23: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Istruzioni macchina

Le istruzioni possono avere formati diversi - per esempio:

Codice istruzione Argomento 1Argomento 2

Codice istruzione Argomento 1

cosa fare (“operando”) su cosa operareoppure

Page 24: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Istruzioni macchina

Per esempio: ADD R1 R2

Operazione aritmetica di somma: prevede la somma del contenuto dei registri R1 e R2 e il caricamento del risultato nel registro R1

LOAD 3568 R2 Operazione di lettura dalla memoria: richiede la lettura del

valore contenuto nella cella con indirizzo 3568 e il suo caricamento nel registro R2

Page 25: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Istruzioni macchina

Per esempio:

01000110 1111000 01010111 00001111

11110101 01110110 11001001

cosa fare (espresso in binario) su cosa operare

Page 26: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Linguaggio macchina

Il linguaggio in cui si scrivono queste istruzioni prende il nome di linguaggio macchina Una sequenza di tali istruzioni prende il nome di

programma in linguaggio macchina Il ruolo del processore:

Eseguire programmi in linguaggio macchina N.B. Nessun uomo è in grado di scrivere

programmi estesi in linguaggio macchina! (esistono invece linguaggi “ad alto livello”)

Page 27: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Compatibilità

Compatibilità all’indietro Un processore è in grado di eseguire codice creato

per un processore precedente della stessa famiglia. Un programma comprende dati creati da una sua

versione precedente

Compatibilità in avanti Un processore/programma accetta dati creati per una

sua versione futura (eventualmente interpretandoli in modo parziale)

Ottenibile tramite l’adozione di standard

Page 28: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 29: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 30: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Componenti principali di un computer

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitor

Periferichedel calcolatore

Page 31: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ORGANIZZAZIONE DELLA MEMORIA

Unità centraleProcessore

Memoria principale

012345

N

Sequenza di celle

– Ad ogni cella è associato un indirizzo (un numero progressivo a partire da 0)

Insieme al processoreforma l’Unità Centraledi un elaboratore

Conserva i programmi e i dati usati dal processore

Page 32: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Memoria principale (RAM)

Alcune proprietà della memoria principale Veloce: per leggere/scrivere una cella ci vuole un

tempo di accesso dell’ordine di poche decine di nanosecondi (millesimi di milionesimi di secondo = 10-9 sec.)

Volatile: è fatta di componenti elettronici, togliendo l’alimentazione si perde tutto

(Relativamente) costosa

Page 33: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Memoria principale (RAM)

Tutte le celle hanno la stessa dimensione: 8, 16, 32, o 64 bit

Le operazioni che si eseguono sulla memoria sono operazioni di lettura e scrittura

Una cella può contenere un dato o un’istruzione

012345

N

34513.200.9853.890

ADD R1 R2LOAD 56 R1LOAD 3568 R1

Indirizzi Contenuto

Page 34: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LA MEMORIA SECONDARIA

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitor

Periferichedel calcolatore

Page 35: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 36: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Memoria secondaria

La memoria principale non basta (è volatile, costosa) In grado di memorizzare i programmi e i dati in modo

permanente È meno costosa che la memoria principale: le dimensioni

della memoria secondaria sono di solito molto maggiori di quelle della memoria principale

I supporti di memoria secondaria sono più lenti rispetto alla memoria principale (presenza di dispositivi meccanici)

Page 37: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LA DIVISIONE DEI RUOLI TRA MEMORIA PRINCIPALE E MEMORIA SECONDARIA

I programmi e i dati risiedono nella memoria secondaria

Processore

Stampante Memoria secondaria

Memoria principale

Page 38: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LA DIVISIONE DEI RUOLI TRA MEMORIA PRINCIPALE E MEMORIA SECONDARIA

I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati (i dati) vengono

copiati nella memoria principale

Processore

Stampante Memoria secondaria

Memoria principale

Page 39: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LA DIVISIONE DEI RUOLI TRA MEMORIA PRINCIPALE E MEMORIA SECONDARIA

I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati (i dati) vengono

copiati nella memoria principale Il processore è in grado di eseguire le istruzioni di cui sono

composti i programmi

Processore

Stampante Memoria secondaria

Memoria principale

Page 40: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Memoria secondaria

La memoria secondaria deve avere capacità di memorizzazione permanente e quindi per la sua si utilizzano tecnologie basate: sul magnetismo (tecnologia magnetica)

dischi magnetici (hard disk e floppy disk)nastri magnetici (pressocché obsoleti)

sull’uso dei raggi laser (tecnologia ottica)dischi ottici (CD-ROM, DVD)

Page 41: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dischi magnetici

Hard disk: sono dei dischi che vengono utilizzati come supporto di memoria secondaria fisso all’interno del computer varie centinaia di GB di

memoria

Page 42: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

La memoria magnetica

Sfrutta il fenomeno fisico della polarizzazione Sul supporto ci sono delle particelle magnetiche I due diversi tipi di magnetizzazione (positiva e

negativa) corrispondono alle unità elementari di informazione (0 e 1)

La testina di lettura/scrittura cambia la polarizzazione

Attenzione ad avvicinare magneti ad un disco rigido

Page 43: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dischi magnetici

I dischi magnetici: sono i supporti di memoria più diffusi

Nel corso delle operazioni i dischi vengono mantenuti in rotazione a velocità costante e le informazioni vengono lette e scritte da testine del tutto simili a quelle utilizzate nelle cassette audio/video

Page 44: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dischi magnetici

I dischi sono suddivisi in tracce concentriche e settori, ogni settore è una fetta di disco I settori suddividono ogni traccia in porzioni dette blocchi

Testina

Traccia Blocco

Settore

Page 45: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dischi magnetici

I dischi magnetici consentono l’accesso diretto È possibile posizionare direttamente la testina su un qualunque

blocco (noto il numero della traccia e il numero del settore) Per effettuare un’operazione di lettura/scrittura la testina deve

“raggiungere” il blocco desiderato Il disco gira; la testina sposta solo in senso radiale

Page 46: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

La memoria ottica

Usa il raggio laser e sfrutta la riflessione della luce Il raggio laser viene riflesso in modo diverso da

superfici diverse, e si può pensare di utilizzare delle superfici con dei piccolissimi forellini

Ogni unità di superficie può essere forata o non forata

L’informazione viene letta guardando la riflessione del raggio laser

Page 47: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

La memoria ottica

0 1 0 0 10101

Page 48: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

La memoria ottica

0 101

Page 49: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Registri

Mem. cache

Mem. centrale

Dischi magneticie/o ottici

Nastri magnetici

byte

Aumenta la capacità memorizzazione

KB

10*millisecondi

microsecondo/millisecondi

10*nanosecondi

nanosecondi

100*picosecondi

GB

100GB

>1000 GB

Aumenta la velocità di accesso

Page 50: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 51: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dispositivi di input/output Input:

Tastiera Mouse (e altri strumenti di

puntamento) Scanner Microfono Macchine fotografia e

telecamera digitale Lettori di codici a barre

Output: Videoterminale Stampante Casse acustiche

Input/output: Touchscreen Modem / Ethernet

Page 52: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dispositivi di input/output

Operano in modo asincrono rispetto al processore (ne sono “schiavi”) Si parla di gestione master-slave: è il processore che deve

coordinare le attività di tutti i dispositivi (Input) Il processore non è in grado di prevedere e di

controllare il momento in cui un dato di input sarà a disposizione

(Output) Il processore non può prevedere il momento in cui un dispositivo in output avrà terminato di produrre i dati in uscita

Page 53: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

I dispositivi di input/output

Un dispositivo di input deve avvertire il processore quando un dato di input è disponibile

Un dispositivo di output deve avvertire il processore quando ha terminato di produrre dati in uscita

Al termine di ogni operazione i dispositivi inviano al processore un segnale, detto interrupt, che indica che il dispositivo ha bisogno di attenzione

Page 54: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Il collo di bottiglia dell’I/O

Principali rivoluzioni nelle interfacce uomo macchina: Invenzione delle interfacce grafiche+mouse (Macintosh,

1984) Invenzione dei touch screen (schermi sensibili al tocco)

Altre innovazioni rilevanti Programmi di dettatura (e.g. Dragon dictate) Schermi persistenti (non richiedono input di corrente per

mantenere un’immagine; leggibili alla luce del sole; usati negli E-book readers, p.es. Amazon Kindle, Sony PRS)

Page 55: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Il collo di bottiglia dell’I/O

A fronte dello sviluppo di memorie e processori, mancano tuttavia vere novità nel campo delle interfacce.

Tensione tra: Computer con schermi sempre più grandi ed

applicazioni/pagine web che si aspettano di avere un grande spazio di visualizzazione

Diffusione di “cellulari intelligenti” (smartphones e simili) che, dovendo essere tascabili, hanno schermi limitati ma potenza sufficiente per far funzionare applicazioni sviluppate per PC.

Page 56: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ASPETTO DEI MICROPROCESSORI MODERNI

Page 57: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

MICROPROCESSORE E PIASTRA MADRE Il microprocessore è incastonato

nella piastra madre

La piastra madre raccoglie in maniera efficiente e compatta altre componenti fondamentali di ogni computer, come la memoria, le porte di comunicazione, ecc.

Page 58: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

La struttura interna della piastra madre

Page 59: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

HARDWARE: RIASSUNTO DELLE IDEE PRINCIPALI

Architettura di von Neumann: Divisione in componenti collegate da bus Ciclo di esecuzione istruzioni Divisione della memoria in diversi livelli Funzionamento asincrono dell’input/output

Realizzazione fisica dell’architettura di von Neumann: Piastra madre Memorie volatili e non volatili

Page 60: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

L’accelerazione dell’informatica Rapidissima crescita della potenza dei computer, misurata in

capacità della RAM, velocità della CPU e capienza del disco rigido. RAM: dai 48KB dell'Apple II ai 2GB di un PC medio odierno: un

incremento di 42000 volte. Al momento risulta che la memoria media di un PC raddoppia ogni 21 mesi.

Processore: da 4 MHertz a 2600000 e più (per macchine monoutente medie): un incremento di circa 650 volte. Di pari passo è aumentata anche la complessità interna del processore, espressa dal numero di transistor che contengono. Finora, si è mantenuta valida la legge di Moore, enunciata nel 1964: "il numero dei transistor nel processore raddoppia ogni 18 mesi".

Memorie di massa: Dai 90K su floppy disk dell'Apple II ai 360 GB e più di un PC medio-alto attuale: un incremento di più di 4 milioni di volte.

Page 61: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Applicazione pratica

Scelta tra vari modelli per l’acquisto di un computer. Vedi ad es.

Page 62: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Le domande da porsi

Fisso o portatile?Da considerare: A parità di costo, un computer fisso è più potente. Ma la batteria di un

portatile è preziosa in zone con interruzioni di corrente, o se si lavora molto in treno.

Se si lavora spesso in due luoghi diversi (p.es. casa-ufficio) può non servire comprare un portatile. Se ognuno è dotato/dotabile di un computer fisso, si possono tenere tutti i propri dati su una chiave USB (8GB o più) e portarla da un computer all’altro.

Un computer “portatile” di peso >3Kg non è davvero comodo da portare addosso. Il computer più leggeri hanno schermo più piccolo, ma le batterie durano spesso di più. E’ possibile poi comprare con poca spesa schermo, mouse e tastiera esterni da collegare ad un portatile piccolo, trasformandolo virtualmente in un “fisso”.

Esistono applicazioni che sono praticamente inutilizzabili su schermi sotto i 10 pollici (p.es. il programma di posta “Thunderbird”)

Page 63: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Le domande da porsi

Che capienza di disco?Che uso ne faccio? Se non si tengono su computer musica o film, 60 GB sono più che

sufficienti. Se lo si usa per contenere musica, 100 GB in più sono consigliabili. Ancora più spazio nel caso di film; per tenere film in alta definizione il disco deve avere la massima capienza compatibile col proprio budget.

Che velocità? Una velocità alta è richiesta quasi solo da videogiochi e programmi di

fotoritocco o per editing di film (oltre ad una memoria >2GB) Non sempre il software è in grado di sfruttare la velocità del processore

(o della scheda grafica)

Page 64: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

H ard w are S oftw are

C om p u te r

Page 65: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

CHE COSA IL SOFTWARE FA PER VOI

Page 66: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

TRE TIPI DI SOFTWARE

Software APPLICATIVO: programmi che permettono di svolgere funzioni VIDEOGIOCHI, WORD PROCESSING,

DATABASE, POSTA ELETTRONICA PROGRAMMI UTENTE veri e propri Software DI SISTEMA: controlla l’hardware,

gestisce l’interfaccia con utente, coordina le applicazioni SISTEMA OPERATIVO, INTERFACCIA RETE

Page 67: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL SOFTWARE DI SISTEMA

Una programmazione diretta della macchina hardware da parte degli utenti creerebbe delle serie difficoltà

Page 68: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Una programmazione diretta della macchina hardware da parte degli utenti creerebbe delle serie difficoltà L’utente dovrebbe conoscere l’organizzazione fisica

dell’elaboratore e il suo linguaggio macchina

LOAD 32 R2

ADD R1 84IL SOFTWARE DI SISTEMA

Page 69: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL SOFTWARE DI SISTEMA

Una programmazione diretta della macchina hardware da parte degli utenti creerebbe delle serie difficoltà L’utente dovrebbe conoscere l’organizzazione fisica

dell’elaboratore e il suo linguaggio macchina Ogni programma dovrebbe essere scritto utilizzando delle

sequenze di bit ed ogni piccola differenza hardware comporterebbe una riscrittura del programma stesso

Page 70: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL SOFTWARE DI SISTEMA

È necessario fornire un meccanismo per astrarre dall’organizzazione fisica della macchina

L’utente deve: usare nello stesso modo (o comunque in un modo molto

simile) macchine diverse dal punto di vista hardware avere un semplice linguaggio di interazione con la

macchina avere un insieme di programmi applicativi per svolgere

compiti diversi

Page 71: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL COMPUTER VIRTUALE

Il SOFTWARE DI SISTEMA opera un’ASTRAZIONE mettendo a disposizione dell’utente (programmatore) un set di operazioni più ricco di quello definito dall’hardware (o dai livelli di software di sistema inferiori)

Facendo cio’ realizza una macchina virtuale che non esiste fisicamente

Quest’operazione di astrazione puo’ essere ripetuta piu’ volte

Page 72: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

ESEMPI DI ISTRUZIONI ‘VIRTUALI’

STAMPA CARATTERE A Eseguire questa istruzione richiede mettere

carattere A in un’area speciale (‘print buffer’), inviare un segnale alla stampante che c’è dell’input, aspettare che la stampante abbia finito e controllare che tutto abbia funzionato OK

APRI DOCUMENTO B Un `documento’ è semplicemente una lista di

blocchi su tracce probabilmente diverse del disco rigido

Page 73: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

SISTEMA OPERATIVO

Il sistema operativo e’ il software di sistema che gestisce ed interagisce direttamente con il computer, presentando a tutti gli altri tipi di software un’interfaccia che astrae dalle caratteristiche dell’hardware specifico.

Esempi: Windows (XP, Vista, 7) Unix (Linux, BSD, Apple System X)

Page 74: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Funzioni principali del sistema operativo

All’avvio del computer, viene caricato un “kernel” (il programma principale del SO). Questo (con altri sottoprogrammi si occupa di:

Gestire il processore ed programmi in esecuzione (detti processi) Gestire la memoria principale (RAM) Gestire la memoria virtuale (una “RAM” apparente, in realtà salvata su

disco) Gestire la memoria secondaria (Disco rigido) Gestire i dispositivi di input/output

Interagire con l’utente, gestendo il sistema a finestre (quest’ultimo compito è spesso separato dal S.O. vero e proprio; ciò è particolarmente visibile in Linux, vedi ad es. http://openskill.info/topic.php?ID=8 )

Page 75: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LA STRUTTURA A CIPOLLA DEL SISTEMA OPERATIVO

011100010111010101000011110Hardware

Utente

Avvio

Gestione: i processi, la memoria, i disp. di input/output

Interfaccia utente

Page 76: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Funzioni principali del sistema operativo

Gestione del processore e dei programmi in esecuzione (detti processi)

Gestione della memoria principale Gestione della memoria virtuale Gestione della memoria secondaria

Gestione dei dispositivi di input/output

Interazione con l’utente

Page 77: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Esecuzione dei programmi

Quando si scrive un comando (oppure si clicca sull’icona di un programma), il sistema operativo: Cerca il programma corrispondente sulla memoria

secondaria Copia il programma in memoria principale …

Processore

Stampante Memoria secondaria

Memoria principale

Page 78: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Esecuzione dei programmi

Quando si scrive un comando (oppure si clicca sull’icona di un programma), il sistema operativo: Cerca il programma corrispondente sulla memoria

secondaria Copia il programma in memoria principale Imposta il registro Program Counter con l’indirizzo in

memoria principale della prima istruzione del programma

Page 79: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Sistemi mono-utente, mono-programmati

Un solo utente può eseguire un solo programma alla volta È forzato a “sequenzializzare” i programmi Il programma viene lanciato, eseguito e quindi

terminato Ma il processore viene sfruttato al meglio?

Page 80: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Sistemi mono-utente, mono-programmati

No, il processore non viene sfruttato al meglio: si spreca molto tempo Il processore è molto più veloce dei supporti di

memoria secondaria e delle altre periferiche Passa la maggior parte del suo tempo in attesa Durante l’attesa si dice che il processore è un

uno stato inattivo (idle)

Page 81: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Esecuzione sequenziale

Supponiamo che il nostro sistema sia un bar in cui il barista serve diversi clienti

Il barista è corrispondente del processore, i clienti sono l’equivalente dei processi da eseguire

Esecuzione mono-programmati:

Ordinare Preparareil caffé

ConsumarePagare

Ordinare Preparareil caffé

ConsumarePagare

Client 1 Client 2

Page 82: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Soluzione

In realtà:

Ordinare(C1)

Preparareil caffé (C1)

Pagare(C1)

Ordinare(C2)

Preparareil caffé (C2)

Pagare(C2)

Client 1

Client 2

Page 83: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Soluzione: sistemi multiprogrammati

Quando il processore è nello stato di idle può eseguire (parte di) un altro processo

Quando un processo si ferma (per esempio in attesa di un dato dall’utente) il processore può passare ad eseguire le istruzione di un altro processo

Il sistema operativo si occupa dell’alternanza tra i processi in esecuzione (“multitasking”)

In un PC (personal computer) tutti i processi saranno relativi ad un singolo utente (o all’attività del SO); in sistemi collegati in rete i processi possono riguardare anche utenti diversi.

Page 84: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL TASK MANAGER

Page 85: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Funzioni principali del sistema operativo Avvio del computer

Gestione del processore e dei processi

Gestione della memoria principale Gestione della memoria virtuale Gestione della memoria secondaria

Gestione dei dispositivi di input/output

Interazione con l’utente

Page 86: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL FILE SYSTEM

Page 87: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

IL FILE SYSTEM: alcune caratteristiche di base

Possibilità di impedire/permettere la scrittura/lettura/esecuzione di file/cartelle di un particolare utente da parte di altri (concetto di utente privilegiato, superuser)

Possibilità di accesso ad un medesimo file sotto nomi diversi (“collegamenti”, da non confondersi con i “link” su web)

Possibilità di “journaling” (per preservare l’integrità del filesystem) e di “indexing” (per facilitare la ricerca di contenuti)

Page 88: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

SISTEMI OPERATIVI PER PC

MS-DOS (MicroSoft Disk Operating System -1980)

Apple Mac: primo sistema operativo ad utilizzare il nuovo tipo di interfaccia a finestre sviluppato da Xerox

Windows (1985) Windows 95, Windows 98, Windows Me Windows NT, Windows 2000 (5th version of NT),

Windows XP, Windows Vista (2007), Windows 7 (2010)

UNIX per PC: Minix (1987) Linux (1991/94)

Page 89: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Sistemi operativi e Open Source

Movimento “Open Source” Differenza tra beni materiali (uno a uno) e

software (uno a molti) Sviluppo di codice come servizio: diffusione di

software “libero” creato dalla comunità dei programmatori

Con lo sviluppo di internet, possibilità di raccogliere ed organizzare attorno ad un progetto software un largo gruppo di programmatori volontari

Page 90: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Sistemi operativi e Open Source

Progetto GNU (Richard Stallman) Scopo: creazione di un SO derivato da UNIX ma

completamente libero per arrivare a questo risultato, all'interno del

progetto vengono creati programmi per coprire ogni necessità informatica: compilatori, lettori multimediali, programmi di crittografia, ecc.

Il software del progetto viene distribuito con una particolare licenza, la GNU GPL, costruita per garantirne la libertà di diffusione e di modifica.

Page 91: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Sistemi operativi e Open Source

Il codice prodotto dal lavoro dei volontari organizzati tramite rete viene diffuso completo di “codice sorgente” (“source”): il programma scritto in un linguaggio ad alto livello e commentato dai suoi creatori.

Chiunque abbia l’esperienza tecnica necessaria ha la possibilità di modificare, adattare ed espandere il programma.

Al contrario, i programmi “proprietari” (Photoshop, Excel, ma anche programmi gratuiti come Acrobat Reader o Explorer) vengono distribuiti solo nel formato eseguibile, quasi impossibile da modificare.

Page 92: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Sistemi operativi e Open Source: Il caso Linux

Linux: un sistema operativo “open source” basato su UNIX, sviluppato tra il 1994 ed oggi sotto l’impulso e la direzione di Linus Torsvalden

Ambiente GNU/Linux: kernel Linux più programmi di gestione e sviluppo presi del progetto GNU

Diffuso gratuitamente in varie “distribuzioni” (varianti), che contengono sistemi linux più o meno “completi” (SO + sistema a finestre + applicativi open source per i compiti più comuni)

Page 93: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Linux: caratteristiche di base

Multiutente; multitasking; filesystem con protezione lettura/scrittura per i vari utenti, link

Vari ambienti grafici (KDE, GNOME, ecc.), installabili a scelta dell’utente

Installabile su una varietà di hardware diversi, anche se poco potenti

Stabile, altamente personalizzabile, gratuito Può convivere con Windows sullo stesso disco rigido:

all’accensione l’utente sceglie quale S.O. attivare “Pacchetti” applicativi extra installabili da web in modo

semiautomatico

Page 94: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Linux: distribuzioni

Varietà di distribuzioni, fornite gratuitamente su Web o su DVD.

Ciascuna distribuzione aggiunge di suo un sistema semiautomatico di installazione ed aggiornamento del software, più una particolare scelta di programmi applicativi e di configurazioni.

Vedi: http://it.wikipedia.org/wiki/Distribuzione_%28Linux%29 per una panoramica.

Esistenza di distribuzione “live” su CD/DVD (consentono di provare un sistema linux sul proprio computer senza installare nulla sul disco rigido)

Page 95: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Linux: limiti

Compatibilità con dati in uso nel mondo Windows?(mancanza di Microsoft, Office; presenza di OpenOffice)

Funzionamento con hardware recenti (specialmente portatili)?

Molteplicità eccessiva degli strumenti software? Innovatività dell’impostazione generale (S.O. originali o

“cloni” dell’ambiente windows?)

Page 96: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

Per conoscere Linux

“Linux Day” a Trento:

24 ottobre 2009, al Liceo Scientifico Galilei di Trento

http://www.linuxtrent.it/

Page 97: IDUL 2009 COMPUTER: HARDWARE E SOFTWARE. Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.

LETTURE

Architettura: http://it.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Von_Neumann_architecture

Sistema operativo: http://it.wikipedia.org/wiki/Sistema_operativo

http://it.wikipedia.org/wiki/Storia_dei_sistemi_operativi Open source

http://it.wikipedia.org/wiki/Open_sourcehttp://www.apogeonline.com/openpress/cathedral