• Non ci sono risultati.

UNIVERSITÀ DEGLI STUDI DI BERGAMO

N/A
N/A
Protected

Academic year: 2021

Condividi "UNIVERSITÀ DEGLI STUDI DI BERGAMO"

Copied!
2
0
0

Testo completo

(1)

1

Corso di Laurea in Ingegneria Informatica Sistemi Operativi App. 14 Gennaio 2013

1. Che cosa si intende per anomalia di Belady nella paginazione della memoria? [max 4 pt]

2. Nell’ambito delle strategie per evitare il deadlock, si illustri l’algoritmo di Dijkstra del grafo di allocazione delle risorse per “un singolo tipo di risorsa”. [max 8 pt]

3. Nell’ambito delle tecniche di implementazione del file system: [max 8 p.t.]

a) Descrivere la tecnica di allocazione contigua dei file su disco;

b) Si consideri un file system con dimensione del blocco di 512 byte. Si assuma che il sistema adotti la tecnica di allocazione contigua descritta al punto a). Si assuma inoltre che nel descrittore del file siano riservati 32 bit per l’indirizzamento del file. Qual è la dimensione

massima del file system (ovvero la dimensione massima di un file)? Motivare la risposta.

4. Quesito riservato agli studenti di Informatica II (21013+23014): Uno sportello di una piccola banca offre servizi di prelievo/versamento ai clienti intestatari di (uno ed un solo!) conto corrente (CC) individuato univocamente da un codice intero. Il prelievo può essere eseguito soltanto dall’intestatario del CC e il richiedente aspetta nel caso nel conto non vi sia un importo sufficiente.

Il versamento può essere eseguito da un cliente della banca anche diverso dall’intestatario del CC.

In particolare, i clienti vengono classificati in due categorie:

- Clienti Standard: sono i clienti il cui saldo attuale è minore di 50.000 €;

- Clienti Vip: sono i clienti il cui saldo attuale è maggiore o uguale di 50.000 €.

Ogni cliente può cambiare categoria dinamicamente (in base, cioè, al saldo attuale del CC).

Si progetti una politica di gestione dello sportello che soddisfi i seguenti vincoli di priorità:

a. Le operazioni di versamento hanno la priorità su quelle di prelievo;

b. In una operazione (prelievo o versamento), i Vip hanno priorità sui clienti Standard.

Si assuma che ogni cliente effettua periodicamente un’operazione e si completi la definizione della

classe Sportello mediante il meccanismo dei semafori. [max 10 pt]

public class Sportello{

private final int N; //costante che esprime il numero massimo di CC private final int VIP=0; //TIPO VIP

private final int STA=1; //TIPO CLIENTE STANDARD private final int soglia=50000;

private int[] CC; //CONTI CORRENTI: CC[i] è il saldo del conto corrente di codice intero i

…<completare>

public Sportello(nc) { //Costruttore:

N=nc; CC=new int[N]; for(i=0; i<N; i++) CC[i]=0; //All’inizio in ciascun CC non ci sono soldi

…<completare> }

private int tipo(int conto){ // determina il tipo di conto if (CC[conto] < soglia) return STA; else return VIP; }

public void prelievo (int somma, int mioconto) throws InterruptedException {

…<completare> }

public void versamento (int somma, int mioconto, int conto) throws InterruptedException { …<completare> }

}

5. Quesito per gli studenti del C.I. di Reti di calcolatori e Sistemi operativi: [max 10 pt]

Si considerino tre processi P1, P2 e P3 in esecuzione concorrente: P1 con un’istruzione s1, P2 con un’istruzione s2, e P3 con un’istruzione s3. Si supponga di volere eseguire s2 solo dopo che s1 è terminata, e s3 solo dopo che s2 è terminata. Realizzare questo schema di serializzazione usando il meccanismo dei semafori per la sincronizzazione. Esprimere la soluzione con un pseudolinguaggio o linguaggio di programmazione fittizio.

UNIVERSITÀ DEGLI STUDI DI BERGAMO

DIPARTIMENTO DI INGEGNERIA

DELL’INFORMAZIONE E METODI MATEMATICI

(2)

2

SOLUZIONE:

1.

Vedi libro di testo/lucidi della lezione relativa.

2.

Vedi libro di testo/lucidi della lezione relativa.

3.a Vedi Sez. 12.4 del libro adottato.

3.b Nel caso di allocazione contigua, il descrittore del file riserva un campo per memorizzare il primo blocco sul disco utilizzato dal file, che in questo caso ha una dimensione di 32 bit. La dimensione massima del file system è legata al numero di blocchi indirizzabili mediante l’indirizzo contenuto nel descrittore del file: in questo caso, quindi, il numero dei blocchi indirizzabili è pari a 232 . La dimensione max del file system è quindi:

4. Omessa. Vedi appello Set. 2012 5. Omessa. Vedi compiti passati.

Risultati:

Matricola Cognome Nome Voto prova scritta

1020758 BRIGNOLI GIULIA 25

1021111 COCCI GIORGIO 18

1012853 ROVETTA NICOLA 20

Riferimenti

Documenti correlati

– tabella associata ad ogni processo utente contenente una riga per ogni file aperto dal processo (indice = descrittore del file) con l’indirizzo della riga della tabella globale

■ Per accedere ad un file memorizzato su un’unità fisica (di qualunque tipo), è necessario creare un collegamento tra il file oggetto dell'operazione e una variabile di tipo

Cancellare il file solo dopo la cancellazione dell’ultimo link – richiede lista di tutti i riferimenti al file o anche solo un “contatore dei riferimenti”. Non permettere le

copiando il descrittore del file da questo alla tabella dei file aperti.  Close(f) – il descrittore del file viene rimosso dalla tabella dei

 Open(f) – prende il nome del file e cerca nel dispositivo, copiando il descrittore del file da questo alla tabella dei file aperti.  Close(f) – il descrittore del file viene

• Le operazioni di lettura e scrittura su file ad accesso random fanno uso di un indice che si può spostare con le funzioni lseek (basso livello) e fseek (stream). • Ovviamente non

Calcolo dell’indirizzo fisico: a partire dall’indirizzo logico, il file system fisico individua il numero del blocco che contiene il record richiesto, in base alla lunghezza

Una conseguenza della struttura delle directory descritta e che costituisce una caratteristica peculiare dei file system dei sistemi Unix è che un inode può essere associato a più di