Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n...

6
Introduzione ai Sistemi Operativi Quali sono gli obiettivi principali di un sistema operativo? Quali sono i vantaggi della multiprogrammazione ? Cos’è il ciclo fetch-decode-execute Come funziona l’esecuzione di programmi con time-sharing ? A cosa serve uno scheduler ? Quali sono le caratteristiche dei sistemi distribuiti ? Quali sono i principali requisiti dei sistemi operativi real-time ?

Transcript of Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n...

Page 1: Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n Quali sono i vantaggi della multiprogrammazione ? n.

Introduzione ai Sistemi Operativi

Quali sono gli obiettivi principali di un sistema operativo?

Quali sono i vantaggi della multiprogrammazione ?

Cos’è il ciclo fetch-decode-execute

Come funziona l’esecuzione di programmi con time-sharing ?

A cosa serve uno scheduler ?

Quali sono le caratteristiche dei sistemi distribuiti ?

Quali sono i principali requisiti dei sistemi operativi real-time ?

Page 2: Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n Quali sono i vantaggi della multiprogrammazione ? n.

Processi e Thread

Descrivere le variazioni di stato di un processo che effettua molte operazioni di I/O.

Cos’è il context switch.

Come sono gestiti i thread in Java.

Elencare le differenza principali tra i processi e i thread.

A cosa serve uno scheduler a medio termine e uno a lungo termine.

Page 3: Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n Quali sono i vantaggi della multiprogrammazione ? n.

Sicnronizzazione fra thread

Perché i thread possono avere problemi di sincronizzazione? Illustrare con un esempio.

Spiegare cosa sono i problemi di mutua esclusione, attesa limitata e progresso?

Come funziona l’algoritmo del fornaio?

Qual è la differenza nell’implementazione di un semaforo binario e di uno generalizzato?

Illustrare con un esempio il problema del deadlock e della starvation.

Page 4: Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n Quali sono i vantaggi della multiprogrammazione ? n.

Scheduling della CPU

Valutare i diversi algoritmi di scheduling sugli esempi usati per gli scheduling FCFS, SJF e RR.

Come dovrebbe essere un algoritmo di scheduling per processi di tipo I/O bound ?

Valutare l’effetto di quanti di tempo differenti sull’algoritmo RR.

Spiegare l’effetto della priorità dinamica sugli algoritmi di scheduling con priorità.

Page 5: Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n Quali sono i vantaggi della multiprogrammazione ? n.

Gestione della memoria

Descrivere quando accade di avere frammentazione interna e/o frammentazione esterna.

Discutere i pro e i contro del metodo worst-fit anche rispetto agli altri metodi.

Discutere le differenze principali tra paginazione e segmentazione.

Quali sono i benefici di usare la segmentazione paginata ?

Spiegare le operazioni da eseguire per la gestione di un page fault.

Discutere le differenze tra gli algoritmi di sostituzione FIFO e LRU.

Page 6: Introduzione ai Sistemi Operativi n Quali sono gli obiettivi principali di un sistema operativo? n Quali sono i vantaggi della multiprogrammazione ? n.

Esercizi

Calcolare il tempo di attesa medio usando l’algoritmo di scheduling FCFS, e SJF preemptive e non preemptive, considerando i seguenti processi (di seguito diamo tempo di arrivo e tempo di burst): P1 0 5, P2 1 4, P3 1 8, P4 0 4, P5 2 2.

Calcolare il numero di page fault per gli algoritmi FIFO e LRU, usando 3 frame e considerando la sequenza di pagine 1, 2, 3, 4, 3, 2, 1 , 1, 2 , 3, 3, 4, 4,1 ,3.