CdL in Ingegneria Elettronica e delle Telecomunicazioni
CdLM in Telecomunicazioni
Fondamenti dei S.O. (6CFU)
Capitolo 0 : Introduzione al corso
Giacomo PISCITELLI
Qual è la funzione di un sistema operativo?
Un sistema di calcolo: vista astratta e componenti.
Che cosa è, cosa fa e come è fatto un sistema operativo.
I pre-requisiti per la frequentazione del corso.
Il materiale didattico.
Il programma del corso.
Il rapporto con gli studenti.
Gli esami.
Alcuni utili consigli per il corso.
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
2
IL SISTEMA OPERATIVO
... è l’insieme dei programmi che agisce come intermediario tra un
utente (o un programma) del computer e l’hardware
INTERFACE
KERNEL
Hardware
Il sistema operativo consente, in generale, l’utilizzo di un calcolatore monoprocessore da parte di più utenti «contemporaneamente».
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
3
IL SISTEMA OPERATIVO
… il suo scopo è quello di
rendere agevole l’uso dell’hardware, mascherando le
caratteristiche delle risorse fisiche (interfaccia)
gestire e allocare le risorse fisiche ottimizzandone l’uso con
opportune politiche, controllare l’esecuzione dei programmi e
condividere correttamente (nel tempo e nello spazio) le
operazioni sulle risorse del sistema. (nucleo o kernel)
Eseguire i programmi degli utenti
INTERFACE
KERNEL
Hardware
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
4
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
5
Hardware – fornisce le risorse computazionali di base:
(CPU, memoria, dispositivi di I/O).
Sistema operativo – controlla e coordina l’uso
dell’hardware da parte dei programmi e dei diversi utenti
Altri programmi di sistema (cioè indipendenti
dall’applicazione, come compilatori, editor, etc., forniti
con il sistema operativo)
Programmi applicativi — definiscono il modo in cui le
risorse del sistema sono usate per risolvere i problemi
computazionali dell’utente (database, videogiochi,
programmi di produttività personale,. . .)
Utenti (persone, macchine, altri calcolatori)
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
6
A partire dagli anni ’50, si sono succeduti centinaia di SO,
ciascuno dei quali con caratteristiche, funzioni ed obiettivi diversi:
per rendere più conveniente l’uso del calcolatore, per renderne
più efficiente il funzionamento, per rendere più facile il suo uso,
per rendere possibile lo sviluppo di applicazioni in tempo reale
stretto (hard real-time), ……
Inizialmente …..
… per comprendere che cosa è un SO, ne esamineremo in
breve l’evoluzione negli anni;
… per sapere che cosa fa un SO, ne illustreremo le
principali funzioni in rapporto a quelle del processore
in cui opera;
… per conoscere come è fatto un SO, ne studieremo
l’architettura.
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
7
Conoscere i componenti di un processore (CPU, Memoria
centrale, Bus, Controllori, Dispositivi), la struttura interna di
ciascuno di essi, il loro modo di funzionare e la modalità di
esecuzione di un programma.
Saper descrivere un algoritmo con un linguaggio strutturato o
grafico (flow-chart).
Saper tradurre un algoritmo descritto nella forma anzidetta in un
linguaggio di programmazione (preferibilmente il linguaggio C)
Conoscere l’organizzazione e l’uso dei dati sui supporti di
memorizzazione secondaria
Conoscere le principali strutture di dati e le relative modalità di
memorizzazione e manipolazione
Essere familiare con l’uso di Internet.
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
8
• Il libro di testo consigliato
Operating System Concepts
A. Silberschatz, P.B. Galvin, G. Gagne
9th Edition International Student Version, WILEY, March 2013, ©2013
Edizione in italiano
Sistemi operativi: Concetti ed esempi
oppure
Sistemi operativi con esempi . . . .
dalla 6° edizione in poi, APOGEO education
•
•
•
•
•
Articoli tratti da riviste (*)
Appunti e letture consigliate (*)
Copia dei lucidi (*)
Esercizi svolti (*)
Tracce degli esercizi assegnati alle precedenti prove scritte (*)
(*) cfr. lo “scaffale” del docente sul sito www-ictserv.poliba.it/piscitelli/scaffale.htm
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
9
• Lezioni teoriche: Struttura di un sistema di calcolo e
architettura/funzionamento di un sistema operativo:
evoluzione, interfaccia, modelli del nucleo: 6 ore;
Attività computazionali (job, job-step, task) e stati di
un’attività computazionale: 2 ore; Nucleo e
componenti del nucleo: 8 ore; Politiche di gestione
delle risorse: 8 ore; Gestione dei processi:
concorrenza, cooperazione, blocco critico,
comunicazione: 8 ore; cenni di protezione e sicurezza
informatica o di sistemi in tempo reale: 4 ore.
• Esercitazioni: relative alle caratteristiche dei S.O.
WINDOWS, LINUX e ANDROID: 6 ore
• Laboratorio: Installazione ed uso sul proprio sistema di
calcolo di una distribuzione di LINUX: 8 ore
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
10
• Il rapporto con gli studenti viene incoraggiato attraverso il
dialogo diretto durante le ore di lezione e quelle di
ricevimento, ma anche, per i più “ritrosi”, attraverso la
posta elettronica.
• L’informazione su date e orari del ricevimento, nonché sugli
esami (date, orari, aule, ecc.) è reperibile nella “bacheca”
virtuale del sito
www-ictserv.poliba.it/piscitelli/bacheca.htm
• Notizie dell’ultima ora (rinvii degli esami, cambi di orari ed
aule) sono fornite nelle “warm news” del sito
www-ictserv.poliba.it/piscitelli/news.htm
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
11
L’esame consiste in una prova scritta e, ove richiesta, in
una prova orale, relativa ai contenuti del programma
ufficiale dell'anno accademico corrente.
Non sono previste prove intermedie o di “esonero”.
Gli appelli d’esame sono dislocati, di norma, in 5 sessioni:
al termine del 1° semestre (2 appelli), al termine del 2°
semestre (2 appelli), dopo la pausa estiva (2 appelli) e
nelle pause di maggio e novembre.
Gli studenti che, in una prova scritta di una sessione
d’esame, riportano una votazione inferiore a 8/30,
sono invitati a presentarsi alla sessione successiva.
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
12
• Seguire le lezioni!
Ascoltarla in diretta e non in differita (diffidate delle
registrazioni)
• Studiare sul libro e mai solo e soltanto sulle slide!
• Domandarsi sempre quali sono i vantaggi e gli
svantaggi delle soluzioni proposte
• Non aver paura di:
Fare la domanda sbagliata in aula
Dare la risposta sbagliata in aula
• Proporre alternative!
• Studiare in gruppo (due o tre)
Fondamenti dei SO:
0. Presentazione del corso
G. Piscitelli
13