Sistemi Operativi e Laboratorio, Prova del 15/06/2016

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sistemi Operativi e Laboratorio, Prova del 15/06/2016"

Transcript

1 Nome: Cognome: Matricola: fila: posto: Esercizio 1 (4 punti) In un sistema che gestisce la memoria con paginazione a domanda, le pagine logiche e i blocchi fisici hanno una lunghezza di 2 8 = 256 byte e l ampiezza della memoria fisica è di 2 8 blocchi. Gli indirizzi logici hanno una lunghezza di 16 bit, e pertanto ogni processo dispone di una memoria virtuale di 2 8 pagine. Per la gestione della memoria si utilizzano tabelle delle pagine a 2 livelli, tutte di uguale lunghezza, pari a 2 4 = 16 elementi. La tabella di primo livello del processo in esecuzione è caricata permanentemente nel blocco 0 (codice binario ) della memoria principale, che pertanto non è disponibile per il caricamento di pagine del processo o di tabelle delle pagine di secondo livello. Quando risiede in memoria, Ogni tabella di secondo livello occupa (seppure incompletamente) 1 blocco di memoria. Gli elementi delle tabelle (di primo o di secondo livello) sono codici binari di 8 bit. Il codice denota una pagina non presente in memoria, mentre ogni altro codice individua il blocco fisico che contiene la pagina. Al tempo t è in esecuzione il processo P e i contenuti della sua tabella delle pagine di primo livello e di alcune delle sue tabelle delle pagine di secondo livello sono mostrati in figura. Il processo riferisce in sequenza i seguenti indirizzi logici: Per ogni riferimento si chiede: se si verifica errore di pagina, in caso contrario, l indirizzo fisico corrispondente. Blocco Blocco Blocco Blocco Blocco Blocco Tab. 1 livello Blocco (Tab. 2 livello di indice 0011) Blocco (Tab. 2 livello di indice 0100) Blocco (Tab. 2 livello di indice 0110) Blocco (Tab. 2 livello di indice 1010) Blocco (Tab. 2 livello di indice 1110) 1. Indirizzo logico : Errore di pagina NO Indirizzo fisico Indirizzo logico : Errore di pagina SI 3. Indirizzo logico : Errore di pagina SI 4. Indirizzo logico : Errore di pagina NO Indirizzo fisico Indirizzo logico : Errore di pagina NO Indirizzo fisico Indirizzo logico : Errore di pagina SI 7. Indirizzo logico : Errore di pagina SI 8. Indirizzo logico : Errore di pagina NO Indirizzo fisico

2 1. Indirizzo logico : Errore di pagina [SI/NO]: 2. Indirizzo logico : Errore di pagina [SI/NO]: 3. Indirizzo logico : Errore di pagina [SI/NO]: 4. Indirizzo logico : Errore di pagina [SI/NO]: 5. Indirizzo logico : Errore di pagina [SI/NO]: 6. Indirizzo logico : Errore di pagina [SI/NO]: 7. Indirizzo logico : Errore di pagina [SI/NO]: 8. Indirizzo logico : Errore di pagina [SI/NO]: Esercizio 2 (4 punti) Si consideri un processore che dispone dei seguenti registri: - i registri speciali PC (program counter) e PS (program status) e lo stack pointer SP - un banco di registri riservato allo stato utente, che comprende i registri generali R1, R2, R3, - un ulteriore banco di registri riservato allo stato supervisore, che comprende i registri generali R 1, R 2, R 3 e lo stack pointer dello stack del nucleo SP. Il sistema riserva in memoria un area per il vettore di interruzione e per lo stack del nucleo e gestisce la memoria con la tecnica della segmentazione, per cui la MMU contiene due registri che contengono il puntatore alla tabella dei segmenti (PTS) e la lunghezza della tabella dei segmenti (LTS), rispettivamente. In stato supervisore i valori di PTS e LTS vengono impostati ai valori 0000 e 0002, rispettivamente. Alla commutazione di contesto il processore ha un comportamento standard e salva automaticamente il minimo indispensabile sullo stack. Al tempo t il processo Pi in esecuzione invoca una chiamata di sistema read() che ne provoca la sospensione. Di conseguenza, lo scheduler provoca una commutazione di contesto a favore del processo Pj, che viene messo in esecuzione. Il vettore di interruzione associato alla chiamata di sistema ha il valore 0500 e la parola di stato del nucleo è 275E. Quando l interruzione viene riconosciuta, i registri del processore, i descrittori di Pi e Pj e lo stack del nucleo, che inizia alla locazione 8080, hanno i contenuti mostrati in figura. L interruzione determina l intervento del nucleo, che esegue una funzione di servizio comprendente lo scheduler. Si chiede: a) il contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione della prima istruzione della funzione di servizio; b) il contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione dell istruzione IRET con la quale termina la funzione di servizio; c) il contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione dell istruzione eseguita subito dopo la IRET. Stato Esec. Stato Pronto 8080 R PC EE00 PC BB R PS 26F2 PS 16F R SP EF01 SP F1C SP DEC0 R R R R R R REG. STATO SUPERV. PTS 0800 PTS R 1 00AA LTS 0008 LTS 0016 R 2 00BB R 3 00CC PROCESSORE: Registri speciali PTS 0800 SP 8080

3 PC ED01 PS 26F2 LTS 0012 a) contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione della prima istruzione della funzione di servizio: Stato Esec. Stato Pronto 8080 ED01 R PC EE00 PC BB F2 R PS 26F2 PS 16F R SP EF01 SP F1C SP DEC0 R R R R R R REG. STATO SUPERV. PTS 0800 PTS R 1 00AA LTS 0008 LTS 0016 R 2 00BB R 3 00CC PROCESSORE: Registri speciali PTS 0000 SP 8076 PC 0500 PS 257E LTS 0002 b) contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione dell istruzione IRET con la quale termina la funzione di servizio; Stato Sospeso Stato Esec BB00 R PC ED01 PC BB F2 R PS 26F2 PS 16F R SP DEC0 SP F1C SP F1C0 R R R R R R REG. STATO SUPERV. PTS 0800 PTS R 1?? LTS 0012 LTS 0016 R 2?? R 3?? PROCESSORE: Registri speciali PTS 0000 SP 8076 PC 0500+?? PS 257E LTS 0002 c) contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione dell istruzione eseguita subito dopo la IRET Stato Sospeso Stato Esec R PC ED01 PC BB R PS 26F2 PS 16F R SP DEC0 SP F1C SP F1C0 R R R R R R REG. STATO SUPERV. PTS 0800 PTS R 1?? LTS 0012 LTS 0016 R 2?? R 3?? PROCESSORE: Registri speciali PTS 0900 SP 8080 PC BB00 PS 16F2 LTS 0016

