Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Documenti analoghi
Sistemi Operativi Appello del 10 luglio 2017 Versione Compito A Cognome e nome: Matricola: Posto:

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica - Corso di Laurea in Informatica

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Nota: lo studente si ricordi di inizializzare i valori delle variabili semaforo usate nella sua soluzione.

Cognome e nome: Matricola: Posto: Regole dell'esame.

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Università degli Studi di Padova - Corso di Laurea in Informatica

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Università degli Studi di Padova - Corso di Laurea in Informatica

Cognome e nome: Matricola: Posto:

Università degli Studi di Padova - Corso di Laurea in Informatica

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Università degli Studi di Padova - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

[1.B] Si consideri un sistema con un solo processo attivo, il quale sta eseguendo la seguente porzione di codice:

Università degli Studi di Padova - Corso di Laurea in Informatica

[1.B] Si consideri un sistema con un solo processo attivo, il quale sta eseguendo la seguente porzione di codice:

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Per avere la sufficienza, e **necessario** svolgere ognuno dei primi 4 esercizi.

Università degli Studi di Padova - Corso di Laurea in Informatica

Laboratorio di Sistemi Operativi Simulatori

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica

Ordinamento dei processi

Sistemi Operativi Esercizi Ordinamento Processi

Università degli Studi di Padova Dipartimento di Matematica - Corso di Laurea in Informatica

L ordinamento dei processi. Ordinamento dei processi. Fasi di ordinamento. Attribuzione della CPU 1. Materiale preparato da: A.

E-1: Scheduling dei processi

Architettura degli Elaboratori 2. tipi di scheduling. scheduling della CPU (1) scheduling. First Come First Served. First Come First Served

Sistemi Operativi 13 Novembre 2015

Sistemi operativi II appello (versione A)

Sistemi Operativi e Laboratorio, Prova del 19/6/2014

Architettura degli elaboratori 2 appello recupero estivo (versione A)

Si può simulare una struttura di directory a multilivelli con una struttura di directory a singolo livello?"

Sistemi Operativi e Laboratorio, Prova del 16/1/2015

Sistemi Operativi A.A. 2010/2011

Sistemi Operativi Esercizi Gestione Memoria

Sistemi Operativi e Laboratorio, Prova del 25/5/2016

ESERCIZIO M-1 Rilocazione statica con caricamento in partizioni fisse

ESERCITAZIONE 7 - Soluzioni. Algoritmi di schedulazione Fattibilità di sistemi real-time Gestione della memoria, paginazione e gestione del disco

Swapping 1. Swapping 2. Gestione della memoria. Strutture di gestione 1. Strutture di gestione 2. Strutture di gestione 3

SOLUZIONE Istruzioni: Indirizzo logico Legittimo? Indirizzo fisico SI NO SI Dati:

Esercizi Esercizi Università di Salerno

Eserciziario. Leonardo Ranaldi. January 2019

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 21 settembre 2006

SOLUZIONE Istruzioni: Indirizzo logico Legittimo? Indirizzo fisico Dati:

Sistemi Operativi 9/05/2012 <C>

PROVA SCRITTA DEL MODULO DI

Sistemi Operativi e Laboratorio, Prova del 9/9/2014

PROVA SCRITTA DEL CORSO DI C A L C O L A T O R I E L E T T R O N I C I NUOVO E VECCHIO ORDINAMENTO DIDATTICO 24 Settembre 2008

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Diplomi Universitari Teledidattici. Sistemi Operativi

Architettura degli elaboratori 2 II appello (versione A)

Università di Bologna Corso di Laurea in Ingegneria Informatica A.A Sistemi Operativi L-A. Obiettivi del Corso. Argomenti trattati

Università di Bologna Corso di Laurea in Ingegneria Informatica A.A Sistemi Operativi L-A

Elementi di Architettura e Sistemi Operativi

Corso di laurea in Ingegneria Biomedica, Elettrica, Elettronica ed Informatica

Sistemi operativi I Appello (versione A)

1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione

Sistemi Operativi Esercizi Sincronizzazione

Sistemi Operativi e Laboratorio, Prova del 5/6/2017

Sistemi Operativi 20 giugno 2013 Compito B

Progettazione di Algoritmi. Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo. Appello del 19 Febbraio Attenzione:

Il presente plico contiene 3 esercizi e deve essere debitamente compilato con cognome e nome, numero di matricola.

PROVA SCRITTA DEL MODULO DI. 18 Settembre 2018

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 10 settembre 2007

Sistemi Operativi. La gestione delle risorse

Sistemi operativi 2/ed Paolo Ancilotti, Maurelio Boari, Anna Ciampolini, Giuseppe Lipari Copyright 2008 The McGraw-Hill Companies srl

