Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Il Sistema Operativo
p opera
p
come intermediario tra
ll’hardware
hardware del sistema e uno
o più utenti.
Sistema Operativo: funzioni
Tra questi,
questi agende
Palm m505
elettroniche e
telefoni cellulari
sono esempi
Sendo z100
comuni.
Nokia 7650
Dispositivi
Un programma in esecuzione è
d tt processo.
detto
Ill kernel
k l distribuisce
d b l
le
risorse di calcolo tra i
vari processi attivi.
Gestione CPU
Una prima distinzione è dunque tra quei sistemi
che eseguono un processo per volta e quelli in
grado di gestirne diversi “contemporaneamente”.
Questi ultimi sono detti multitasking
multitasking.
Gestione memoria
La memoria è una risorsa essenziale e limitata.
Essenziale perché ogni programma in esecuzione
Essenziale,
(processo) deve essere “caricato”
caricato in memoria,
memoria e
così i dati su cui opera.
C C
A
D
C Il processo D non trova spazio in cui
inserirsi, anche se la memoria libera
complessiva sarebbe sufficiente.
Gestione memoria: paginazione
E’ anche possibile suddividere la memoria in
blocchi (pagine fisiche).
fisiche) I programmi da caricare
dovranno essere divisi in pagine logiche.
Memoria (RAM) Processi
0
0
1
1
2
2
E
3
3 4
4
5 5
6 6 F
7
7
8
9
8
G
9
Gestione memoria: swapping
Il sistema operativo può riservare un’area
di un disco per lo swapping
swapping.
C
A A
B B D
D
C C
D viene caricato
in memoria.
memoria
Un file è un’astrazione
che rappresenta un
insieme di byte
logicamente collegati.
Gestione file: funzioni
Il file system deve mettere a disposizione diverse
funzioni per la manipolazione dei file:
• creazione/eliminazione
• lettura/scrittura/esecuzione
• coordinamento
di t accessii contemporanei
t i
• controllo degli accessi (nei sistemi
multiutente)
Inteprete dei comandi (shell)
L’interprete
interprete dei comandi è quella parte del
sistema operativo che riceve ed elabora le
istruzioni impartite da un utente.
E’ possibile utilizzare lo
stesso sistema operativo
con shell differenti.
Questo può rendere
molto diverso il modo di
impartire comandi.
Inteprete dei comandi (shell)
La shell è dunque lo strato più esterno di un
sistema operativo
operativo. Di fatto
fatto, rappresenta
l’interfaccia
interfaccia tra utente e sistema.
Ip
primi due termini sono sinonimi.
“Shell” vuol dire “guscio”, in riferimento al fatto
che si tratta dello strato più esterno di un
sistema operativo.
E’ un programma
programma.
Interfaccia
L’interfaccia è il mezzo attraverso il quale
l’utente invia comandi alla shell.
shell
DOS shell
Interfacce a caratteri
Unix shell
(linux
(l u console)
co sole)
Interfacce a caratteri
Mi
Microsoft
ft BOB (1995)
(1995).
Interfacce grafiche: Macintosh
L’interfaccia grafica dell’Apple Macintosh: il Finder (ver. 0.97)
Interfacce grafiche: Windows 1.0
Un’interfaccia per il DOS: Windows 1.0
Interfacce grafiche: Windows 3.1
Un’interfaccia
U ’i t f i
per il DOS:
Windows 3.1
Interfacce grafiche: Windows 95
Windows
Wi d
95
Interfacce grafiche: Windows XP
Windows
Wi d
XP
Interfacce grafiche: metafore
L’uso – e l’implementazione - di una metafora
pone di fronte,
f t ti tipicamente,
i t a ttre problemi:
bl i
La metafora
L t f associa
i questi
ti oggetti
tti aii lloro
corrispettivi
p nel mondo reale;; l’utente ha g già
un’idea di quali azioni è possibile compiere.
Interfacce grafiche: manipolazione
Il p
problema delle interfacce a
manipolazione diretta è che l’utente deve
manipolare direttamente ogni oggetto…
oggetto
• per compiti ripetitivi,
ripetitivi è frustrante;
• per compiti complessi, a volte non tutti i
passaggi sono noti.
Elementi grafici
Le interfacce attuali, basate sulla metafora
d ll scrivania,
della i i sono di titipo WIMP
WIMP.
Gli elementi che le compongono vengono
detti widget
widget.
Una “widget” è un elemento che fornisce
i f
informazioni
i i all’utente
ll’ t t o glili permette
tt di
interagire
g con il sistema operativo
p o con
un’applicazione.
Interfacce grafiche
Esempi di widget sono le icone, i menu, i
pulsanti,
l ti le
l finestre,
fi t l b
le barre di scorrimento,
i t
le caselle di testo…
Solitamente è il sistema operativo a mettere a
disposizione un insieme di widget.
IIn ambiente
bi t U Unix
i è possibile
ibil usare iinsiemi
i i di
widget
g diversi.
Interfacce grafiche
Macintosh
Maximize
Minimize Close
Windows
Linux (KDE)