I Sistemi Operativi - Università degli Studi di Foggia

Dipartimento di Giurisprudenza
Prof. Michele Perilli
Conoscenze Informatiche
[email protected]
[email protected]
Sistema Operativo: funzionalità
• Gestire le risorse della macchina (CPU,
memoria, dispositivi di I/O, file)
• Dialogare con l’utente (o gli utenti)
• Rendere disponibili agli utenti i
traduttori e consentire l’uso dei
programmi applicativi
• Controllare l’uso del sistema (da parte
degli utenti) a fini amministrativi
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
2
Gestione delle risorse
• S.O. mono e multiutente
– Protezione delle informazioni
• Multiprogrammazione o multitasking
– più attività possono (o debbono)
essere svolte “contemporaneamente”
– programmi e processi
– competizione per le risorse
– parallelismo e concorrenza
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
3
Dialogo con l’utente (1)
• Interazione basata su comandi testuali
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
4
Dialogo con l’utente (2)
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
5
Dialogo con l’utente (3)
• Interazione mediante interfaccia grafica
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
6
Dialogo con l’utente (4)
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
7
Sistema operativo: architettura
• Modello cosiddetto “a buccia di cipolla” (o
semplicemente a strati)
• Ogni strato realizza una “macchina virtuale”
– Usa le funzionalità della macchina
sottostante
– Fornisce servizi alla macchina che segue
nella gerarchia
– Gestisce delle risorse mediante politiche
invisibili ai livelli superiori
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
8
Il modello a strati
Hardware
Gestione CPU (nucleo)
Gestione Memoria
Gestione I/O
Gestione file (file system)
Interprete dei comandi
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
9
Comandi di I/O
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
10
Tecnica di spool
Problema: cosa succede se più processi (o più utenti) mandano
“contemporaneamente” in stampa documenti sulla stessa
stampante?
Computer 1
Processo1
Processo2
Computer 2
Processo3
Come evitare che I dati escano nello stesso ordine in cui
vengono eseguiti i comandi di uscita?
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
11
Spool di stampa
Processo1
Processo2
Processo3
Processo
di spool
Driver
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
12
File (management) system
• Creazione e cancellazione dei file
• Modifica e aggiornamento
• Protezione dei file e modalità di accesso
• Copia, spostamento, creazione di
collegamenti, etc.
• Gestione della memoria di massa
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
13
Organizzazione dei dati sulle
memorie di massa
• Ogni “entità referenziabile ” su disco è un file
– un programma
– un insieme di dati utilizzati da un programma
– una base di dati (o un archivio)
– un grafico
• I file sono identificati da un nome (filename)
– nome
Esempi: tesi.doc, sort.pas, sort.exe
– estensione
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
14
Ancora sui file
• Regole per i nomi
– lunghezza massima
– “case sensitive” o “insensitive”
– caratteri speciali
• Informazioni ausiliarie
– lunghezza file
– data creazione e modifica
– diritti di accesso
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
15
Organizzazione logica di un file
system (1)
• Struttura ad albero (file system gerarchici)
Radice dell’albero
Nodo interno
Foglia
• Ai nodi e alle foglie possono essere associate
informazioni
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
16
Organizzazione logica di un file
system (2)
• Struttura ad albero:
– la radice è un’unità disco (o una partizione
di unità)
– i nodi interni sono cartelle (directory)
– le foglie sono file
• Una cartella può contenere file e/o altre
cartelle → percorso di identificazione di
un file (pathname):
C:\Gallo\Didattica\Informatica\testo.doc
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
17
Organizzazione logica di un F.S. (3)
C:
Windows
Programmi
Esempio
Gallo
Didattica
Ricerca
Personale
InfGen
Tesi
base.ppt
hardware.ppt
software.ppt
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
18
Strumenti grafici di esplorazione
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
19
Ancora sui file system gerarchici
• Unità o volume e directory radice
(root)=\
• Directory corrente (o di lavoro) = .
• Pathname:
\Gallo\Didattica\informatica.ppt (assoluto)
Didattica\datiealg.ppt (relativo)
• Directory “padre” = ..
• Formattazione di un’unità
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
20
Il Sistema Operativo Unix
• Unix vs. MultiCS
• Sistema multiutente e “multitasking”
• Interazione con l’utente tramite
comandi testuali → l’interprete dei
comandi è detto SHELL
• File di comandi (script)
• File System gerarchico
• Directory root(/) e corrente (o di
lavoro .)
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
21
Il Sistema Operativo Unix
Cenni storici
• Alla fine degli anni ‘60, un gruppo di ricercatori dei “Bell
Laboratories” (Ken Thompson, Denis Ritchie ed altri
collaboratori) a seguito del fallimento del progetto
MULTICS per un sistema operativo fra piu` costruttori,
proposero di recuperare il know-how, ridimensionando il
progetto e la denominazione in UNIX.
• Obiettivi principali di UNIX erano:
• il supporto alle attivita` di sviluppo software (i
sistemi operativi all’epoca erano orientati all’utilizzo
dell’elaboratore);
• l’indipendenza dall’hardware.
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
22
Il Sistema Operativo Unix
• UNIX fu scritto in versioni successive su elaboratori
Digital della serie PDP, dapprima in assembler e poi in
linguaggio C, progettato appositamente per rendere
UNIX indipendente dall’elaboratore C e` la terza
versione del linguaggio, successiva ad A e B).
• Negli anni ‘70 UNIX era utilizzato all’interno della AT&T
(proprietaria della Bell Laboratories) ma non poteva
essere commercializzato per vincoli legali, che
impedivano ad AT&T di entrare nel campo
dell’informatica.
• UNIX fu diffuso gratuitamente, completo di codice
sorgente, in molte università, le quali portarono vari
contributi e realizzarono una serie di “dialetti”.
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
23
Il Sistema Operativo Unix
Una particolare implementazione di Unix è Linux,
scritta dallo studente (all’epoca ventenne) finlandese
Linus Torvalds e successivamente resa
gratuitamente (open-source) disponibile per chiunque
su Internet.
Oggi Linux è lo Unix più diffuso al mondo, ed è presente
in innumerevoli “dialetti” (o distribuzioni), tra cui:
Debian, RedHat, Suse, Mandrake, Linspire, …
Una particolare versione di Unix, derivata dalla versione
universitaria BSD (Berkeley) è Darwin, su cui è
basato il sistema operativo Mac OS X di Apple.
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
24
Il pannello di controllo (2)
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
25
Personalizzazione della scrivania
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
26
Barra delle applicazioni (1)
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
27
Barra delle applicazioni (2)
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
28
Esplorazione del file system
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
29
Menu di scelta rapida
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
30
Proprietà di file e cartelle
Prof. Michele Perilli - I Sistemi Operativi - [email protected]
31