if (a>c) d = d + 5; a = b + d + e; else e = e + 2; f = f + 2; c = c + f; b = a + f;

TECN.PROG.SIST.INF. - Politiche di schedulazione del processore. Roberta Gerboni

Statistica A. Corsi di Laurea afferenti alla IV Facoltà. Prova del 6 settembre 2005

Il presente plico contiene 3 esercizi e deve essere debitamente compilato con cognome e nome, numero di matricola.

Sistemi Operativi e Laboratorio, Prova del 9/9/2016

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 10 aprile 2008.

SIMULAZIONE DELLA PROVA INTERMEDIA DEL CORSO DI CALCOLATORI ELETTRONICI

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 14 Febbraio 2007

Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 26 Gennaio Attenzione:

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 10 settembre 2007

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Settore Inizio lettura: t+ Fine lettura Inizio trasf. in memoria Fine trasf. in memoria 5 (35-21).0,1= 1,4 1,5 1,5 1,56

Architettura degli Elaboratori 2

PRIMA PROVA INTERMEDIA DEL CORSO DI C A L C O L A T O R I E L E T T R O N I C I 27 Aprile 2012

Sistemi Operativi e Laboratorio, Prova del 19/12/2014

SISTEMI OPERATIVI E LABORATORIO (Indirizzo Sistemi e Reti) 5 luglio 2004

Esercitazione E7 Prova di autovalutazione

Sistemi Operativi Prova scritta per coloro che non hanno svolto le esercitazioni con valutazione 27 Febbraio 2008

PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO (5-6-7 CFU) 16 Gennaio 2014

Sistemi Operativi e Laboratorio, Prova del 16/2/2015

TERMINA ESECUZIONE A B =85 85 C =90 90 D = E = INIZIA ESECUZIONE

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Ogni parte non cancellata a penna sarà considerata parte integrante della soluzione.

Esercizio Dispositivi-1. Soluzione

Sistemi Operativi Esercizi File System. Docente: Claudio E. Palazzi

Transcript:

Università degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica Regole dell'esame Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 90 minuti dalla sua presentazione. Non è consentita la consultazione di libri o appunti in forma cartacea o elettronica, né l'uso di palmari e telefoni cellulari. La correzione e la sessione orale avverrà in data e ora comunicate dal docente durante la prova scritta; i risultati saranno esposti sul sito del docente entro il giorno precedente gli orali. Per superare l esame il candidato deve acquisire almeno 1.5 punti nel Quesito 1 e un totale di almeno 18 punti su tutti i quesiti, inserendo le proprie risposte interamente su questi fogli. Riportare generalità e matricola negli spazi indicati. Per la convalida e registrazione del voto finale il docente si riserva di proporre al singolo candidato una prova orale. Quesito 1 (punti 4): 1 punto per risposta giusta, diminuzione di 0,33 punti per risposta sbagliata, 0 punti per risposta vuota [1.A] Quale tra le seguenti politiche di ordinamento, in generale minimizza il tempo medio di attesa dei processi: 1. FCFS 2. Round-Robin con valutazione dell'attributo di priorità dei processi 3. Round-Robin senza valutazione dell'attributo di priorità dei processi 4. Shortest Job First. [1.B]: Sia dato un sistema di memoria con indirizzi virtuali suddivisi in 4 campi: a, b, c, d, i primi 3 dei quali siano utilizzati per indirizzare tre livelli gerarchici di tabelle delle pagine e il quarto campo rappresenti l offset entro la pagina selezionata. Indicare dall ampiezza di quali campi dipende il numero di pagine indirizzate nel sistema: 1. da quella di tutti e quattro i campi 2. da quella del campo d 3. da quella del campo a e d 4. da quelle dei campi a, b, c. [1.C]: Un semaforo binario può: 1. assumere solo valori pari 2. gestire solo l'accesso a due risorse condivise 3. gestire solo le richieste di accesso provenienti da due processi 4. assumere solo i valori 0 e 1, con essi denotando risorsa occupata e risorsa libera. [1.D] Quale tra le seguenti affermazioni, fatte osservando un grafo di allocazione delle risorse, è certamente vera in generale: 1. se vi sono percorsi chiusi allora vi è situazione di stallo 2. se non vi sono percorsi chiusi allora non vi è situazione di stallo 3. se in un percorso chiuso rilevato si trovano solo risorse a molteplicità unaria, occorre analizzare il caso per decidere 4. nessuna delle precedenti tre possibili risposte. RISPOSTE AL QUESITO 1: A B C D Quesito 2 (6 punti): Cinque processi batch, identificati dalle lettere A, B, C, D, E rispettivamente, arrivano all elaboratore agli istanti 0, 1, 2, 6, 7 rispettivamente. Tali processi hanno un tempo di esecuzione stimato di 3, 7, 2, 3, 1 unità di tempo rispettivamente e con priorità 3, 5, 2, 4, 1 rispettivamente (dove 5 è la massima priorità e 0 è la minima). Per ognuna delle seguenti politiche di ordinamento: A) Round Robin (divisione di tempo, con priorità, senza prerilascio per priorità, e con quanto di tempo di ampiezza 2) B) Fair Priority Scheduling Per evitare attesa infinita la politica di Fair Priority Scheduling prevede che, a seguito di due unità di tempo consecutive di esecuzione, la priorità del processo in esecuzione scenda di un punto. (Esempio 1. Se il processo è in esecuzione per 4 unità di tempo consecutive, la priorità di tale processo scende di 1 punto dopo le prime due unità temporali e di 1 altro punto dopo le ultime due unità temporali.) (Esempio 2. Se un processo è in esecuzione per 3 unità di tempo consecutivamente, la priorità di tale processo scende di 1 punto dopo le prime due unità temporali e basta; l altra unità temporale di esecuzione non concorre in alcun modo, nemmeno successivamente, a far decrementare la priorità del processo in considerazione.) Infine, la priorità di un processo non risale mai e non può scendere sotto lo zero. Determinare, trascurando i ritardi dovuti allo scambio di contesto: (i) il tempo medio di risposta; (ii) il tempo medio di attesa; (iii) il tempo medio di turn around.