4 a) contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione della prima istruzione della funzione di servizio: Stato Stato 8080 R1 PC PC 8079 R2 PS PS 8078 R3 SP SP 8077 SP R1 R R2 R R3 R REG. STATO SUPERV. PTS PTS 8073 R 1 LTS LTS R 2 R 3 PROCESSORE: Registri speciali PTS SP PC PS LTS b) contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione dell istruzione IRET con la quale termina la funzione di servizio; Stato Stato 8080 R1 PC PC 8079 R2 PS PS 8078 R3 SP SP 8077 SP R1 R R2 R R3 R REG. STATO SUPERV. PTS PTS 8073 R 1 LTS LTS R 2 R 3 PROCESSORE: Registri speciali PTS SP PC PS LTS c) contenuto dei descrittori, dei registri generali e speciali e dello stack del nucleo durante la fase di estrazione dell istruzione eseguita subito dopo la IRET Stato Stato 8080 R1 PC PC 8079 R2 PS PS 8078 R3 SP SP 8077 SP R1 R R2 R R3 R REG. STATO SUPERV. PTS PTS 8073 R 1 LTS LTS R 2 R 3 PROCESSORE: Registri speciali PTS SP PC PS LTS Esercizio 3 (4 punti) Un sistema operativo utilizza un file system FAT-16, con blocchi di 1 Kbyte e gestisce la memoria con paginazione dinamica con pagine di 1 Kbyte. Il disco che ospita il File System è organizzato nel modo seguente: i blocchi di indice 0 e 1 e sono riservati per il boot block e il super block; i blocco di indice dal 2 al 129 (estremi inclusi) sono riservati alla FAT (di conseguenza, la FAT occupa 128 blocchi). Di conseguenza, il blocco i della FAT, risiede nel blocco di indice i+2 del disco; i blocchi successivi, a partire dal blocco di indice 130, contengono i blocchi dati del File System.

5 I blocchi della FAT vengono caricati in memoria a domanda. L accesso a un elemento della FAT contenuto in un blocco non caricato in memoria provoca un PageFault. Si chiede: 1. Il numero di puntatori contenuti nella FAT 2. La massima dimensione del disco in byte e in blocchi Supponendo che in questo File System sia definito il file oroscopo, che occupa 6 blocchi dati, e che i blocchi di questo file (con indici logici numerati da 0 a 5) siano allocati come segue: Indice del blocco logico (nel file): Indice del blocco fisico (nel disco): si chiede inoltre: 3. in quali blocchi della FAT sono contenuti gli indici dei blocchi dati del file oroscopo; 4. qual è il massimo numero di PageFault che si possono verificare per leggere in sequenza tutto il file. 1. La FAT contiene puntatori 2. Il disco ha al massimo blocchi, quindi la sua dimensione massima è Byte 3. in quali blocchi della FAT sono contenuti gli indici dei blocchi dati del file oroscopo: Elemento della FAT di indice IndFis = contenuto nel blocco della FAT di indice: 4. massimo numero di PageFault che si possono verificare per leggere in sequenza tutto il file: 1. La FAT occupa 128 blocchi di 1 KB, quindi il numero di puntatori è pari a 128*1024/2 = 2^16 = Il disco ha al massimo blocchi, quindi la sua dimensione massima è 64 MByte 3. l elemento della FAT associato al blocco dati di indice IndFis risiede su disco nel blocco IndFis / e punta al blocco dati successivo. Pertanto: Elemento della FAT di contenuto nel blocco della FAT indice IndFis = /512+ 2= /512+ 2= /512+ 2= /512+ 2= /512+ 2= /512+ 2= Gli errori di pagina sono dovuti al riferimento di elementi della FAT contenuti in blocchi non caricati in memoria. Supponendo che, una volta caricati in memoria, i blocchi vi rimangano per un tempo abbastanza lungo, il massimo numero di PageFault che si possono verificare per leggere in sequenza tutto il file è 4: infatti per leggere l intero file si devono caricare in memoria, nel caso peggiore, i blocchi 13, 21, 2 e 3della FAT. Esercizio 4 (4 punti)

6 Si consideri un sistema che gestisce la memoria con paginazione a domanda, applicando un algoritmo di sostituzione LRU locale e una politica di controllo dinamico del Working Set. Per ogni processo sono definiti i seguenti dati: l intero MaxBlocchi: massimo numero di blocchi disponibili per il caricamento del Working Set, che viene ridefinito periodicamente dal demone WorkingSetManager; l intero PagineResidenti, uguale al numero di pagine attualmente caricate in memoria e variabile nel tempo; la tabella delle pagine di ogni processo, con campi Pagina, Blocco, R (bit di pagina riferita) e DP (Distanza Passata). Quando un processo avanza, per ogni pagina riferita: se il riferimento determina Page Fault, la pagina riferita viene caricata nel blocco libero individuato dal primo elemento della lista BlocchiDisponibili (che si suppone sempre non vuota), viene incrementata la variabile PagineResidenti e viene definito DP= 0; in ogni caso, si assegna R= 1. Il processo WorkingSetManager, che interviene periodicamente, esegue le seguenti operazioni per ogni processo: Fase 1) per ogni pagina residente in memoria aggiorna la distanza passata con il seguente algoritmo: se R= 0 assegna DP= DP+ 1; altrimenti assegna R= 0 e DP= 0 Fase 2) se PagineResidenti> MaxBlocchi: scarica dalla memoria principale PagineResidenti- MaxBlocchi, selezionandole in ordine decrescente del valore di DP; se per l ultima pagina scaricata si ha DP< 8, assegna MaxBlocchi= MaxBlocchi + 1; se PagineResidenti< MaxBlocchi, assegna MaxBlocchi= MaxBlocchi 1. Al tempo T1, subito dopo un intervento di WorkingSetManager, per il processo P si ha MaxBlocchi = 7 e la tabella delle pagine ha la seguente configurazione: Tempo T2: Tabella delle Pagine Pagine Residenti= 10 Dopo T1 e prima del tempo T2 il processo P avanza e riferisce nell ordine le seguenti pagine: 1, 8, 5, 11, 12, 7 Al tempo T2 entra in esecuzione WorkingSetManager, che applica la politica sopra definita. Al tempo T4 termina l intervento di WorkingSetManager Supponendo che il contenuto della lista BlocchiDisponibili al tempo T1 sia , si chiede: a) il valore di PagineResidenti e la configurazione della Tabella delle Pagine del processo P al tempo T2; b) la configurazione della Tabella delle Pagine del processo P al tempo T3, quando termina la Fase 1 di WorkingSetManager; c) il valore di PagineResidenti e di MaxBlocchi e la configurazione della Tabella delle Pagine del processo P al tempo T4, quando termina la Fase 2 di WorkingSetManager. Tempo T3: Tabella delle Pagine

