INFORMATICA
UMANISTICA B
COMPUTER: HARDWARE E
SOFTWARE
[email protected]
Computer
Hardware
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
Programmi applicativi per l’uso del sistema
(possono usare i programmi di base)
PRIMA PARTE: HARDWARE
Computer
Hardware
Software
HARDWARE: IDEE CENTRALI


CICLO DI ESECUZIONE ISTRUZIONI
MEMORIA PRINCIPALE E MEMORIA
SECONDARIA
DI NUOVO LA MACCHINA DI
TURING
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
ARCHITETTURA DI VON
NEUMANN
CPU
Preleva istruzione
Esegue
Memorizza risultato
BUS
I/O Memoria
UNITA’ CENTRALE E
PERIFERICHE
Processore
Memoria
principale
Unità centrale
Stampante
Periferiche
Tasteria e monitor
Periferiche di input/output
Memoria secondaria
Architettura dei computer

Un computer deve:

elaborare l’informazione


usando il processore (Central Processing Unit CPU)
memorizzare l’informazione
usando la memoria principale (RAM)
 usando la memoria secondaria


fare l’input/output dell’informazione

usando i dispositivi di input/output
LA CPU IN DETTAGLIO
ARCHITETTURA DI VON NEUMANN:
COMPONENTI DELLA CPU

La CPU non è un unico componente ma è costituita da
componenti diversi che svolgono compiti diversi
Bus Interno
REGISTRI
Program Counter
Registro di Stato
Unità di
controllo
Registro Istruzioni
…
Unità
aritmetico
logica
Registri Generali 8 o 16
Registro Indirizzi Memoria
Registro Dati Memoria
Registro di Controllo
UNITA’ DI CONTROLLO
Bus Interno
REGISTRI
Program Counter
Registro di Stato
Unità di
controllo
Registro Istruzioni
…
Unità
aritmetico
logica
Registri Generali 8 o 16
Registro Indirizzi Memoria
Registro Dati Memoria
Registro di Controllo
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
COMPONENTI DELLA CPU:
UNITA’ ARITMETICO-LOGICA
Bus Interno
REGISTRI
Program Counter
Registro di Stato
Unità di
controllo
Registro Istruzioni
…
Unità
aritmetico
logica
Registri Generali 8 o 16
Registro Indirizzi Memoria
Registro Dati Memoria
Registro di Controllo
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
COMPONENTI DELLA CPU:
REGISTRI
Bus Interno
REGISTRI
Program Counter
Registro di Stato
Unità di
controllo
Registro Istruzioni
…
Unità
aritmetico
logica
Registri Generali 8 o 16
Registro Indirizzi Memoria
Registro Dati Memoria
Registro di Controllo
ARCHITETTURA DI VON
NEUMANN: I BUS
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
IL CICLO DI ESECUZIONE
ISTRUZIONI


Il ciclo di esecuzione istruzioni sta al cuore del
funzionamento di un computer
Ad ogni ‘ticchettio’ del clock, la CPU:






Preleva dalla memoria principale la “prossima” istruzione
da eseguire (specificata dal PROGRAM COUNTER, PC)
La mette nel REGISTRO ISTRUZIONI (IR)
La DECODIFICA
Preleva gli OPERANDI specificati nell’istruzione
ESEGUE l’istruzione
Ricomincia
IL CICLO DI ESECUZIONE
(SEMPLIFICATO!)
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
Istruzioni macchina

Le istruzioni possono avere formati diversi - per
esempio:
Codice istruzione
oppure
cosa fare
Codice istruzione
Argomento 1 Argomento 2
su cosa operare
Argomento 1
Istruzioni macchina

Per esempio:
Codice istruzione

Argomento 1 Argomento 2
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
(Perché R1 non R2? Non c’è una ragione: la decisione è arbitraria)
Istruzioni macchina

Per esempio:
01000110 1111000
cosa fare
11110101 01110110
01010111
00001111
su cosa operare
11001001
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
UNITA’ ARITMETICO-LOGICA E
CIRCUITI LOGICI
ALU E CIRCUITI LOGICI



I CIRCUITI LOGICI sono la base
dell’hardware di un calcolatore
L’ Unita’ aritmetico / logica (ALU), e’
prevalentemente composta di circuiti di
questo tipo
Questi circuiti sono costituiti da un gran
numero di componenti piu’ semplici
CIRCUITI LOGICI E FUNZIONI

Ogni circuito logico calcola una FUNZIONE
od OPERAZIONE:


+(2,4) = 6
Le operazioni piu’ semplice sono quelle
BINARIE
OPERAZIONI BINARIE