Nel caso di arrivi simultanei di processi allo stato di pronto, fatta salva l eventuale considerazione del rispettivo valore di priorità, si dia la precedenza ai processi usciti dallo stato di esecuzione rispetto a quelli appena arrivati. Nel caso di due processi aventi la stessa priorità, di cui uno in esecuzione, si dia la precedenza a quello in esecuzione. [2.A]: RR (divisione di tempo, con priorità, senza prerilascio per priorità, e con quanto di tempo di ampiezza 2) Proc. A Proc. B Proc. C Proc. D Proc. E Coda processo t. risposta t. attesa turn-around A B C D E medie [2.B]: Fair Priority Scheduling (con priorità 3, 5, 2, 4, 1 per i processi A, B, C, D, E, dove 5 è la massima priorità) Proc. A Proc. B Proc. C Proc. D Proc. E Coda processo t. risposta t. attesa turn-around A B C D E Medie Quesito 3 (4 punti): Si consideri un sistema dotato di memoria virtuale, con memoria fisica divisa in 4 page frame. Il tempo di caricamento, tempo di ultimo accesso e i bit di R (Referred) e M (Modified) per ogni pagina sono come mostrato nella tabella sottostante. pagina tempo ultimo caricamento riferimento R M 0 132 286 1 0 1 236 251 0 1 2 154 267 0 0 3 91 301 1 1

Si supponga che il sistema abbia bisogno di caricare in memoria una nuova pagina. Giustificando (molto brevemente) la risposta, quale di quelle in tabella sarà rimpiazzata se si adotta una politica: a) NRU b) FIFO c) LRU d) second chance Quesito 4 (8 punti): I filosofi a cena è un classico problema di sincronizzazione tra più processi. a) Lo studente descriva brevemente di che problema si tratta e le analogie con scenari inerenti i sistemi operativi. b) Come visto in aula, lo studente utilizzi i semafori per scrivere una procedura Filosofo. Tali procedure dovranno poter essere eseguite concorrentemente (come fossero un gruppo di filosofi a cena, appunto) evitando il deadlock del sistema (anche le soluzioni con possibile starvation, ma comunque senza deadlock, saranno considerate corrette). Si consideri un tavolo con N filosofi ed N forchette. ATTENZIONE: lo studente si ricordi di inizializzare i valori delle variabili semaforo usate nella sua soluzione.

Quesito 5 (6 punti): In una chiavetta USB da 2 GB con filesystem FAT32 e blocchi da 4K vengono registrati 100 files da 1000 blocchi ciascuno. Considerando che: il tempo di lettura di un blocco è 100 microsecondi; il tempo medio di accesso (tempo per raggiungere qualsiasi blocco da un altro qualsiasi, purché non contiguo altrimenti il tempo è nullo) è di 5 millisecondi; si presuma che la FAT sia precaricata in memoria (si trascurino pertanto i tempi di accesso alla stessa). Calcolare il tempo necessario a leggere tutti i files, nelle ipotesi a) di minima frammentazione; b) di massima frammentazione; Si calcoli inoltre c) il tempo di scanning dello spazio libero, nel caso a) Quesito 6 (4 punti): In aula si è discusso di come l algoritmo del banchiere faccia procedere il sistema attraverso una serie di stati sicuri (safe). Data la situazione schematizzata nelle tabelle seguenti, quante istanze della risorsa R1 devono essere disponibili affinché il sistema sia safe? (Commentare la scelta) processi risorse allocate max ris. richieste R1 R2 R3 R1 R2 R3 P1 2 1 1 4 2 2 P2 3 1 0 4 2 2 P3 1 3 0 1 6 1 P4 0 1 1 2 1 1 risorse disponibili R1 R2 R3? 1 1