7 Tempo T4: Tabella delle Pagine Pagine Residenti= 7; MaxBlocchi= 8 Tempo T2: Tabella delle Pagine Tempo T3: Tabella delle Pagine Tempo T4: Tabella delle Pagine

8 Pagine Residenti= ; MaxBlocchi= Esercizio 5 (4 punti) Un sistema implementa i thread a livello del nucleo con scheduling round robin e quanto di tempo di 5 msec. Nel sistema sono presenti due (soli) processi P e Q. il processo P definisce i thread A e B che cooperano tra loro, mentre il processo Q ha il solo thread C. In particolare, i thread A e B cooperano scambiando messaggi attraverso un buffer condiviso, capace di contenere un solo messaggio. Le parti rilevanti del codice dei thread A e B sono le seguenti: Thread A: a.1) while (not fine) { a.2) crea_msg(); a.3) SpinlockAcquire (&BufferVuoto); a.4) dep_msg(); <deposita il messaggio nel buffer> a.5) SpinlockRelease(&BufferPieno); } Thread B: b.1) while (not fine) { b.2) elab(); b.3) SpinlockAcquire(&BufferPieno); b.4) Read_msg(); <estrae il messaggio dal buffer> b.5) SpinlockRelease(&BufferVuoto); b.6) Cons_msg(); <consuma messaggio> } dove BufferPieno, BufferVuoto e fine sono variabili binarie condivise. Per limitare la durata dell attesa attiva dei thread nell esecuzione della SpinlockAcquire i protocolli SpinlockAcquire e SpinlockRelease combinano il meccanismo della spinlock con la funzione thread_yield per rilasciare il processore. La loro realizzazione è la seguente: SpinlockAcquire(K) SpinlockRelease(K) { { While (testandset(k)==busy) K=FREE; ThreadYield(); } } dove K è la variabile chiave e la funzione thread_yield provoca il rilascio del processore da parte del thread che la esegue. Si conviene che le sezioni critiche siano accessibili quando la chiave ha il valore FREE. Al tempo T si ha BufferPieno= BUSY, BufferVuoto= FREE e fine= 0 ed è in esecuzione il thread B che esegue la riga b.1). I rimanenti thread sono pronti, con l ordinamento C A e il thread A è pronto a eseguire la riga a.1). Il tempo di esecuzione di tutte le righe di codice di A e B è trascurabile, ad eccezione delle righe a.2, b.2 e b.6 che richiedono 6 msec. Si chiede il tempo necessario ad A per depositare 2 messaggi, a partire dal tempo T. Si suppone che la variabile fine conservi il valore 0 e che il thread C consumi sempre per intero il suo quanto di tempo. 1) Primo messaggio depositato al tempo T+ 22 Infatti: B esegue b.1, b.2 per 5 ms C esegue per 5 ms

9 A esegue a.1 e a.2 per 5 ms B esegue b.2 e b.3 per 1 ms e poi fa la yield() C esegue per 5 ms A esegue a.2, a.3, a.4 per 1 ms e deposita il messaggio 2) Secondo messaggio depositato al tempo T+ 38 Infatti: A esegue a.5, a.1, a.2 per 4 ms B esegue b.3, b.4 per 0 ms e legge il messaggio B esegue b.5, b.6 per 5 ms C esegue per 5 ms A esegue a.2, a.3, a.4 per 2 ms e deposita il messaggio 1) Primo messaggio depositato da A al tempo spiegare la motivazione indicando la sequenza di esecuzione dei thread: 2) Secondo messaggio depositato da A al tempo spiegare la motivazione indicando la sequenza di esecuzione dei thread: Esercizio 6 (3 punti) Un disco con 2 facce, 300 settori per traccia e 1500 cilindri ha un tempo di seek proporzionale al numero di cilindri attraversati, pari a 0,01 msec per ogni cilindro attraversato. Il periodo di rotazione è di 15 msec: conseguentemente il tempo impiegato per percorrere un settore è di 0,05 msec. A un certo tempo (convenzionalmente indicato come t=0) termina l esecuzione dei comandi sul cilindro 88 e sono pervenute, nell ordine, le seguenti richieste di lettura o scrittura: clindro 670, faccia 0, settore 55 clindro 32, faccia 0, settore 100 clindro 1044, faccia 1, settore 120 Al tempo 16 arrivano anche le seguenti richieste: clindro 32, faccia 0, settore 88 clindro 1044, faccia 0, settore 199 clindro 1200, faccia 0, settore 66 Calcolare il tempo necessario per eseguire tutte queste operazioni supponendo che si adotti la politica di scheduling SSTF. Il tempo di esecuzione di ogni operazione è uguale alla somma dell eventuale tempo di seek, del ritardo rotazionale (tempo necessario per raggiungere il settore indirizzato) e del tempo di percorrenza del settore indirizzato. Si suppone che il tempo necessario per raggiungere un qualsiasi settore dopo un operazione di seek sia sempre uguale a un periodo di rotazione. Il controllore è dotato di sufficiente capacità di buffering ed è sempre in grado di accettare senza ritardo i dati letti dal disco o quelli da scrivere sul disco. Si assume inoltre che i comandi sullo stesso cilindro vengano eseguiti in ordine FIFO inizio: 0 seek: 0,56 rotazione: 15 percorrenza: 0,05 fine: 15, inizio: 15,61 seek: 6,38 rotazione: 15 percorrenza: 0,05 fine: 37, inizio: 37,04 seek: 3,74 rotazione: 15 percorrenza: 0,05 fine: 55,83

