Complementi di Informatica - Dipartimento di Informatica

Complementi di Informatica
Sistemi Operativi
Definizione
Uno speciale insieme di programmi che gestisce
le risorse di un elaboratore (memorie
periferiche, programmi, dati ecc.) e tutte le
operazioni di input e output possibili con esse.
(dizionario Garzanti!!)
Licenze software





Open: programma il cui codice sorgente è disponibile
e libero.
Freeware: programma dispobile gratuitamente
Shareware: programma disponibile con obbligo
morale di contribuzione
Adware: programma gratuito che inoltra pubblicità
per ottenere un ritorno economico da essa.
Commerciale: programma a pagamento. Nota: molti
programmi commerciali somigliano a freeware, ma
non lo sono affatto.
Una gerarchia a ”blocchi”
L'organizzazione
funzionale dei moderni
calcolatori è immaginata
come una gerarchia di
strati. Allo strato più alto si
trova l'utente, allo strato più
basso l'hardware.
Il nostro studio si rvolge
all'interfaccia tra lo strato
SO e lo strato applicazione.
Tipi di sistemi operativi
Benché la classificazione per tipi sia labile possiamo
distigure:



Sistemi operativi realtime, multiuser, multitasking
(PC)
Sistemi operativi distribuiti (usato da Google)
Sistemi operativi embedded (recentementi affermatisi
negli smarphone)
Architettura del sistema operativo
Monolitco. Attualemnte
il migliore.
Rappresentante: Linux
Microkernel. Sistema
ideale attualmente in
fase di sviluppo
Ibrido. Variante
attualmente
implementata, con tutti
i pro e i contro.
Rappresentanti
Windows, MacOS.
Concetti sviluppati dai
Sistemi operativi
Processo
esecuzione di un programma
File
porzione di memoria (fissa o mobile) di un elaboratore
che contiene un insieme organizzato di informazioni
omogenee.
Funzioni dei sistemi operativi
Gestione dei processi.
Il S.O. è deputato alla gestione dei processi rispetto ai
privilegi di esecuzione che ne determinano
l'autorizzazione per l'accesso alle risorse.

Tempo di calcolo

Spazio di memoria

Periferiche

ecc
Funzione dei sistemi operativi
Gestione delle risorse
Il S.O. gestisce le risorse disponibili al fine di allocarle in
maniera corretta, efficiente ed equa.



Lo scheduler gestisce le frazioni di tempo in cui
eseguire i processi
Il gestore di memoria fornisce gli spazi di memoria
per eseguire i programmi
Il file system gestisce la memoria permanente che
contiene dati e programmi
Scheduler
Lo scheduler alloca il tempo di calcolo ai processi al fine
di realizzare un ambiente multiuser, multitaskin e
quando richiesto realtime.
Interrupt
Il meccanismo hardware con il quale si implementa lo
scheduling è l'interrupt.
L'interrupt è un segnale con il quale un processo passa
lo stato di esecuzione ad un'altro processo.
L'interrupt può anche essere generato dall'hardware per
sospendere l'esecuzione di un processo.
Un pericolo in agguato: lo stallo
La gestione delle risorse e il cambio e l'alternarsi dei
processi può portare a situazioni di stallo in cui i
processi si bloccano a vicenda nel tentativo di accedere
contemporaneamente a più risorse risorsa.
Gestore di Memoria
Il gestore di memoria
implementa le seguenti strategie

Riallocazione/virtualizzazione

Protezione

Condivisione

Organizzazione fisico/logica
Il file system
Il files sono organizzati attraverso un contenimento
gerarchico di directory.
Una directory è un indice di file contenuti in una o più
porzioni di memoria. Una directory è anch'essa un file.
Per uniformità logica anche le periferiche di sistema
(stampante, tastiera, mouse, ecc.) sono rappresentate
con file.
Sicurezza: Access Permission
La sicurezza del sistema è garantita dai peremessi di
accesso del filesystem.
Ogni file ha:

Un proprietario

Permessi utente

Permessi gruppo

Permessi a tutti
Bootstrap
L'avvio del sistema è la procedura che consente al
sistema di attivare tutte le sue funzionalità.
L'inizio di questa procedura dipende dall'hardware. Alla
fine della procedura tutti i servizi e i processi necessari
alla gestione del software dell'utente devono essere
attivati.
La sequenza (per i PC) è la seguente:

Verifica hardware

Salto alla prima istruzione del BIOS

Caricamento da parte del programma BIOS del S.O.
a cascata