Useremo il termine ‘OPERAZIONE BINARIA’
in modo generico per riferirsi ad ogni
funzione che specifica un valore di OUTPUT
0 od 1 sulla base di 1 o piu’ valori di INPUT
Queste operazioni binarie possono essere
specificate da TABELLE
Esempio piu’ noto di operazione binaria:
OPERAZIONI LOGICHE
L’ALGEBRA BOOLEANA


Una forma molto
semplice di LOGICA
Che codifica le
condizioni sotto le quali
espressioni complesse
come “A e B” o “non A”
o “A o B” sono vere
mediante TABELLE DI
VERITA’
OPERAZIONI LOGICHE
ELEMENTARI: AND, OR, NOT
AND
A
B
OR
A AND B
A
B
NOT
A OR B
A
NOT A
falso falso
falso
falso falso
falso
falso
vero
falso vero
falso
falso vero
vero
vero
falso
vero
falso
falso
vero
falso
vero
vero
vero
vero
vero
vero
vero
A B
R
A B
R
A
R
0 0
0
0 0
0
0
1
0 1
0
0 1
1
1
0
1 0
0
1 0
1
1 1
1
1 1
1
CIRCUITI ELEMENTARI:
AND, OR, NOT
AND
OR
NOT
A B
R
A B
R
A
R
0 0
0
0 0
0
0
1
0 1
0
0 1
1
1
0
1 0
0
1 0
1
1 1
1
1 1
1
A
A
R
B
R
B
A
R
DALLE TABELLE DI VERITA’ AI
CIRCUITI





Tanti input quante sono le dimensioni della
tabella
Un solo output
Un or all’output
Tanti and quanti sono gli 1 della tabella
Input degli and: 1 se diretto, 0 se negato
A B
A  B
A
0 0
0
B
0 1
1
1 0
1
1 1
0
R
Architettura dei computer

Un computer deve:

elaborare l’informazione


usando il processore (Central Processing Unit CPU)
memorizzare l’informazione
usando la memoria principale (RAM)
 usando la memoria secondaria


fare l’input/output dell’informazione

usando i dispositivi di input/output
Architettura dei computer

Un computer deve:

elaborare l’informazione


usando il processore (Central Processing Unit CPU)
memorizzare l’informazione
usando la memoria principale (RAM)
 usando la memoria secondaria


fare l’input/output dell’informazione

usando i dispositivi di input/output
Componenti principali di un
computer
Processore
Memoria
principale
Stampante
Periferiche
del calcolatore
Tasteria e monitor
Periferiche di input/output
Unità centrale
Memoria secondaria
ORGANIZZAZIONE DELLA
MEMORIA
Processore
Insieme al processore
forma l’Unità Centrale
di un elaboratore
0
1
2
3
4
5
Memoria
principale
Unità centrale
Sequenza di celle
– Ad ogni cella è
associato un indirizzo
(un numero progressivo
a partire da 0)
Conserva i
programmi e i dati
usati dal processore
N
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
Memoria principale (RAM)
Indirizzi



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
0
1
2
3
4
5
N
Contenuto
345
13.200.985
3.890
LOAD 3568 R1
LOAD 56 R1
ADD R1 R2
LA MEMORIA SECONDARIA
Processore
Memoria
principale
Stampante
Periferiche
del calcolatore
Tasteria e monitor
Periferiche di input/output
Unità centrale
Memoria secondaria
Architettura dei computer

Un computer deve:

elaborare l’informazione


usando il processore (Central Processing Unit CPU)
memorizzare l’informazione
usando la memoria principale (RAM)
 usando la memoria secondaria


fare l’input/output dell’informazione

usando i dispositivi di input/output
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)
Non tutti i supporti di memoria secondaria permettono
l’accesso diretto ai dati
 Alcuni permettono solo un accesso sequenziale (per
esempio, nastri magnetici)
LA DIVISIONE DEI RUOLI TRA
MEMORIA PRINCIPALE E MEMORIA
SECONDARIA

I programmi e i dati risiedono nella memoria secondaria
Processore
Stampante
Memoria
principale
Memoria
secondaria
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
principale
Memoria
secondaria
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
principale
Memoria
secondaria
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


sull’uso dei raggi laser (tecnologia ottica)

dischi ottici (CD-ROM, DVD)
I dischi
magnetici

Hard disk: sono dei dischi
che vengono utilizzati come
supporto di memoria
secondaria fisso all’interno
del computer


vari GB di memoria
Floppy disk: sono supporti
rimovibili

Oggi sono comuni floppy
disk da 3,5 pollici di
diametro, capacità 1,44 MB
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
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
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
Traccia
Testina
Blocco
Settore
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
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