10 inizio: 55,83 seek: 0 rotazione: 3,9 percorrenza: 0,05 fine: 59, inizio: 59,78 seek: 1,56 rotazione: 15 percorrenza: 0,05 fine: 76, inizio: 76,39 seek: 11,68 rotazione: 15 percorrenza: 0,05 fine: 103,12 Esercizio 7 (3 punti) Si consideri un sistema nel quale sono definiti il semaforo sem e i processi P1 (con priorità 3), P2 (con priorità 2) e P3 (con priorità 1). Lo scheduling avviene con una politica analoga a quella delle code multiple (multilevel feedback queue, MFQ) ma realizzata con un unica Coda Pronti, nella quale i processi inseriti in modo ordinato in ordine decrescente di priorità e, a pari priorità, in ordine di arrivo. Al tempo t il processo P3 è in esecuzione e la coda pronti è vuota. Inoltre il semaforo sem ha valore 0 e la coda associata al semaforo contiene ordinatamente i processi P2->P1. A partire dal tempo t si verifica la seguente sequenza di eventi: 1) Il processo in esecuzione esegue V(sem) 2) il processo in esecuzione esaurisce il quanto di tempo; 3) il processo in esecuzione esegue P(sem) 4) il processo in esecuzione esegue V(sem) Si chiede di specificare quale processo è in esecuzione dopo ogni evento e inoltre come si modificano il valore e la coda del semaforo sem e la CodaPronti. Sequenza di eventi In Esecuzione Coda Pronti Valore di sem Coda di sem 1) il processo in esecuzione esegue V(sem) P2 P3 0 P1 2) scade il quanto di tempo P2 P3 0 P1 3) il processo in esecuzione esegue P(sem) P3-0 P1 -> P2 4) Il processo in esecuzione esegue V(sem) P1 P3 0 P2 NOTA: alla scadenza del quanto di tempo di P2 (evento 2) rimane in esecuzione P2, perché non esistono altri processi pronti con priorità uguale o maggiore. Esercizio 8 (2 punti) In un file system UNIX dove ogni i-node occupa 1 blocco, si consideri la directory file /home/vacanze/malta. Calcolare il numero di accessi al disco necessari per leggere il contenuto della directory, supponendo che ogni cartella di questo path occupi 1 blocco e che la cartella radice sia caricata in memoria, mentre tutti gli altri i-node e tutte le cartelle interessate risiedono su disco 1. 1 accesso per leggere 2. 1 accesso per leggere 3. 1 accesso per leggere 4. 1 accesso per leggere

11 5. 1 accesso per leggere 6. 1 accesso per leggere 7. 1 accesso per leggere 8. 1 accesso per leggere 9. 1 accesso per leggere accesso per leggere In totale : accessi accesso per leggere lo i-node della cartella home 2. 1 accesso per leggere il contenuto della cartella home 3. 1 accesso per leggere lo i-node della cartella vacanze 4. 1 accesso per leggere il contenuto della cartella vacanze 5. 1 accesso per leggere lo i-node della cartella malta 6. 1 accesso per leggere il contenuto della cartella malta In totale : 6 accessi. Esercizio 9 (2 punti) Quali delle seguenti operazioni possono essere eseguite da un processo in stato utente? Operazione: Eseguire l istruzione TSL (test and set lock) Salvare i registri generali nel proprio descrittore di processo Invocare una chiamata di sistema Leggere il contenuto della coda dei processi pronti Abilitare le interruzioni Eseguire l istruzione IRET (ritorno da un interruzione) Eseguibili dai processi in stato utente X X Operazione: Eseguire l istruzione TSL (test and set lock) Salvare i registri generali nel proprio descrittore di processo Invocare una chiamata di sistema Leggere il contenuto della coda dei processi pronti Abilitare le interruzioni Eseguire l istruzione IRET (ritorno da un interruzione) Eseguibili dai processi in stato utente

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

Sistemi Operativi e Laboratorio, Prova del 9/9/2016 Nome: Cognome: Matricola: corso: fila: posto: Esercizio 1 (4 punti) In un sistema che gestisce la memoria con paginazione, sono presenti i processi A, B e C. Lo stato di occupazione della memoria al tempo

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 9/9/2014 Nome: Cognome: Matricola: fila: posto: Esercizio 1 (5 punti) Si consideri un processore che dispone dei registri speciali PC (program counter) e PS (program status), dello stack pointer SP e dei registri

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 16/1/2015 Nome: Cognome: Matricola: fila: posto: Esercizio 1 (5 punti) Si consideri un sistema dove la memoria è gestita con paginazione a domanda. La pagine logiche e i blocchi fisici hanno un ampiezza di 2 11

Dettagli

Sistemi Operativi e Laboratorio, Prova del?/?/?

