LEZIONI
SUI
SISTEMI OPERATIVI
Ing. Ciro Riccio
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
1
Il sistema
operativo
è l’interfaccia
uomo-macchina.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
2
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
3
E’ il programma responsabile
del diretto controllo e gestione:
1) dell’ hardware
2) delle operazioni di base
3) dei processi che vengono
eseguiti
4) degli accessi degli utenti.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
4
COMPONENTI DI UN SO
1) un gestore di file system che si
occupa di esaudire le richieste di
accesso alle memorie di massa,
2)un gestore di memoria virtuale che
alloca pagine di memoria a richiesta
e si assicura che questa sia presente
nella memoria fisica al momento
giusto
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
5
COMPONENTI DI UN SO
3) uno scheduler che assicura ai
vari processi in esecuzione una ben
definita quantità di tempo di
elaborazione,
4) uno spooler che accumula i dati
da stampare e li stampa in
successione,
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
6
COMPONENTI DI UN SO
5)una interfaccia utente (shell o
GUI) che permette agli esseri umani
di interagire con la macchina;
6) un kernel, fulcro del sistema, che
gestisce il tutto.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
7
Kernel
Il kernel è il cuore di un sistema
operativo. Si tratta di un software che ha
il compito di fornire ai moduli che
compongono il sistema operativo e ai
programmi in esecuzione sul computer le
funzioni fondamentali ed un accesso
controllato all'hardware, sollevandoli dai
dettagli della sua gestione.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
8
File system
Il file system è il modo in cui i file
sono immagazzinati e organizzati su
un dispositivo di archiviazione,
come un hard disk o un CD-ROM.
Esistono molti tipi di file system,
creati per diversi sistemi operativi,
per diverse unità di memorizzazione
e per diversi usi
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
9
Scheduler
Lo scheduler è il componente
fondamentale dei sistemi operativi
multitasking, cioè quelli in grado di
eseguire più processi (task)
contemporaneamente.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
10
Lo scheduler si occupa di fare avanzare
un processo interrompendone
temporaneamente un altro, realizzando
così un cambiamento di contesto
(context switch). Generalmente
computer con un processore sono in
grado di eseguire un programma per
volta, quindi per poter far convivere più
task è necessario usare lo scheduler.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
11
Gestore di memoria
Il gestore di memoria è la
componente del sistema operativo
che si occupa di gestire ed
assegnare la memoria ai processi
che ne fanno richiesta.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
12
La gestione della memoria è
necessaria per tenere traccia di
quanta memoria è impegnata e di
quanta invece è disponibile per
soddisfare nuove richieste: in
mancanza di un sistema di gestione,
si avrebbe prima o poi il caso di
processi che ne sovrascrivono altri,
con gli ovvi inconvenienti.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
13
Interfaccia utente
Si tratta di un programma che
permette all'utente di interagire con
il computer. Esistono
sostanzialmente due famiglie di
interfacce utente: interfaccia a linea
di comando e interfacce grafiche
(GUI).
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
14
Spooler di stampa
Lo spooler di stampa è stato
storicamente il primo modulo
esterno del sistema operativo ad
essere implementato, per risolvere il
problema della gestione delle stampe
su carta.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
15
Infatti, essendo le stampanti
elettromeccaniche dei dispositivi
molto lenti, i primi programmi per
elaboratore dovevano
necessariamente sprecare molto
tempo di CPU, estremamente
prezioso all'epoca, per controllare la
stampante ed inviarle i dati.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
16
Quindi venne ideato un programma
separato, che girava con una priorità
molto bassa e che era visto dagli altri
programmi come una normale
stampante: in realtà invece lo spooler
accumulava i dati che un programma
doveva stampare in una apposita
area di memoria, e poi si faceva
carico del processo di stampa
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
17
Gestire le periferiche:
un processo che ha bisogno di
accedere ad una periferica
manda un interrupt (interrupt
software) e si mette in attesa,
la CPU passa il controllo al
kernel, che provvede all'I/O
per conto del processo, poi fa
ripartire il processo, o un altro
se lo scheduling lo prevede.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
18
Analogamente una periferica
che ha finito il suo lavoro ed
ha bisogno della CPU ad
esempio deve comunicare che
l'utente ha battuto un tasto,
manda un interrupt (interrupt
hardware) alla CPU, la CPU
interrompe il processo in
corso e passa il controllo al
sistema operativo, che tratta i
dati letti dalla periferica e fa
quanto necessario.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
19
Sistema multiutente
Se un computer può far girare
più programmi
contemporaneamente, allora
può anche accettare comandi
da più utenti
contemporaneamente…….
Problema………………….
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
20
ma fa sorgere una serie di
nuovi problemi dal punto di
vista della sicurezza del
sistema: come distinguere i
vari utenti tra loro, come
accertarsi che nessun utente
possa causare danni agli altri
o alla macchina che sta
usando ecc.
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
21
i diversi sistemi
operativi, sono progettati
in modo che questo tipo
di operazioni avvengano
nel più breve tempo
possibile e senza
“conflitti”
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
22
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
23
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
24
Cos’è un sistema operativo ?
Applicazioni
Software
Sistema Operativo
Hardware
Windows
Unix/Linux
Mac OS
ING CIRO RICCIO
È il livello di SW con cui
interagisce l’utente
e comprende
programmi quali :
Compilatori
Editori di testi
Fogli elettronici
Sistemi bancari
Navigatori per Web
…..
gcc, Word, PowerPoint
Excel, Explorer
Fotoshop, Gimp
È il livello di SW che interagisce direttamente
con l’hw e che si occupa di una uso corretto
ed efficiente delle risorse fisiche (processore, memorie,
periferiche etc.)
Lezioni sui SISTEMI OPERATIVI
25
Quali sono le funzioni di un SO ?
• Esegue applicazioni :
– carica il programma binario prodotto della
compilazione (e residente su disco) nella RAM,
– cede il processore all’applicazione da eseguire
• Facilita l’accesso ai dispositivi di I/O
– interagisce con le periferiche facendosi carico di tutti
i dettagli fisici (es. modem, reti, video…)
– mette a disposizione operazioni di lettura/scrittura ad
alto livello che possono essere usate senza conoscere
i dettagli tecnici della periferica
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
26
Quali sono le funzioni di un SO ? (2)
• Archivia dati e programmi :
– mette a disposizione dell’utente una visione
astratta della memoria secondaria (il file system
basato sulle astrazioni : file/archivi e
folder/cartelle)
– gestisce la realizzazione di queste astrazioni sul
supporto fisico (disco) gestendo tutti i dettagli
legati alla lettura/scrittura dei settori
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
27
Quali sono le funzioni di un SO ? (3)
• Gestisce le risorse
– ripartisce le risorse disponibili fra le varie
applicazioni (processore, RAM, periferiche)
– evita che ci siano malfunzionamenti dovuti
all’uso contemporaneo di risorse
• es: un word processor e un web browser che inviano
contemporaneamente dati alla stampante provocano
una stampa erronea
– ottimizza le prestazioni scegliendo delle
politiche che permettano di sfruttare al meglio
tutte le parti del computer
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
28
Quali sono le funzioni di un SO ? (4)
• Gestisce malfunzionamenti del sistema
– rileva e gestisce situazioni anomale
• es: se il disco ha un settore difettoso, il SO può
trasportare automaticamente le informazioni
residenti su quel settore da un’altra parte
• es: se un’applicazione cerca di effettuare una
operazione non permessa (come leggere i dati di
un’altra applicazione) può bloccare l’applicazione
segnalando all’utente la situazione erronea
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
29
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
30
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
31
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
32
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
33
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
34
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
35
Quali sono le parti di un SO ?
Applicazioni
Gestore del
processore
Interprete di comandi
(shell)
Gestore della
memoria
Gestore delle
periferiche
Interfaccia grafica
(desktop)
File system
Hw
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
36
Stato utente e stato supervisore
• Stato utente :
– modalità di funzionamento del computer che
permette l’accesso solo a un numero limitato di
risorse
• es : un sottoinsieme delle istruzioni assembler (non
si può accedere alle istruzioni che istruiscono le
interfacce di I/O), una sola parte della RAM etc.
• Stato supervisore :
– modalità che permette l’accesso a tutte le
risorse
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
37
Stato utente e stato supervisore (2)
Eseguiti
in stato
utente
Applicazioni
Gestore del
processore
Interprete di comandi
(shell)
Gestore della
memoria
Gestore delle
periferiche
Interfaccia grafica
(desktop)
File system
Hw
ING CIRO RICCIO
Eseguiti
in stato
supervisore
Lezioni sui SISTEMI OPERATIVI
38
Stato utente e stato supervisore (3)
• I programmi che girano in stato utente richiedono
servizi al SO tramite invocazione di
sottoprogrammi speciali
– system call o chiamate di sistema
• Il sistema operativo decide come e quando
effettuare il servizio
• Il sistema operativo può interrompere un
programma che gira in stato utente per eseguire
altri programmi o per effettuare operazioni di
‘gestione’ della macchina
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
39
Gestione del processore
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
40
Esecuzione di un programma
Data Flow
Passo 1 :
scrivere e compilare
il programma
Codifica in un linguaggio di
programmazione (C, Java etc)
Programma
Input : programma
Compilatore
Eseguibile
Output : rappresentazione comprensibile alla macchina
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
41
Esecuzione di un programma (2)
• Come è organizzata la rappresentazione binaria eseguibile
del programma (spazio di indirizzamento):
232 - 1
Stack/pila
Struttura che
permette di realizzare
correttamente il meccanismo
di chiamata a sottoprogrammi
È un array di
parole !
Codifica
binaria dei dati
dati
testo
0
ING CIRO RICCIO
Codifica binaria delle
istruzioni assembler in cui
il programma è stato tradotto
Lezioni sui SISTEMI OPERATIVI
42
Esecuzione di un programma (3)
• Passo 2 :
– ricopiare lo spazio di indirizzamento di un
programma da memoria secondaria a RAM
AmpiezzaRAM - 1
Spazio programma 3
Spazio programma 2
Una possibile
organizzazione della RAM
con più programmi attivi
contemporaneamente
Spazio programma 1
Sistema Operativo
ING CIRO RICCIO
0
Area riservata, non accessibile
in modalità utente
Lezioni sui SISTEMI OPERATIVI
43
Esecuzione di un programma (4)
• Passo 3 :
– modificare il PC del processore in modo che contenga
correttamente l’indirizzo della prima istruzione assembler da
eseguire nel nostro programma
AmpiezzaRAM - 1
Spazio programma 3
Spazio programma 2
440
Spazio programma 1
È l’indirizzo da
scrivere nel PC
Prima istruzione
da eseguire nel
programma 2
Sistema Operativo
0
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
44
Esecuzione di un programma (5)
• Quando un programma utente è stato attivato il
processore esegue una dopo l’altra le istruzioni
assembler che lo compongono
• Un programma in esecuzione viene detto
‘processo’
• Problema : Come fa il Sistema Operativo a
riprendere il controllo del processore dopo
l’attivazione di un processo?
– Terminazione (normale o erronea)
–
Interruzione
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
45
Terminazione di un processo
• Un processo termina :
– Quando esegue una istruzione assembler di
terminazione
– Quando effettua una operazione illecita (es. cerca di
accedere a memoria privata di altri processi)
– Quando c’è un errore che non lo permette di proseguire
(es. overflow, etc)
• In tutti questi casi il processore ricomincia
automaticamente ad eseguire il sistema operativo
ad un indirizzo prefissato
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
46
Interruzione di un processo
• Il sistema operativo può bloccare un
processo in un qualsiasi istante della sua
esecuzione per effettuare qualche
operazione di gestione della macchina
• Questo avviene attraverso il meccanismo
hardware delle interruzioni
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
47
Interruzione di un programma (2)
• Come funzionano le interruzioni
– ogni periferica può ‘richiedere attenzione’ inviando
un segnale di interruzione usando le linee di
controllo del bus
– alla fine dell’esecuzione di ogni istruzione assembler
il processore controlla la presenza di una interruzione
– se è presente il controllo passa automaticamente al
sistema operativo
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
48
Il gestore del processore
• Nei computer attuali, tutti i programmi che
compongono il SO ed i programmi applicativi
‘avviati’ sono attivi contemporaneamente sul
calcolatore (multiprogrammazione)
– es : Windows 2000 + Word + cd player ...
• Il gestore del processore si preoccupa di far
condividere il processore a tutti i programmi attivi
in modo corretto
– lo scopo è dare l’impressione che ognuno abbia il suo
processore dedicato
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
49
Il gestore del processore (2)
• Si usa la tecnica dei quanti di tempo
– es: 3 programmi attivi Prog1, Prog2, Prog3
– vengono mandati in esecuzione ciclicamente
Eseguo Prog1
Quanto
20-100 ms
Eseguo Prog2
Eseguo Prog3
Eseguo Prog1
Interruzione : il SO
riprende il controllo e decide chi
eseguire nel quanto successivo
Periferica ‘orologio interno’
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
50
Gestione della memoria
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
51
Il gestore della memoria
• Tutti i programmi che compongono il SO ed i
programmi applicativi attivi usano
contemporaneamente la RAM
• Il gestore della memoria si preoccupa di fare
condividere la RAM ai vari processi in esecuzione
in modo che :
– ogni processo abbia il suo spazio privato distinto dagli
altri (e inaccessibile agli altri)
– ogni processo abbia abbastanza memoria per eseguire il
proprio algoritmo e raccogliere i suoi dati
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
52
Il gestore della memoria (2)
• La gestione statica
– ricopiare interamente lo spazio di indirizzamento di un
programma da memoria secondaria a RAM all’inizio
dell’esecuzione
– abbiamo già visto un esempio :
AmpiezzaRAM - 1
RAM vuota
Spazio programma 2
Una possibile
organizzazione della RAM
con più programmi attivi
contemporaneamente
0
ING CIRO RICCIO
Spazio programma 1
Sistema Operativo
Area riservata, non accessibile
in modalità utente
Lezioni sui SISTEMI OPERATIVI
53
Il gestore della memoria (3)
• Problemi della gestione statica
– non posso girare programmi con spazio di
indirizzamento grande della RAM !
• Attualmente ogni programma usa almeno 4GB di
spazio di indirizzamento, con RAM assai più
piccole…
• Soluzione : gestione dinamica (a pagine)
– ad ogni istante carico in RAM solo i pezzi che
mi servono per l’esecuzione corrente
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
54
Il gestore della memoria (4)
• Paginazione
– lo spazio di indirizzamento di ogni processo è
diviso in ‘fette’ (pagine) tutte della stassa
0
ampiezza
1
0
1
2
3
4
..
2
3
4
..
Pagina : ‘fetta’ dello spazio
di indirizzamento (1-4K)
Programma 2
0
1
2
3
4
..
Programma 1
Programma 3
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
55
Il gestore della memoria (5)
• Paginazione
– ad ogni istante solo le pagine necessarie sono caricate in
0
memoria (località!)
1
0
1
2
3
4
..
2
3
4
..
RAM vuota
Programma 1
RAM vuota
Programma 2
0
1
2
3
4
..
Programma 3
Sistema Operativo
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
56
Gestione delle periferiche
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
57
Driver e controller
Ogni periferica è gestita da due entità cooperanti :
• il controller :
un dispositivo hardware che colloquia direttamente
con la parte elettrico/meccanica della periferica
• il driver :
un programma software che fa parte del sistema
operativo e che conosce le caratteristiche della
periferica ed è capace di colloquiare con il controller
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
58
Driver e controller (2)
• Solitamente il driver non è sviluppato da chi
costruisce il SO (es. Microsoft) ma da chi
costruisce il dispositivo
• Quando viene acquistata una nuova periferica il
driver corrispondente deve essere inserito nel
Sistema Operativo (installazione)
– operazione rischiosa, perché se il nuovo driver è
difettoso può rovinare il vostro sistema (il driver
essendo nel SO ha accesso a tutta la macchina senza
restrizioni!….)
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
59
Driver e controller (3)
• Quando si installa un nuovo driver bisogna
fornirgli delle informazioni a basso livello per
permettergli di colloquiare correttamente con il
resto del sistema (configurazione)
– es: stabilire quali linee del bus utilizzare per inviare
una interruzione ...
• Periferiche plug&play : quelle per cui la
configurazione può essere fatta
automaticamente dal sistema
– sono generalmente tutte così nei PC odierni
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
60
Il File system
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
61
File System
• È la parte del SO che
– permette di memorizzare dati e programmi in
modo persistente
– permette di organizzare dati e programmi in
modo da renderne agevole la localizzazione da
parte dell’utente umano
– può essere modificata per cancellare dati
obsoleti, aggiornare l’organizzazione etc ..
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
62
File System (2)
• Le astrazioni fornite sono :
– il file (o archivio) : una sequenza di byte che
contiene dati o programmi rappresentati con
una opportuna codifica binaria
– il folder/directory (o cartella) : astrazione che
permette di collezionare insieme più file e/o
folder
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
63
File System (3)
• Esempio : una possibile organizzazione dei
file relativi ai diversi corsi che insegno
Folder : corsi
Folder : inf_gen
File:
lucidi
lez1
ING CIRO RICCIO
File:
lucidi
lez2
File:
compiti
e voti
Folder : sis_op
Lezioni sui SISTEMI OPERATIVI
64
File System (4)
• La struttura è gerarchica (ad albero)
Folder : corsi
Contenuto del
folder ‘corsi’
Folder : inf_gen
File:
lucidi
lez1
ING CIRO RICCIO
File:
lucidi
lez2
Folder : sis_op
File:
compiti
e voti
Lezioni sui SISTEMI OPERATIVI
65
File System (5)
• La struttura è gerarchica (ad albero)
Folder : corsi
Contenuti dei
due folder
inf_gen e sis_op
Folder : inf_gen
File:
lucidi
lez1
ING CIRO RICCIO
File:
lucidi
lez2
Folder : sis_op
File:
compiti
e voti
Lezioni sui SISTEMI OPERATIVI
66
File
• Come si crea un file
– utilizzando una applicazione
• editori di testi per creare file di testo secondo diversi
formati (doc,html,text) es. Word
• applicazioni per gestire grandi quantitì di dati
persistenti (basi di dati) es. Access
• fogli elettronici es. Excel
– dando comandi diretti al SO
• es. chiedendo di duplicare un file esistente (taglia e
incolla …) via shell o interfaccia grafica
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
67
File (2)
• Nome di un file
– ogni file ha un nome (es lez1.doc, lez2.ppt etc)
– il nome deve essere unico nel folder che
contiene il file
– la parte dopo il punto (.) si chiama ‘estensione’
lez2.ppt
estensione
di solito l’estensione da informazione sul formato
del file e/o sull’applicazione utilizzata per
crearlo
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
68
File (3)
• Nome di un file (cont.)
– alcuni SO (come Windows) non mostrano
normalmente l’estensione
• lez1.doc viene mostrato come ‘lez1’
– tuttavia l’estensione è presente e serve al
sistema per capire che tipo di file è e quale
applicazione attivare quando desideriamo
‘leggerlo’
• es. un doppio click su un file lez1 attiva
automaticamente Word per visualizzarlo
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
69
Folder
• Anche i folder sono identificati
univocamente da nomi
– es inf_gen, corsi
– non usano estensioni
• contengono solo informazioni sui file/folder
contenuti (il formato di queste dipende dal dal file
system usato, e quindi dal SO)
• non dobbiamo discriminare fra codifiche diverse
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
70
Folder (2)
• Per creare un folder basta invocare una opportuna
funzione del SO
– es. scegliere una opportuna opzione (new folder,nuova
cartella) in un menu dell’interfaccia grafica
• Per cancellare file/folder basta invocare una
opportuna funzione del SO
– es. trascinarli con il mouse fino al cestino
• I file/folder possono essere spostati da un folder
all’altro
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
71
Sicurezza
• Come evitare che i nostri file siano letti da
altri utenti che hanno accesso al sistema?
– Assegnare ad ogni utente : Account (nome
unico identificativo) e password (segreta,
abbastanza complessa!)
– Ogni file appartiene ad un utente
– Il proprietario può specificare se un file può
essere letto o scritto anche da altri
– Il file system al momento dell’accesso controlla
che l’operazione sia effettivamente consentita
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
72
Sicurezza (2)
• Il superutente (root,administrator)
– E’ l’account dell’amministratore del sistema
– Può accedere in maniera non ristretta dappertutto
– I file del sistema operativo sono generalmente
dell’utente root e non sono accessibili da nessun altro
utente
– …… ovviamente il superutente è oggetto di numerosi
tentativi di violazione
• termini come attack, hacker si riferiscono a questo
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
73
Sicurezza (3)
• I vecchi sistemi Windows (3.1,95,98) non avevano alcun
meccanismo di protezione
– tutto gira in stato kernel
– da cui la facilità di danneggiare il sistema operativo o i file
utente (es. con virus)
– molto pericoloso in connessioni Internet non sporadiche
• Windows NT, 2000, XP sono protetti
– è necessario però creare utenti non privilegiati
• Sistemi Unix/Linux protetti fino dagli anni 70
ING CIRO RICCIO
Lezioni sui SISTEMI OPERATIVI
74