Sistema Operativo
Definizione
E’ un insieme di programmi che gestiscono
l’hardware del computer
Fornisce una base per sviluppare
i programmi applicativi
Agisce da intermediario tra l’utente e
l’hardware del computer
Elaborazione dell’informazione
utente
utente
utente
………..
CompilatoreAssemblatore Editore Testi
utente
Gestione DB
Programmi di Sistema ed Applicativi
Sistema Operativo
Hardware
S.O.:Punto di Vista Utente
Personal Computer
Facilitare l’uso del Computer
Non preoccuparsi dell’utilizzo delle risorse
Prestazioni
Mainframe (più utenti)
Condivisione e Scambio Informazioni
Massimizzare utilizzo delle risorse (CPU, I/O, Memoria)
S.O.:Punto di Vista Utente
Workstation
Utilizzare risorse locali e condivise
Compromesso ottimale fra l’uso delle risorse
locali e quelle in rete
Palmari
Computer Embedded
S.O.:Punto di Vista del Computer
Distributore di Risorse spesso in conflitto
Programma di Controllo (Protezione)
Summary
Un computer è un risolutore di problemi
Il Sistema Operativo rende facile l’utilizzo dell’hardware
Programmi Applicativi
Programmi di Sistema
Kernel
Scopo del Sistema Operativo
Convenienza
Efficienza
STORIA
Sistemi a Batch: trasferire automaticamente il
controllo da un job al successivo
ed era sempre residente in memoria
Multiprogrammazione: Sistema batch con decisioni prese
dal S.O. job scheduling,
CPU scheduling)
Sistemi a Time-Sharing: Eseguire job contemporaneamente
favorendo l’interazione
utente-programma (multitasking)
Esistono più processi in memoria
(gestione e protezione della memoria,
filesystem, gestione CPU, SIncr. e
Comm. processi, deadlock)
STORIA
Sistemi Desktop
Sistemi a Multiprocessore: Condivisione bus e clock
Maggiore capacità elaborazione,
Economia di scala, aumento
affidabilità
Sistemi SMP e AMP
Sistemi Distribuiti: macchine indipendenti interconnesse
Sistemi Client-Server (calcolo, fileserver)
Sistemi Peer-to-Peer
STORIA
Sistemi Cluster: più computer accoppiati tra loro
(condiv. Memoria di massa, simmetrico,
asimmetr., SAN)
Sistemi Realtime: Hard Realtime , Soft Realtime
Sistemi Palmari
Migrazione delle Caratteristiche
Componenti del SISTEMA OPERATIVO
E’ un ambiente entro il quale vengono realizzati ed
eseguiti i programmi
PROGRAMMA
PROCESSO
E’ un entità passiva
E’ un entità attiva
PROCESSO
E’ l’unità di lavoro all’interno del Computer
• A singolo flusso di esecuzione (single Thread)
• A più flussi di esecuzione
(MultiThread)
Un processo può
generare altri
Processi
• Necessità di meccanismi per: Sincronizzazione,
Comunicazione, Gestione Deadlock
PROCESSO
Utilizza Risorse
Memoria
Files
Input/Output
Servizi del Sistema Operativo
S.O. è un Gestore di Servizi
• Interfaccia utente
• Esecuzione di un Programma
• Operazioni I/O
• Manipolare files
• Comunicazioni (memoria condivisa, messaggi)
• Rilevamento di Errori
• Allocazione Risorse
• Contabilità
• Protezione e Sicurezza
Componenti del SISTEMA OPERATIVO
E’ un ambiente entro il quale vengono realizzati i programmi
Strumenti per la realizzazione di programmi
(Programmi di Sistema)
Editor testi
Compilatori/Assemblatori
CHIAMATE di SISTEMA (SYSTEM CALLS, Win32 API, JAVA)
Controllo Processo, Gestione file, gestione
dispositivo, gestione delle informazioni,
comunicazione)
Struttura del SISTEMA OPERATIVO
Programma Applicativo
Programma di Sistema
Residente
MS-DOS
Driver I/O
In MS-DOS
Driver I/O in BIOS ROM
Struttura del SISTEMA OPERATIVO
UNIX
Utenti
Filesystem
I/O
Shell, Compilatori,comandi
Controllo
Gest.
Interfaccia system calls al kernel
Primit.
HW
Sincro
Memoria
Kernel
Interfaccia kernel verso l’hardware
Processi
Controllori Dispositivi
Struttura del SISTEMA OPERATIVO
MACH
MicroKernel
(Windows NT3.0
QNX, True64)
Progr. Applic.
E servizi
BSB
MACH
Struttura del SISTEMA OPERATIVO
Modulare
Unix,Linux,MacOSX
SOLARIS
FileSystem
Rete
Kernel
Driver I/O
Moduli Vari
Scarica

Lezione s.o. 1