Sistemi Operativi e Laboratorio, Prova del?/?/? Nome: Cognome: Matricola: fla: posto: corso: Esercizio 1 Quali delle seguenti operazioni possono essere eseguite da un processo in stato utente? Operazione: Invocare l istruzione TSL (test and set lock-tipo

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 5/6/2017 Nome: Cognome: Matricola: fila: posto: corso: Esercizio 1 (5 punti) Un sistema operativo schedula i thread (implementati a livello del nucleo) con la tecnica delle MFQ (Multilevel Feedback Queue) e con

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 25/5/2016 Nome: Cognome: Matricola: fila: posto: corso: Esercizio 1 (4 punti) Un sistema con processi A, B, C, D, E e risorse dei tipi R1, R2, R3, R4, ha raggiunto lo stato mostrato nelle tabelle seguenti, che è

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 19/6/2014 Nome: Cognome: Matricola: fila: posto: Esercizio 3 (5 punti) In un sistema che gestisce la memoria con paginazione a domanda, le pagine logiche e i blocchi fisici hanno una lunghezza di 2 8 = 256 byte

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 5/4/2016 Nome: Cognome: Matricola: fila: posto: corso: Esercizio 1 (5 punti) Si consideri un processore che dispone dei registri speciali PC (program counter) e PS (program status), dello stack pointer SP e dei

Dettagli

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

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 Esercizio Dispositivi-1 In un disco con 4 facce, 30 settori per traccia e 120 tracce, il periodo di rotazione è di 3 msec: conseguentemente il tempo impiegato per percorrere un settore è di 0,1 msec. Ogni

Dettagli

Sistemi Operativi e Laboratorio, Prova del 05/02/2014

Sistemi Operativi e Laboratorio, Prova del 05/02/2014 Cognome e nome: Matricola: Corso [A/B] : fila: posto: Esercizio 1 (4 punti) Un ufficio postale è dotato di un unico sportello e di un distributore di numeri per gestire un afflusso ordinato allo sportello

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 16/2/2015 Nome: Cognome: Matricola: fila: posto: Esercizio 1 (5 punti) Si consideri un processore che dispone dei seguenti registri: - i registri speciali PC (program counter) e PS (program status) - un banco di

Dettagli

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

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 Esercizio Dispositivi-1 In un disco con 4 facce, 30 settori per traccia e 120 tracce, il periodo di rotazione è di 3 msec: conseguentemente il tempo impiegato per percorrere un settore è di 0,1 msec. Ogni

Dettagli

Esercizio Dispositivi-1. Soluzione

Esercizio Dispositivi-1. Soluzione Esercizio Dispositivi-1 In un disco con 4 facce, 30 settori per traccia e 120 tracce, il periodo di rotazione è di 3 msec: conseguentemente il tempo impiegato per percorrere un settore è di 0,1 msec. Ogni

Dettagli

ESERCIZIO M-1 Rilocazione statica con caricamento in partizioni fisse

ESERCIZIO M-1 Rilocazione statica con caricamento in partizioni fisse ESERCIZIO M-1 Rilocazione statica con caricamento in partizioni fisse In un sistema operativo che utilizza la rilocazione statica e gestisce la memoria con partizioni fisse, la memoria fisica ha un ampiezza

Dettagli

Sistemi Operativi e Laboratorio, Prova del 15/01/2014

Sistemi Operativi e Laboratorio, Prova del 15/01/2014 Cognome e nome: Matricola: Corso [A/B] : fila: posto: Esercizio 1 (4 punti) Si consideri un processore che dispone dei registri speciali PC (program counter), PS (program status) e SP (stack pointer),

Dettagli

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

Sistemi Operativi e Laboratorio, Prova del 19/12/2014 Nome: Cognome: Matricola: fila: posto: Esercizio 1 (4 punti) In un sistema che implementa i thread a livello del nucleo, m thread di uno stesso processo cooperano utilizzando il buffer condiviso buf. Il

Dettagli

Esercizio FAT 1. Soluzione:

Esercizio FAT 1. Soluzione: Esercizio FAT 1 In un disco con blocchi di 1 Kbyte (= 2 10 byte), è definito un file system FAT. Gli elementi della FAT sono in corrispondenza biunivoca con i blocchi fisici del disco. Ogni elemento ha

Dettagli

Sistemi Operativi e Laboratorio, Prova del 6/4/2017 versione A

Sistemi Operativi e Laboratorio, Prova del 6/4/2017 versione A Nome: Cognome: Matricola: corso: fila: posto: Esercizio 1 (5 punti) Si consideri un processore che dispone dei registri speciali PC (program counter) e PS (program status), dello stack pointer SP e dei

Dettagli

Esercizio FAT 1. Soluzione: 1. Capacità del disco: 2 24 blocchi (3 byte=24 bit) 2

Esercizio FAT 1. Soluzione: 1. Capacità del disco: 2 24 blocchi (3 byte=24 bit) 2 Esercizio FAT 1 In un disco con blocchi di 1 Kbyte (= 2 10 byte), è definito un file system FAT. Gli elementi della FAT sono in corrispondenza biunivoca con i blocchi fisici del disco. Ogni elemento ha

Dettagli

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

SOLUZIONE Istruzioni: Indirizzo logico Legittimo? Indirizzo fisico SI NO SI Dati: SRIZIO Segmentazione In un sistema che gestisce la memoria con spazio logico suddiviso in segmento codice e segmento dati (comprensivo della pila) e caricamento in partizioni variabili con rilocazione

Dettagli

ESERCIZIO Cambio Di Contesto: System Call (1)

ESERCIZIO Cambio Di Contesto: System Call (1) ESERCIZIO Cambio Di Contesto: System Call (1) Si consideri un processore che dispone dei registri speciali PC (program counter) e PS (program status), dello stack pointer SP e dei registri generali R1

Dettagli

Sistemi Operativi e Laboratorio, Prova del 10/4/2018 compito B

Sistemi Operativi e Laboratorio, Prova del 10/4/2018 compito B Nome: Cognome: Matricola: corso: fila: posto: sercizio 1 (5 punti) Un sistema con 5 processi (A,, C,, ) e risorse dei tipi R1, R2, R3, R4, rispettivamente di molteplicità [7, 7, 3, 6], utilizza l algoritmo

Dettagli

Sistemi Operativi e Laboratorio, Prova del?/?/?

Sistemi Operativi e Laboratorio, Prova del?/?/? Nome: Cognome: Matricola: fla: ooto: coroo: Esercizio 1 Quali delle seguenti operazioni possono essere eseguite da un processo in stato utente? Operazione: Eseguibili dai processi in stato utente Invocare

Dettagli

SOLUZIONE Istruzioni: Indirizzo logico Legittimo? Indirizzo fisico Dati:

SOLUZIONE Istruzioni: Indirizzo logico Legittimo? Indirizzo fisico Dati: SRIZIO Segmentazione In un sistema che gestisce la memoria con spazio logico suddiviso in segmento codice e segmento dati (comprensivo della pila) e caricamento in partizioni variabili con rilocazione

Dettagli

Sistemi Operativi e Laboratorio, Prova del 10/4/2018 compito A

Sistemi Operativi e Laboratorio, Prova del 10/4/2018 compito A Nome: Cognome: Matricola: corso: fila: posto: sercizio 1 (5 punti) Uno spool di stampa di un sistema multithread che gestisce due stampanti fisiche, è organizzato con un thread gestore che gestisce le

Dettagli

Sistemi Operativi e Laboratorio, Prova del 6/4/2017 versione B

Sistemi Operativi e Laboratorio, Prova del 6/4/2017 versione B Nome: Cognome: Matricola: corso: fila: posto: sercizio 1 (5 punti) Si consideri un processore che dispone dei registri speciali PC (program counter) e PS (program status), dello stack pointer SP e dei

Dettagli

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

TERMINA ESECUZIONE A B =85 85 C =90 90 D = E = INIZIA ESECUZIONE ESERCIZIO Scheduling 1 In un sistema vengono generati 5 processi (A,B,C,D,E), con durate (in millisecondi) sotto specificate: Processo Durata A 25 B 6 C 5 D 15 E 1 Tutti i processi avanzano senza mai sospendersi.

Dettagli

Cognome e nome: Matricola: Posto:

Cognome e nome: Matricola: Posto: Quesito 1: (+0,5 punti per ogni risposta esatta; -0,25 punti per ogni risposta sbagliata; 0 punti se lasciata in bianco) DOMANDA ero/also La tecnica di allocazione contigua è soggetta al problema della

Dettagli

Sistemi Operativi e Laboratorio, Prova del 6/6/2019

Sistemi Operativi e Laboratorio, Prova del 6/6/2019 Nome: Cognome: Matricola: fila: posto: corso: aula: Esercizio 1 (4 punti) Un sistema operativo simile a UNIX gestisce la memoria con paginazione a domanda mediante il processo PageDaemon (con parametri

Dettagli

Il sistema operativo

Il sistema operativo Il sistema operativo Vito Perrone Corso di Informatica A per Gestionali Indice Architettura Gestione dei processi Gestione della memoria centrale Driver Gestione dei file 2 1 Il sistema operativo E uno

Dettagli

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

Cognome e nome: Matricola: Posto: Regole dell'esame. Regole dell'esame. Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 60 min dalla sua presentazione. Non è consentita la consultazione di libri o appunti in forma

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 5 Martedì 25-10-2016 Definizione di processo Esiste una distinzione concettuale

Dettagli

CX: 4 K DX:12 K PX:4 K CY:16 K DY: 4 K PY:4 K

CX: 4 K DX:12 K PX:4 K CY:16 K DY: 4 K PY:4 K esercizio n. 2 memoria virtuale Un sistema dotato di memoria virtuale con paginazione e segmentazione di tipo UNIX è caratterizzato dai parametri seguenti: la memoria centrale fisica ha capacità di 32

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 205-6 Pietro Frasca Lezione 3 Martedì 7--205 Paginazione su richiesta Con la tecnica della paginazione

Dettagli

Memoria Virtuale. Alessandro A. Nacci ACSO 2014/2014

Memoria Virtuale. Alessandro A. Nacci ACSO 2014/2014 Memoria Virtuale Alessandro A. Nacci alessandro.nacci@polimi.it ASO 2014/2014 1 2 Algoritmo LRU! Buone prestazioni in media! Utilizza bit di controllo che riportano le informazioni sugli accessi alle pagine!

Dettagli

IL SISTEMA OPERATIVO

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO (seconda parte) PROGRAMMI UTENTE INTERPRETE COMANDI FILE SYSTEM GESTIONE DELLE PERIFERICHE GESTIONE DELLA MEMORIA GESTIONE DEI PROCESSI (NUCLEO) HARDWARE La gestione delle periferiche

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2018-2019 Pietro Frasca Lezione 18 Martedì 11-12-2018 L indirizzo fisico della tabella delle pagine

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 8 Martedì 8-11-2016 1 Algoritmi di scheduling basati sulle priorità Assegnano

Dettagli

Esercitazione E3 File System

Esercitazione E3 File System Esercitazione E3 File System Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 E3-1 Indici ISAM Si consideri un file di 60.000 record di 80 byte ciascuno, con un campo chiave di 16 byte, sul quale

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 11 Giovedì 17-11-2016 1 Gestione della memoria La memoria principale

Dettagli

YYY02 Esercizi per Teoria. Esercizi per preparazione alla prova scritta

YYY02 Esercizi per Teoria. Esercizi per preparazione alla prova scritta YYY02 Esercizi per Teoria Esercizi per preparazione alla prova scritta Esercizio YYY02_02 - Busy Waiting In linguaggio ANSI C, siano dichiarate le seguenti variabili, e siano queste variabili debitamente

Dettagli

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

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 21 settembre 2006 Cognome: Nome: Matricola: Sistemi Operativi A.A. 2005-2006, prova scritta del 21 settembre 2006 Usa questa pagina per la brutta, staccala, non consegnarla. Sistemi Operativi A.A. 2005-2006, prova scritta

Dettagli

Memoria virtuale. Daniele Loiacono, Vittorio Zaccaria

Memoria virtuale. Daniele Loiacono, Vittorio Zaccaria Memoria virtuale Daniele Loiacono, Vittorio Zaccaria Informatica B - Codice Corso: 081369 - A.A. 2010/2011 INGEGNERIA MECCANICA (BV) - INGEGNERIA IV (1 liv.) - Scaglione S - Z INGEGNERIA ENERGETICA (BV)

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 23 Martedì 17-01-2017 Il file system Il file system si basa sulle astrazioni

Dettagli

Esercizi sulla macchina assembler, strutturazione a livelli, spazio di indirizzamento

Esercizi sulla macchina assembler, strutturazione a livelli, spazio di indirizzamento Architettura degli Elaboratori, a.a. 2005-06 Esercizi sulla macchina assembler, strutturazione a livelli, spazio di indirizzamento Esercizio 1 (svolto) a) Compilare in assembler Risc (Cap. V) un programma

Dettagli

Esercizio 1. Si consideri il seguente frammento di FAT: Blocco Fisico - valore nella FAT. e di directory D1 : nome file - primo blocco A 32 B 36

Esercizio 1. Si consideri il seguente frammento di FAT: Blocco Fisico - valore nella FAT. e di directory D1 : nome file - primo blocco A 32 B 36 Esercizio 1. Si consideri il seguente frammento di FAT: Blocco Fisico - valore nella FAT 30 16 31 34 32 33 33 35 34 41 35 40 36 37 37 31 38 29 39 30 40 39 e di directory D1 : nome file - primo blocco A

Dettagli

CX: 4 K DX:12 K PX:4 K CY:16 K DY: 4 K PY:4 K

CX: 4 K DX:12 K PX:4 K CY:16 K DY: 4 K PY:4 K esercizio n. 2 memoria virtuale Un sistema dotato di memoria virtuale con paginazione e segmentazione di tipo UNIX è caratterizzato dai parametri seguenti: la memoria centrale fisica ha capacità di 32

Dettagli

Introduzione al Sistema Operativo

Introduzione al Sistema Operativo Introduzione al Sistema Operativo Informatica B Il sistema Operativo q Il sistema operativo (SO) è uno strato software che nasconde agli utenti i dettagli dell architettura hardware del calcolatore q Fornisce

Dettagli

Operazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU

Operazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU Operazioni di I/O 1 Schema di collegamento fra dispositivi periferici e CPU Memoria CPU buffer interfaccia Registro di controllo Registro Di stato Unità di controllo Dispositivo fisico 2 1 Unità di interfaccia

Dettagli

Sistemi Operativi Da Unix a GNU/Linux (parte 3)

Sistemi Operativi Da Unix a GNU/Linux (parte 3) Sistemi Operativi Da Unix a GNU/Linux Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Caratteristiche del File System 1 File visto da FS come sequenza

Dettagli

LINUX: struttura generale

LINUX: struttura generale LINUX: struttura generale User Interface The layers of a UNIX system. 1 Processi in LINUX Ogni processo nasce con un solo thread Un processo gira in modalità utente; quando effettua una system call passa

Dettagli

Sistemi Operativi. Lezione 3 Processi e Thread

Sistemi Operativi. Lezione 3 Processi e Thread Lezione 3 Processi e Thread Introduzione Sino ai sistemi batch la CPU di un sistema svolgeva un attività, la portava a termine e solo allora avviava un altra attività Con l avvento della multiprogrammazione

Dettagli

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

Università degli Studi di Padova - Corso di Laurea in Informatica Università degli Studi di Padova - Corso di Laurea in Informatica Regole dell'esame Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 45 min dalla sua presentazione.

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 216-17 Pietro Frasca Lezione 13 Giovedì 24-11-216 Memoria paginata La gestione della memoria fisica

Dettagli

Esercitazione E7 Prova di autovalutazione

Esercitazione E7 Prova di autovalutazione Esercitazione E7 Prova di autovalutazione Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 E7-1 Esercizio 1 Un file di 8800 record di 180 Byte (con chiave da 47 Byte), è allocato su di un disco,

Dettagli

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi)

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi) shell Programmi utente Modo utente Il Nucleo del sistema operativo (la gestione dei processi) Interfaccia delle chiamate di sistema File system Gestione processi Device driver Gestione memoria HARDWARE