La memoria ottica
1
0
1
0
0
1
0
0
1
La memoria ottica
1
0
0 1
Aumenta la capacità memorizzazione
byte
Registri
KB
Mem. cache
MB
Mem. centrale
GB
Dischi magnetici
e/o ottici
>10 GB
Nastri magnetici
100*picosecondi
nanosecondi
10*nanosecondi
microsecondo/
millisecondi
10*millisecondi
Aumenta la velocità di accesso
Architettura dei computer

Un computer deve:

elaborare l’informazione


usando il processore (Central Processing Unit CPU)
memorizzare l’informazione
usando la memoria principale (RAM)
 usando la memoria secondaria


fare l’input/output dell’informazione

usando i dispositivi di input/output
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:



Input/output:


Touchscreen
Modem
Videoterminale
Stampante
Casse acustiche
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
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
REALIZZAZIONE FISICA
DELL’ARCHITETTURA DI VON NEUMANN


Nei computer odierni, le funzioni logiche
dell’unita’ centrale sono svolte da un
MICROPROCESSORE
Il microprocessore è il vero cuore del
computer
MICROPROCESSORI
MODERNI
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.
La struttura interna della
piastra madre
Microprocessore e
piastra madre



La memoria RAM è una memoria di lavoro, volatile:
il suo contenuto sparisce quando si spegne il
computer
La memoria ROM è una memoria non volatile, che
di norma non viene modificata dall’utente
La memoria ROM contiene di norma il BIOS (Basic
Input Output System): una serie di informazioni di
base delle quali il sistema ha bisogno per funzionare
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
APPLICAZIONE PRATICA
CARATTERISTICHE DI UN
COMPUTER (2)
Computer
Hardware
Software
CHE COSA IL SOFTWARE FA
PER VOI
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
IL SOFTWARE DI SISTEMA

Una programmazione diretta della macchina
hardware da parte degli utenti creerebbe delle serie
difficoltà
LOAD 32 R2
IL SOFTWARE DI SISTEMA

ADD R1 84
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
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
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
IL COMPUTER VIRTUALE



Il SOFTWARE DI SISTEMA opera
un’ASTRAZIONE mettendo a disposizione
dell’utente (programmatore) un set di
operazioni PIU’ 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
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’e’
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 possibilmente diverese del disco
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, Unix (Linux, Sistem X
Apple), etc.
Funzioni principali del sistema
operativo

Avvio del computer

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

LA STRUTTURA A CIPOLLA DEL
SISTEMA OPERATIVO
Utente
0111000101
1101010100
Hardware
0011110
Avvio
Gestione: i processi, la memoria, i disp. di input/output
Interfaccia utente
Funzioni principali del sistema
operativo

Avvio del computer

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

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 principale
Memoria
secondaria
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
Sistemi mono-utente, monoprogrammati

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?
Sistemi mono-utente, monoprogrammati

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)
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:
Client 1
Ordinare
Preparare
il caffé
Consumare
Pagare
Client 2
Ordinare Preparare
il caffé
Consumare
Pagare
Soluzione

In realtà:
Client 1
Client 2
Ordinare
(C1)
Ordinare
(C2)
Preparare
il caffé (C1)
Preparare
il caffé (C2)
Pagare
(C1)
Pagare
(C2)
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
IL TASK MANAGER
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

IL FILE SYSTEM
BLOCCHI SU DISCO

I dischi sono suddivisi in tracce concentriche e
settori, ogni settore è una fetta di disco

I settori suddividono ogni traccia in porzioni dette blocchi
Traccia
Testina
Blocco
Settore
STORIA DEI SISTEMI OPERATIVI

Prima generazione: 1945 - 1955


Seconda generazione: 1955 - 1965


transistors, sistemi ‘batch’
Terza generazione: 1965 – 1980


valvole
Circuiti integrati, multiprogramming
Quarta generazione: 1980 – oggi

personal computers, interfacce grafiche
SISTEMI BATCH
Early batch system




bring cards to 1401
read cards to tape
put tape on 7094 which does computing
put tape on 1401 which prints output
SISTEMI BATCH

Struttura di un tipico Fortran Monitor System job
PRIMI SISTEMI OPERATIVI
MULTI-TASKING

CTSS (Compatible Time Sharing
System - 1962)

MULTICS (MULTIplexed Information and
Computing Service - 1965)

UNIX (1969)
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
UNIX per PC:


Minix (1987)
Linux (1994)
INTERFACCE SU RETE E WEB


A partire dal 1980 una componente
essenziale del sistema operativo
Lezione 4
LETTURE


Tomasi, Capitolo 1.5, 1.6 ed 1.7
Architettura:
http://it.wikipedia.org/wiki/Computer
http://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
RINGRAZIAMENTI

Parte del materiale proviene da:



Corso di Informatica Umanistica 2004/05 (Cuel /
Ferrario)
Corso di IU di Fabio Ciotti (Roma)
Corso di Informatica di Jeremy Sproston (Torino)