Soluzione Soluzione al Quesito 1 [1.A]: risposta 4 [1.B]: risposta 4 [1.C]: risposta 4 [1.D]: risposta 2 Soluzione al Quesito 2 a) RR con quanto di tempo di ampiezza 2 processo A AAaaaaaaaaaaA LEGENDA DEI SIMBOLI processo B -bbbbbbbb - non ancora arrivato processo C --ccccccccccccc x (minuscolo) attesa processo D ------dddddd X (maiuscolo) esecuzione processo E -------eeeeeeeee. coda vuota coda AABBBBBBBDDDACCE.baaaadddaaacee...ccccaaaccce......ccceee......ee... processo risposta tempo di attesa turn-around A 0 10 10 + 3 = 13 B 1 1 1 + 7 = 8 C 11 11 11 + 2 = 13 D 3 3 3 + 3 = 6 E 8 8 8 + 1 = 9 medie 4,60 6,60 9,80 b) Fair Priority Scheduling processo A AaaaaaaaaAA LEGENDA DEI SIMBOLI processo B -BBBBBbbbbbBB - non ancora arrivato processo C --ccccccccccccc x (minuscolo) attesa processo D ------DDD X (maiuscolo) esecuzione processo E -------eeeeeeeee. coda vuota coda ABBBBBDDDAABBCCE.aaaaaaaabbccee...ccccbbbccee......cccee......ee... Nota: - All istante 3, il valore di priorità di B passa da 5 a 4. - All istante 5, il valore di priorità di B passa da 4 a 3 (e viene dunque prerilasciato all ingresso di D). - All istante 8, il valore di priorità di D passa da 4 a 3. processo risposta tempo di attesa turn-around A 0 8 8 + 3 = 11 B 0 5 5 + 7 = 12 C 11 11 11 + 2 = 13 D 0 0 0 + 3 = 3 E 8 8 8 + 1 = 9 medie 3,80 6,40 9,60

Soluzione al Quesito 3 - NRU rimuove ovvero la pagina 2 perché è l unica che abbia R = 0 e M = 0. - FIFO rimuove la prima pagina che è stata caricata, ovvero la pagina 3. - LRU rimuove la pagina 1 perché è quella riferita meno di recente tra quelle con R = 0. - second chance rimuove la pagina più vecchia tra quelle con R = 0, ovvero la pagina 2. Soluzione al Quesito 4 Varie soluzioni possibili, ad esempio: introdurre un filosofo mancino come illustrato nelle slide del corso, nella parte riguardante la sincronizzazione dei processi ed esercizi correlati. Soluzione al Quesito 5 a) nel caso di minima frammentazione, tutti i blocchi dei files sono contigui e disposti uno di seguito all'altro. Si tratta perciò di leggere 100 x 1000 = 100.000 blocchi; per ognuno servono 100 microsecondi, dunque il risultato è 100.000 x 100 microsecondi = 10 secondi. (e considerato corretto anche il risultato che conta 5 ms iniziali per l accesso al primo blocco: 10 s + 5 ms) b) nel caso di massima frammentazione, dato che ci sono in tutto 2^31 / 2^12 blocchi = 524.288 blocchi, è possibile considerare che fra ogni blocco di dati ce ne sia uno libero. Pertanto i files sono tutti "polverizzati". Ad ogni lettura va sommato quindi un "salto" (perché non si tratta di blocchi contigui): tempo totale = 10 secondi (dal punto precedente) + (100000-1) x 5 ms = 8 minuti e 30 secondi. c) i blocchi liberi (escludendo lo spazio per la FAT stessa) sono 524288-100000 = 424288, tutti contigui; pertanto si tratta di circa 42 secondi. Soluzione al Quesito 6 La differenza tra il numero massimo di risorse richieste dai processi e il numero di risorse ad essi allocati è: processi max - allocate R1 R2 R3 P1 2 1 1 P2 1 1 2 P3 0 3 1 P4 2 0 0 Innanzitutto è possibile notare che per essere sicuri di terminare P2 o P3 occorrerebbe liberare delle risorse R2 ed R3, ad esempio terminando P1 o P4. Per essere in grado di terminare sicuramente P4 occorrono 2 risorse R1. Per essere in grado di terminare sicuramente P1 occorrono 2 risorse R1, 1 risorsa R2 (disponibile), 1 risorsa R3 (disponibile). Dunque perchè il sistema sia safe occorrono almeno 2 risorse R1 disponibili.