Dettagli

Sistemi Operativi A.A. 2010/2011

Sistemi Operativi A.A. 2010/2011 Sistemi Operativi A.A. 2010/2011 Esercitazione 15 Dicembre 2009 (Agg.to Dic. 2010) Nome Cognome Matricola e-mail Esercizio 1 - Scheduling dei processi Data la seguente sequenza di processi Processo Istante

Dettagli

Lezione XII: La gestione delle eccezioni in MINIX

Lezione XII: La gestione delle eccezioni in MINIX 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 4 aprile 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Memoria Virtuale. Background

Memoria Virtuale. Background Memoria Virtuale Background Memoria virtuale separazione della memoria logica dalla memoria fisica. Solo parte del programma ha la necessità di essere in memoria per essere eseguito. Lo spazio di indirizzi

Dettagli

Gestione dei Processi

Gestione dei Processi Gestione dei Processi Informatica B Che cosa è un processo per il SO? Processo programma! Rappresenta un istanza di un programma composta da: codice eseguibile (il programma stesso) dati del programma

Dettagli

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

Swapping 1. Swapping 2. Gestione della memoria. Strutture di gestione 1. Strutture di gestione 2. Strutture di gestione 3 Swapping 1 Gestione della memoria Ricapitolazione e discussione in aula: Claudio Palazzi cpalazzi@math.unipd.it Frammentazione esterna Gestione della memoria (ricapitolazione) Sistemi Operativi - Vardanega

