Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Architettura
Architettura
Architettura
Architettura
Supporti + caratteristiche
nastri magnetici, dischi magnetici, dischi ottici
+
velocit, capacit, velocit di trasferimento dati, metodi
d'accesso (casuale o sequenziale)
Il sistema operativo ha una visione logica uniforme del processo
di memorizzazione dell'informazione:
esiste un solo tipo di oggetto
il file la sola unit logica di memoria
creazione e cancellazione di file
creazione e cancellazione di directory
supporto di primitive per la manipolazione di file e directory
mapping dei file sulla memoria secondaria
backup dei file su dispositivi di memorizzazione stabile
Architettura
Reti
Architettura
Architettura
Architettura
Il sistema operativo
livello
utente
livello
nucleo
File
System
Gestore
I/O
hardware/firmware
Architettura
10
System call
Architettura
11
Architettura
12
Chiamate di sistema
Architettura
13
Chiamate di sistema
UNIX
Win32
Descrizione
fork
waitpid
execve
exit
open
close
read
write
lseek
stat
mkdir
rmdir
link
unlink
mount
umount
chdir
chmod
kill
time
CreateProcess
WaitForSingleObject
[nessuna]
ExitProcess
CreateFile
CloseHandle
ReadFile
WriteFile
SetFilePointer
GetFileAttributesEx
CreateDirectory
RemoveDirectory
CreateSymbiolicLink
Deletefile
[nessuna]
[nessuna]
SetCurrentDirectory
SetFileAttributes
TerminateProcess
GetLocalTime
Architettura
14
Programmi di sistema
I programmi di sistema offrono un ambiente per lo
sviluppo e lesecuzione dei programmi. Possono
essere classificati in programmi per:
Gestione dei file
Informazioni di stato
Modifica dei file
Ambienti di sviluppo
Caricamento ed esecuzione dei programmi
Comunicazioni
Programmi applicativi
Dal punto di vista dellutente la maggior parte delle
operazioni vista come esecuzione di programmi, non
chiamate di sistema
Architettura
15
Sistemi monolitici
Sistemi multilivello
Modello client-server
Macchine virtuali
Architettura
16
Sistemi monolitici
Architettura
17
Sistemi monolitici
Programma utente 2
Programma utente 1
2)
3)
4)
4
1
2
Procedura di
servizio
Tabella di dispatch
Architettura
18
Struttura di MS-DOS
Programmi applicativi
Architettura
19
Architettura
20
Protezione dellI/O
Interrupt/fault
monitor
user
set user mode
Architettura
21
Struttura di UNIX
Utenti
Interprete dei comandi e comandi
Compilatori e interpreti
Librerie di sistema
Chiamate di sistema
Segnali
Gestione dei terminali
File system
Sistema di I/O a blocchi
Controllore di dispositivi
Dischi e nastri
Architettura
Controllore di memoria
Memoria fisica
22
Procedura
principale
Procedura di
servizio
Procedura di
utilit
Sistemi Operativi 2015/16
Architettura
23
Sistemi multilivello
Architettura
24
THE
Strato
Funzionalit
Operatore
Programmi Utente
Gestione I/O
Comunicazione processo-console
Architettura
25
Struttura a microkernel
Svantaggi:
Vi un overhead dovuto alle comunicazioni fra spazio utente e
kernel
Architettura
26
Messaggi
Architettura
27
Modello client-server
Processo Server
Gestisce le richieste del client
Architettura
28
Modello client-server
Modalit
utente
Processo Processo Processo
cliente cliente server
...
nucleo
Modalit
nucleo
Architettura
Il cliente ottiene un
servizio inviando
messaggi ai processi
server
29
Architettura
30
Macchina 2
File server
Nucleo
Macchina 3
Processo server
Nucleo
Macchina 4
Terminal server
Nucleo
Messaggio dal
cliente al server
Architettura
31
Moduli
Architettura
32
Macchine virtuali
Istruzione
di I/O
4
CSM
4
CSM
4
CSM
Chiamata di
sistema
VM370
Hardware del 370
Architettura
33
Macchine virtuali
Vantaggi:
Ogni parte pi semplice, pi flessibile e pi facile da mantenere
Una macchina virtuale permette una completa protezione delle
risorse di sistema
Rende facile lo sviluppo di un sistema operativo (le normali
operazioni non vengono bloccate)
Svantaggi:
Lisolamento delle macchine virtuali rende complessa la
condivisione di risorse
Architettura
34
Modalit 8086
Architettura
35
Hypervisor di tipo 1
Hypervisor di tipo 1
Hardware
Architettura
36
Hypervisor di tipo 2
Applicazione Applicazione Applicazione Applicazione
S.O. guest
(FreeBSD)
Hypervisor di tipo 2
Sistema operativo residente (host)
Hardware
Sistemi Operativi 2015/16
Architettura
37
Host
VM
Rete
VM
NAT / DHCP
virtuale
VM
Architettura
38
Architettura
39
Tipi di virtualizzazione
Emulazione
Permette lesecuzione di un SO su una CPU completamente
differente
Poco efficiente
Virtualizzazione piena
Esegue copie di SO completi
Paravirtualizzazione
Il sistema operativo ospitato deve essere modificato
Architettura
40
Binary rewriting
Istruzioni
privilegiate
Architettura
6
Salti
41
Paravirtualizzazione
Architettura
42
File .class
Un interprete
caricatore delle
classi
verificatore delle
classi
interprete
calcolatore
Architettura
43
La piattaforma Java
prog.java
Public class ...
Compilatore
Compilatore
Indipenden
te dalla
piattaforma
prog.class
(bytecode)
JVM
JVM
per
perW2K
W2K
JVM
JVM
per
perLinux
Linux
JVM
JVM
per
Java
per Javachip
chip
Dipendente
dalla
piattaforma
Architettura
44
Prog1.java
Prog2.java
Compilatore
Compilatore
Rete
Prog1.class
Prog2.class
class
classloader
loader
Java
API
.class
files
Interprete
Interprete
Architettura
45