Dettagli

Memoria Virtuale. Alessandro A. Nacci ACSO 2014/2014

Memoria Virtuale. Alessandro A. Nacci ACSO 2014/2014 Memoria Virtuale Alessandro A. Nacci alessandro.nacci@polimi.it ACSO 2014/2014 1 2 Algoritmo LRU! Buone prestazioni in media! Utilizza bit di controllo che riportano le informazioni sugli accessi alle

Dettagli

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

Università degli Studi di Padova - Corso di Laurea in Informatica Università degli Studi di Padova - Corso di Laurea in Informatica Regole dell'esame Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 45 min dalla sua presentazione.

Dettagli

Gestione della Memoria

Gestione della Memoria Gestione della Memoria Informatica B Il modello della memoria 2 E un modello lineare La memoria è una sequenza di celle numerate da 0 fino a un valore massimo M Il numero che identifica ogni cella è detto

Dettagli

Sistema operativo e processi. Il Sistema Operativo ed i Processi. Il sistema operativo. Il sistema operativo

Sistema operativo e processi. Il Sistema Operativo ed i Processi. Il sistema operativo. Il sistema operativo Il Sistema Operativo ed i Processi Giuseppe Pozzi Impianti di Elaborazione Facoltà di Ingegneria di Como Politecnico di Milano giuseppe.pozzi@polimi.it - versione del 22 ottobre 2003 - Sistema operativo

Dettagli

Introduzione ai thread

Introduzione ai thread Introduzione ai thread Processi leggeri. Immagine di un processo (codice, variabili locali e globali, stack, descrittore). Risorse possedute: : (file aperti, processi figli, dispositivi di I/O..),. L immagine

Dettagli

Capitolo 4 Gestione della Memoria

Capitolo 4 Gestione della Memoria Capitolo 4 Gestione della Memoria 4.1 Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di sostituzione 4.6 Criteri di progetto per la paginazione

Dettagli

Introduzione al Sistema Operativo

Introduzione al Sistema Operativo Introduzione al Sistema Operativo Informatica B Il sistema Operativo q Il sistema operativo (SO) è uno strato software che nasconde agli utenti i dettagli dell architettura hardware del calcolatore q Fornisce

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Pietro Frasca Lezione 20 Martedì 16-12-2014 1 System call per la gestione dei processi Creazione

Dettagli

Laboratorio di Informatica (Chimica)

Laboratorio di Informatica (Chimica) Laboratorio di Informatica (Chimica) Lezione 02: Il Sistema Operativo. Walter Cazzola Dipartimento di Informatica e Comunicazione Università à degli Studi di Milano. e-mail: cazzola@dico.unimi.it Walter

Dettagli

Sistemi Operativi Esercizi Gestione Memoria

Sistemi Operativi Esercizi Gestione Memoria Sistemi Operativi Esercizi Gestione Memoria Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides ad A. Memo e T. Vardanega Sistemi Operativi - C. Palazzi 64 Esercizio 1 Dato un

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2018-2019 Pietro Frasca Lezione 16 Giovedì 29-11-2018 Organizzazione dello spazio virtuale con modello

Dettagli

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Cosa vedremo: Esecuzione di un programma Concetto di processo Interruzioni Sistemi monotasking e multitasking Time-sharing Tabella dei

Dettagli

I Processi. Il Concetto di Processo

I Processi. Il Concetto di Processo I Processi Il Concetto di Processo Il processo è un programma in esecuzione È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono eseguite

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 10 Giovedì 7-11-2013 1 Gestione della memoria La memoria principale è

Dettagli

I Processi nel Sistema Operativo Unix. Gerarchie di processi Unix. Stati di un processo Unix. Stati di un processo Unix.

I Processi nel Sistema Operativo Unix. Gerarchie di processi Unix. Stati di un processo Unix. Stati di un processo Unix. I Processi nel Sistema Operativo Unix Processi Unix Unix è un sistema operativo multiprogrammato a divisione di tempo: l unità di computazione è il processo. Caratteristiche del processo Unix: processo

Dettagli

Sistemi Operativi 13 Novembre 2015

Sistemi Operativi 13 Novembre 2015 Sistemi Operativi 13 Novembre 2015 Esercizio 1 - Scheduling dei processi Data la seguente sequenza di processi Processo Istante Arrivo Durata Priorità P 1 0 7 2 P 2 1 5 3 P 3 3 3 1 P 4 7 5 2 se ne determini

Dettagli

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

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 10 settembre 2007 Cognome: Nome: Matricola: Usa questa pagina per la brutta, staccala, non consegnarla. Usa questa pagina per la brutta, staccala, non consegnarla. Cognome: Nome: Matricola: Libri e appunti chiusi. Vietato

Dettagli

Esercizio: memoria virtuale

Esercizio: memoria virtuale Siano dati un indirizzo logico con la struttura ed il contenuto mostrati in figura, dove è anche riportata la funzione di rilocazione. Si indichi l indirizzo fisico corrispondente all indirizzo logico

Dettagli

ESERCITAZIONE 6 - Soluzioni. Processi e thread

ESERCITAZIONE 6 - Soluzioni. Processi e thread ESERCITAZIONE 6 - Soluzioni Processi e thread 2 Processi e Thread 3 Calcolatori e processi (1) 1) In figura è mostrato lo stato di tre processi. In teoria, con 3 stati potrebbero verificarsi 6 transizioni,

Dettagli

GESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL

GESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno

Dettagli

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

TECN.PROG.SIST.INF. - Politiche di schedulazione del processore. Roberta Gerboni Roberta Gerboni 1 Gli stati di un processo Gli stati possibili nei quali si può trovare un processo sono: Hold (parcheggio): il programma (chiamato job) è stato proposto al sistema e attende di essere

Dettagli

Sistemi Operativi. La gestione delle risorse

Sistemi Operativi. La gestione delle risorse Sistemi Operativi La gestione delle risorse Introduzione Il sistema operativo ha il compito di fornire la gestione dell hardware ai programmi dell utente. Utente utilizza i programmi applicativi Programmi

Dettagli

Architettura di NTFS 1

Architettura di NTFS 1 Architettura di NTFS 1 NT 5.x supporta l intera gamma dei FS Windows e anche ext2fs di GNU/Linux FAT-16 Limite logico all ampiezza di partizione 2 16 blocchi di ampiezza massima 32 KB 2 GB FAT-32 Limite

Dettagli

Segmentazione. Gestore della memoria II parte. Segmentazione. Segmentazione: Vantaggi. Segmentazione 07/06/2012. Confronto Paginazione - Segmentazione

Segmentazione. Gestore della memoria II parte. Segmentazione. Segmentazione: Vantaggi. Segmentazione 07/06/2012. Confronto Paginazione - Segmentazione Gestore della memoria II parte La segmentazione come la paginazione prevede di dividere lo spazio di indirizzamento logico del processo(ovvero la memoria necessaria al processo) in più parti Quello che

Dettagli

Dove siamo. Gestione della Memoria (1) Dove siamo. Dove siamo. Operating Systems and Distributed Systems. Operating Systems and Distributed Systems

Dove siamo. Gestione della Memoria (1) Dove siamo. Dove siamo. Operating Systems and Distributed Systems. Operating Systems and Distributed Systems Dove siamo Gestione della Memoria (1) Dove siamo Dove siamo Gestione della memoria (vista utente) exec() shmalloc() sbrk() getrlimit() File Mgr UNIX Device Mgr Mgr Mgr Application Program Hardware Alloc()

Dettagli

Lezione 16. Esercizio 2 (paginazione( di windows) di Linux) 1: soluzione. Esercitazione finale. 10 page faults 5 soft faults

Lezione 16. Esercizio 2 (paginazione( di windows) di Linux) 1: soluzione. Esercitazione finale. 10 page faults 5 soft faults Lezione Esercizio (paginazione( di windows) Esercitazione finale Sistema operativo con paginazione windows-like con: frame per le pagine attive unita di tempo per la permanenza nelle pagine in attesa Sequenza

Dettagli

SISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06.

SISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06. SISTEMI OPERATIVI 06.a Il Nucleo Nucleo di un SO Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher 1 Architettura di base dei SO Due le strutture di riferimento: a

Dettagli

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

Nota: lo studente si ricordi di inizializzare i valori delle variabili semaforo usate nella sua soluzione. Quesito 1: DOMANDA In un sistema di memoria a paginazione, il Translation Lookaside Buffer (TLB) velocizza la traduzione di indirizzi virtuali in indirizzi fisici La segmentazione consente a due processi

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il sistema operativo Con il termine sistema operativo si intende l insieme di programmi e librerie che opera direttamente sulla macchina fisica mascherandone le caratteristiche specifiche

Dettagli

Sistemi Operativi Da Unix a GNU/Linux (parte 2)

Sistemi Operativi Da Unix a GNU/Linux (parte 2) Sistemi Operativi Da Unix a GNU/Linux Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Gestione della memoria 1 Massima semplicità per massima portabilità

Dettagli

Sistemi Operativi 1. Lezione IV: Processi e thread. Mattia Monga. 11 marzo 2008

Sistemi Operativi 1. Lezione IV: Processi e thread. Mattia Monga. 11 marzo 2008 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 11 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

La gestione della memoria su IA-32. Lez. 32 Sistemi Operativi

La gestione della memoria su IA-32. Lez. 32 Sistemi Operativi La gestione della memoria su IA-32 Lez. 32 Sistemi Operativi Preliminari In protected mode, IA-32 prevede uno spazio di memoria fisica di 4 Gbyte (2 32 bytes) È uno spazio lineare (non segmentato) con

Dettagli

Sistemi di Calcolo (A.A ) Corso di Laurea in Ingegneria Informatica e Automatica Sapienza Università di Roma

Sistemi di Calcolo (A.A ) Corso di Laurea in Ingegneria Informatica e Automatica Sapienza Università di Roma Sistemi di Calcolo (.. 2014-2015) Corso di Laurea in Ingegneria Informatica e utomatica Sapienza Università di Roma Esercizi riepilogativi sulla seconda parte del Modulo I Eccezioni e processi Domanda

Dettagli

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

Sistemi Operativi Esercizi File System. Docente: Claudio E. Palazzi Sistemi Operativi Esercizi File System Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Appello AE-2 del 14/9/2005 Esercizi di ricapitolazione Sistemi Operativi - C. Palazzi 93 Soluzione Esercizi di

Dettagli

Basi di Dati e Sistemi Informativi. Organizzazione fisica dei dati. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale

Basi di Dati e Sistemi Informativi. Organizzazione fisica dei dati. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Giuseppe Loseto Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Struttura DBMS Gestore delle interrogazioni Decide le strategie di accesso ai dati per rispondere alle interrogazioni Gestore

Dettagli

Il Sistema Operativo Ripasso

Il Sistema Operativo Ripasso ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Concetti di base Sistema Operativo Risorse Funzioni e Struttura Bootstrap, Kernel, Shell Gestione dei Processi Processo e PCB Algoritmi

Dettagli

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it e 11 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

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

Università degli Studi di Padova - Corso di Laurea in Informatica Università degli Studi di Padova - 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.

Dettagli