Concetti fondamentali Paginazione su richiesta (Demand paging) Algoritmi di sostituzione delle pagine Algoritmi di allocazione dei frame working-set

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Concetti fondamentali Paginazione su richiesta (Demand paging) Algoritmi di sostituzione delle pagine Algoritmi di allocazione dei frame working-set"

Transcript

1 Descrivere i vantaggi di un sistema a memoria virtuale Concetti fondamentali Paginazione su richiesta (Demand paging) Algoritmi di sostituzione delle pagine Algoritmi di allocazione dei frame working-set 9.2 Silberschatz, Galvin and Gagne

2 Memoria Virtuale separazione tra spazio di memoria logico (utente) e spazio di memoria fisico (sistema). Solo parte del programma deve necessariamente risiedere in memoria durante lʼesecuzione Lo spazio degli indirizzi logici puoʼ essere molto piuʼ grande dello spazio degli indirizzi fisici Lo spazio degli indirizzi puoʼ essere condiviso da piuʼ processi I processi possono essere gestiti in maniera piuʼ efficiente Implementazione della Memoria Virtuale: Paginazione su richiesta (Demand paging) Segmentazione su richiesta (Demand segmentation) 9.3 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

3 9.5 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

4 Portare una pagina in memoria solo quando necessario Riduzione dellʼ I/O Riduzione della memoria necessaria Tempi di risposta piuʼ rapidi Piuʼ utenti Una pagina eʼ necessaria esiste un riferimento Se il riferimento eʼ illegale abort Se non eʼ in memoria caricamento della pagina Lazy swapper una pagina non viene mai portata in memoria se non quando eʼ necessaria Swapper che gestisce le pagine prende il nome di pager 9.7 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

5 Ogni elemento della tabella delle pagine ha un bit di validitaʼ associato (v in-memoria, i non-in-memoria) Inizialmente ogni bit di validitaʼ eʼ posto a i Frame #. valid-invalid bit v v v v i page table i i Quando un indirizzo viene tradotto, se il bit di validitaʼ di un riferimento eʼ i page fault 9.9 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

6 Quando si indirizza una pagina per la prima volta (non in memoria) si genera unʼinterruzione (trap): page fault 1. SO controlla se: Riferimento illegale abort Riferimento non in memoria 2. Sceglie un frame libero 3. Swap della pagina nel frame 4. Aggiorna le tabelle delle pagine 5. Pone il bit di validazione a v 6. Ricarica lʼistruzione che ha causato il page fault 9.11 Silberschatz, Galvin and Gagne 2005 Ripristino dellʼistruzione possibili complicazioni Esempio: Istruzione che muove dati oltre il limite delle pagine block move Operazioni autoreferenziali 9.12 Silberschatz, Galvin and Gagne

7 9.13 Silberschatz, Galvin and Gagne 2005 Tasso di Page Fault 0 p 1.0 if p = 0 nessun page fault if p = 1, ogni indirizzamento causa page fault Tempo Effettivo di Accesso (EAT) EAT = (1 p) x accesso in memory + p (overhead di page fault + swap page out + swap page in + overhead di ripristino ) 9.14 Silberschatz, Galvin and Gagne

8 Tempo di accesso in Memoria = 200 nanosec. Tempo medio di servizio di page-fault = 8 msec. EAT = (1 p) x p (8 msec) = (1 p) x p x 8,000,000 = p x 7,999,800 nanosec. Se un indirizzamento ogni 1,000 causa page fault, allora EAT = 8.2 microsec. Cioeʼ un fattore di rallentamento pari a 40!! 9.15 Silberschatz, Galvin and Gagne 2005 La memoria virtuale determina ulteriori vantaggi. Es.: creazione dei processi con Copy-on-Write 9.16 Silberschatz, Galvin and Gagne

9 Copy-on-Write (COW): processo padre e processo figlio condividono, inizialmente, le stesse pagine di memoria solo se uno di loro modifica una pagina condivisa, di tale pagina viene creata copia privata COW velocizza la fase di creazione dei processi, in quanto solo le pagine modificate vengono ricopiate 9.17 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

10 Copy page C 9.19 Silberschatz, Galvin and Gagne 2005 Sostituzione delle pagine Cerca una pagina in memoria ma non in uso e copiala nellʼarea di swap del disco (swap out) algoritmi performance lʼalgoritmo ottimale dovrebbe minimizzare il numero di page fault Una stessa pagina puoʼ venire caricata in memoria in diversi momenti 9.20 Silberschatz, Galvin and Gagne

11 Uso di un bit di modifica (dirty bit) per ridurre lʼoverhead dovuto allo swap out delle pagine solo pagine modificate vengono ricopiate su disco In virtuʼ del criterio di sostituzione delle pagine, la memoria virtuale e fisica possono avere dimensioni anche notevolmente differenti 9.21 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

12 1. Trova la locazione della pagina desiderata su disco 2. Trova un frame libero: - se ne esiste uno, usalo - se tutti I frame sono occupati, usa un algoritmoo di sostituzione delle pagine per selezionare il frame da liberare 3. Copia la pagina desiderata nel frame liberato; aggiorna le tabelle delle pagine e dei frame 4. Ripristina il processo per lʼesecuzione 9.23 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

13 Scopo: minimizzare il tasso di page-fault Valutazione fatta considerando sequenze campione di riferimenti alle pagine (stringa dei riferimento) e calcolando il numero di fage fault determinati da tale sequenza Consideriamo la stringa dei riferimenti: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

14 Stringa dei riferimenti: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 3 frame (3 pagine possono essere in memoria contemporaneamente) page fault 4 frame page fault Anomalia di Belady: piuʼ frame e piuʼ page fault 9.27 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

15 9.29 Silberschatz, Galvin and Gagne 2005 Sostituisce la pagina che, tra quelle presenti in memoria, verraʼ usata piuʼ tardi Esempio con 4 frame 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, page fault 4 5 Problema: dovremmo sapere I riferimenti futuri Performance di riferimento per il confronto degli algoritmi 9.30 Silberschatz, Galvin and Gagne

16 9.31 Silberschatz, Galvin and Gagne 2005 Stringa dei Riferimenti: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, Implementazione mediante contatori Un contatore per pagina; ad ogni riferimento, si copia il clock nel contatore 9.32 Silberschatz, Galvin and Gagne

17 9.33 Silberschatz, Galvin and Gagne 2005 Implementazione mediante Stack stack dei numeri di pagina implementato mediante una lista doppiamente linkata Ad ogni riferimento di pagina giaʼ in memoria: Muovi lʼelemento corrispondente al top dello stack Modifica di 6 puntatori tempo di ricerca ridotto 9.34 Silberschatz, Galvin and Gagne

18 9.35 Silberschatz, Galvin and Gagne 2005 Bit dei riferimenti Un bit, inizialmente =0, associato ad ogni pagina Quando si indirizza una pagina il bit eʼ posto a 1 Sostituzione: una pagina con bit di riferimento a 0 (se cʼeʼ) Non si tiene conto dellʼordine temporale dei riferimenti Bit dei riferimenti memorizzati ad intervalli regolari Seconda chance Bit dei riferimenti Sostituzione circolare (Clock replacement) se la pagina da sostituire (in ordine circolare) ha il bit a 1: Poni il bit a 0 Lascia la pagina in memoria Applica la stessa regola provando a sostituire la pagina che segue (nellʼordine circolare) 9.36 Silberschatz, Galvin and Gagne

19 9.37 Silberschatz, Galvin and Gagne 2005 Conta il numero di rifererimenti fatti ad una pagina ad in intervalli di tempo di lunghezza prefissata Algoritmo LFU: sostituisci pagina il cui contatore presenta il minimo valore Problema: pagine con molti riferimenti in un breve intervallo di tempo, rimangono in memoria anche una volta divenute obsolete MFU Algorithm: il contrario di LFU la pagina con il valore piuʼ basso probabilmente eʼ stata caricata da poco e saraʼ usata frequentemente nei prossimi indirizzamenti 9.38 Silberschatz, Galvin and Gagne

20 Ogni processo ha bisogno di un numero minimo di pagine in memoria alcune istruzioni potrebbero indirizzare memoria che eʼ a cavallo di piuʼ pagine Politiche di allocazione Allocazione statica Allocazione dinamica (o a prioritaʼ) 9.39 Silberschatz, Galvin and Gagne 2005 Allocazione uniforme Es. : 100 frame e 5 processi. Ogni processo riceve 20 frame. Allocazione proporzionale in funzione della taglia dei processi s i = taglia del processo p i S = s i m = numero totale di frame m = 64 s = 10 s i 2 a i = allocazione per p i = s i S m = a1 = a2 = Silberschatz, Galvin and Gagne

21 Allocazione proporzionale, basata su prioritaʼ anzicheʼ taglia Se P i genera un page fault, Sostituisci uno dei suoi frame Sostituisci il frame di un processo con prioritaʼ piuʼ bassa 9.41 Silberschatz, Galvin and Gagne 2005 Sostituzione Globale il frame per la sostituzione eʼ scelto tra tutti I frame; un processo puoʼ usare un frame allocato ad un altro processo Sostituzione Locale ogni processo puoʼ operare sostituzione di pagina solo nei frame ad esso giaʼ allocati Il sistema puoʼ modificare la quantitaʼ di frame allocati ad un processo dinamicamente 9.42 Silberschatz, Galvin and Gagne

22 Se un processo non ha abbastanza pagine, il tasso di page fault puoʼ diventare molto alto. Conseguenze: Sottoutilizzo della CPU SO pensa che si possa aumentare il livello di multiprogrammazione Un altro processo viene aggiunto Thrashing maggior parte del tempo speso in operazioni di swapping di pagine 9.43 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

23 Percheʼ la paginazione su richiesta funziona? Criterio delle localitaʼ I Processi migrano da una localitaʼ allʼaltra Le Localitaʼ di un processo possono essere sovrapposte Percheʼ si ha trashing? Taglia totale delle localitaʼ > taglia della memoria 9.45 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

24 Δ finestra dellʼinsieme di lavoro a numero fissato di riferimenti di pagina Es: 10,000 istruzioni WSS i (insieme di lavoro del processo P i ) = #pagine indirizzate nei precedenti Δ Δ troppo piccolo puoʼ non contenere lʻintera localitaʼ Δ troppo grande puoʼ contenere piuʼ localitaʼ Δ = tutte le pagine usate dal processo D = Σ WSS i #totale di frame richiesti se D > m Thrashing Criterio: se D > m, sospendi uno dei processi 9.47 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

25 Approssimazione mediante un timer + bit di riferimento Es.: Δ = 10,000 Il Timer genera un segnale ogni 5000 unitaʼ di tempo 2 bit associati ad ogni pagina memorizzano i precedenti bit di riferimento Ad ogni interruzione del timer i bit di riferimento delle pagine vengono copiati e azzerati Se almeno uno dei bit in memoria = 1 pagina nellʼinsieme di lavoro Eʼ unʼapprossimazione poco accurata Maggiore precisione: 10 bit e interruzioni frequenti (es.: ogni 1000 unitaʼ di tempo) 9.49 Silberschatz, Galvin and Gagne 2005 Fissa un tasso accetabile di page-fault Se il tasso attuale eʼ basso, il processo perde frame Se il tasso attuale eʼ alto,al processo vengono allocati piuʼ frame 9.50 Silberschatz, Galvin and Gagne

26 I/O con file mappati in memoria permette la gestione dei file in termini di accessi alla memoria. Un blocco del disco viene mappato ad una pagina di memoria Un file viene inizialmente letto mediante paginazione a richiesta. Una porzione del file della dimensione di una pagine viene inizialmente trasferita del file-system in una pagina fisica. Ogni successiva istruzione di lettura/scrittura viene trattata come una operazione di accesso alla memoria. I/O semplificato Accesso alla memoria piuttosto che read()write() Piuʼ processi possono mappare lo stesso file in memoria Condivisione delle pagine 9.51 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

27 9.53 Silberschatz, Galvin and Gagne 2005 Trattata in maniera diversa dalla memoria utente Spesso allocata da uno spazio contiguo di memoria libera Il Kernel necessita di memoria per strutture dati di diverse dimensioni (spesso inferiore ad una pagina) Necessitaʼ di allocazioni contigue 9.54 Silberschatz, Galvin and Gagne

28 Allocata memoria da segmenti di taglia predefinita e in pagine di memoria contigue Memoria allocata in blocchi la cui dimensione eʼ una potenza-di-2 Le richieste vengono arrotondate alla minima potenza di due superiore sufficiente Quando si richiede meno memoria, il blocco di memoria viene suddiviso in due buddy della potenza di 2 inferiore Si continua con le suddivisioni fino alla generazione di blocchi di taglia appropriata 9.55 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

29 Slab : una o piuʼ pagine contigue contiguous pages Cache : uno o piuʼ slab Ogni cache corrisponde ad una struttura dati specifica del kernel Ogni cache contiene oggeti istanze della struttura dati Alla creazione, la cache contine oggetti vuoti Lʼallocazione, cambia lo stato dellʼoggetto ad usato Slab pieno il prossimo oggetto allocato da uno slab vuoto Nessuno slab vuoto allocazione di un nuovo slab Benefici: Nessuna frammentazione, allocazione rapida 9.57 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne

30 Prepaging Scopo: ridurre lʼalto tasso di page falut che si verifica nelle prime fasi dellʼesecuzione di un processo Schema: carica un certo numero delle pagine che un processo necessiteraʼ prima che ad esse venga fatto accesso Problema: se le pagine prepaginate non vengono utilizzate, la memoria e le operazioni di I/O eseguite risultano perse Se s pagine sono prepaginate e solo α di esse vengono usate Page fault evitati = s * α Costo di prepaginazione = s * (1- α) (unnecessary pages)? α ~ 0 prepaginazione eʼ deleteria 9.59 Silberschatz, Galvin and Gagne 2005 TLB Reach Quantitaʼ di memoria accessibile dalla TLB TLB Reach = (TLB Size) X (Page Size) Idealmente, lʼinsieme di lavoro di ogni processo eʼ nella TLB Altrimenti, alto tasso di page fault Soluzioni: Aumenta la taglia delle pagine Aumenta la frammentazione interna Pagine di taglia variabile Riduce il rischio di frammentazione interna 9.60 Silberschatz, Galvin and Gagne

31 Int[128,128] data; Ogni riga in una pagina diversa Programma 1 for (j = 0; j <128; j++) for (i = 0; i < 128; i++) data[i,j] = 0; 128 x 128 = 16,384 page fault Programma 2 for (i = 0; i < 128; i++) for (j = 0; j < 128; j++) data[i,j] = 0; 128 page fault 9.61 Silberschatz, Galvin and Gagne 2005 I/O Interlock Alcune pagine devono essere bloccate in memoria Es.: I/O Pagine usate per copiare un file da un dispositivo devono essere bloccate in modo da evitare che vengano swapped out prima della ricezione dei dati dal dispositivo I/O 9.62 Silberschatz, Galvin and Gagne

32 9.63 Silberschatz, Galvin and Gagne

GESTIONE DELLA MEMORIA CENTRALE

GESTIONE DELLA MEMORIA CENTRALE GESTIONE DELLA MEMORIA CENTRALE E MEMORIA VIRTUALE 7.1 Gestione della memoria Segmentazione Segmentazione con paginazione Memoria Virtuale Paginazione su richiesta Sostituzione delle pagine Trashing Esempi:

Dettagli

La memoria virtuale 9.2. Sistemi Operativi a.a. A.A. 2009-10 2013-2014

La memoria virtuale 9.2. Sistemi Operativi a.a. A.A. 2009-10 2013-2014 La Memoria Virtuale La memoria virtuale Background Paginazione su richiesta Copy on Write Sostituzione delle pagine Allocazione dei frame Thrashing File mappati in memoria Allocazione di memoria del kernel

Dettagli

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato. Il File System Il file system È quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti

Dettagli

Memoria Virtuale. Lezione 29 Sistemi Operativi

Memoria Virtuale. Lezione 29 Sistemi Operativi Memoria Virtuale Lezione 29 Sistemi Operativi I Principi Abbiamo sinora assunto che durante l esecuzione di un programma, lo stesso debba risiedere completamente in MC Intorno alla metà degli anni 70 viene

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

I processi Unix. Entry della tabella dei processi

I processi Unix. Entry della tabella dei processi I processi Unix Ciascun processo Unix può evolvere in stato utente o in stato kernel. Il passaggio dall uno all altro stato avviene mediante SVC. Poiché il processo può andare in attesa di un evento nell

Dettagli

Memoria virtuale. Ivan Scagnetto. Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2007-2008

Memoria virtuale. Ivan Scagnetto. Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2007-2008 Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 007-008 Copyright c 000 0 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella sua integrità

Dettagli

9. Memoria Virtuale. 9. Memoria Virtuale. 9. Memoria Virtuale

9. Memoria Virtuale. 9. Memoria Virtuale. 9. Memoria Virtuale 1 (es. 1) Consideriamo un processo con m frame inizialmente vuoti. La stringa di riferimento è lunga p e contiene riferimenti a n pagine diverse. Per un qualsiasi algoritmo di rimpiazzamento: a) qual è

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici La memoria gerarchica La cache: come migliorare le prestazioni Ricapitolando (1) La memoria principale e la cache sono scomposte in blocchi di uguale dimensione L indirizzo del

Dettagli

Memoria virtuale. Riassumendo Meccanismo di traduzione indirizzi con tabella TLB Ogni processo ha la sua PMT Politiche della memoria virtuale E

Memoria virtuale. Riassumendo Meccanismo di traduzione indirizzi con tabella TLB Ogni processo ha la sua PMT Politiche della memoria virtuale E Spazio di indirizzamento virtuale Riprendiamo lo spazio di indirizzamento virtuale del programma di inversione stringa LO SPAZIO DI INDIRIZZAMENTO VIRTUALE DI UN PROCESSO É Spazio di indirizzamento virtuale

Dettagli

Memoria Virtuale. è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale

Memoria Virtuale. è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale Memoria Virtuale Memoria Virtuale Definizione è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale Considerazioni permette di eseguire in concorrenza

Dettagli

SISTEMI OPERATIVI. La memoria virtuale. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)

SISTEMI OPERATIVI. La memoria virtuale. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II) SISTEMI OPERATIVI (MODULO DI INFORMATICA II) La memoria virtuale Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) Università degli Studi di Bergamo a.a. 2012-13 Sommario La memoria virtuale

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

Memory management 49

Memory management 49 Memory management 49 Gestione della memoria I processi Unix lavorano su uno spazio di indirizzamento virtuale (Es. 0,..., 2 32 1 su indirizzi i i a 32 bit); Ogni processo ha uno spazio indirizzi separato

Dettagli

Memoria. Sistemi Operativi Giuseppe Prencipe. Memoria virtuale. Gestione della memoria. Paginazione su richiesta. Paginazione su richiesta

Memoria. Sistemi Operativi Giuseppe Prencipe. Memoria virtuale. Gestione della memoria. Paginazione su richiesta. Paginazione su richiesta Sistemi Operativi Giuseppe Prencipe Memoria Virtuale Memoria Abbiamo visto varie tecniche per gestire la memoria Permettono la presenza contemporanea di più processi in memoria La memoria virtuale è una

Dettagli

Gestione della Memoria

Gestione della Memoria Gestione della Memoria Idealmente la memoria dovrebbe essere grande veloce non volatile Gerarchia di memorie Disco: capiente, lento, non volatile ed economico Memoria principale: volatile, mediamente grande,

Dettagli

Sistemi Operativi. 5 Gestione della memoria

Sistemi Operativi. 5 Gestione della memoria Gestione della memoria Compiti del gestore della memoria: Tenere traccia di quali parti della memoria sono libere e quali occupate. Allocare memoria ai processi che ne hanno bisogno. Deallocare la memoria

Dettagli

SISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007

SISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007 2007 SISTEMI OPERATIVI Gestione della memoria Domande di verifica Luca Orrù Centro Multimediale Montiferru 18/06/2007 Gestione della memoria 1. Si descriva il concetto di memoria virtuale (esame del 19-06-2006)

Dettagli

Sistemi Operativi. ugoerr+so@dia.unisa.it 10 LEZIONE MEMORIA VIRTUALE CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Opertivi 2007/08

Sistemi Operativi. ugoerr+so@dia.unisa.it 10 LEZIONE MEMORIA VIRTUALE CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Opertivi 2007/08 Sistemi Operativi Docente: Ugo Erra ugoerr+so@dia.unisa.it 10 LEZIONE MEMORIA VIRTUALE CORSO DI LAUREA TRIENNALE IN INFORMATICA UNIVERSITA DEGLI STUDI DELLA BASILICATA Sommario della lezione Introduzione

Dettagli

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca

Dettagli

Memorie Caratteristiche principali

Memorie Caratteristiche principali Memorie Caratteristiche principali Locazione: processore, interna (principale), esterna (secondaria) Capacità: dimensione parola, numero di parole Unità di trasferimento: parola, blocco Metodo di accesso:

Dettagli

1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame.

1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame. 1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame. (a) Da quanti bit è costituito l indirizzo logico? (b) Da quanti bit

Dettagli

La Gestione della Memoria

La Gestione della Memoria La Gestione della Memoria Gestione della Memoria Centrale A livello hardware: ogni sistema di elaborazione è equipaggiato con un unico spazio di memoria. Compiti del Sistema Operativo: allocare memoria

Dettagli

Sistemi Operativi Gestione della Memoria (parte 2)

Sistemi Operativi Gestione della Memoria (parte 2) Sistemi Operativi Gestione della Memoria Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Memoria Virtuale 1 Una singola partizione o anche l intera

Dettagli

Gestione della memoria. Paginazione Segmentazione Segmentazione con paginazione

Gestione della memoria. Paginazione Segmentazione Segmentazione con paginazione Gestione della memoria Paginazione Segmentazione Segmentazione con paginazione Modello di paginazione Il numero di pagina serve come indice per la tabella delle pagine. Questa contiene l indirizzo di base

Dettagli

Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia

Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Gestione della memoria: 1. Binding degli indirizzi. Partizionamento

Dettagli

Desiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Tecniche impiegate. Memoria cache, struttura. Metodo:

Desiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Tecniche impiegate. Memoria cache, struttura. Metodo: Connessioni tra livelli di memoria Tape Registers Cache Main memory Magnetic disk Optical disk (Architettura degli Elaboratori) Gerarchie di memorie 1 / 58 Metodo: Desiderata: memoria capiente e veloce

Dettagli

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni Sistemi operativi real time basati su Linux: gestione delle risorse e dei processi. Tesina per l esame di Sistemi Operativi a cura di. Prof. Aldo Franco Dragoni Corso di laurea in Ingegneria Informatica

Dettagli

LA# MEMORIA# VIRTUALE#

LA# MEMORIA# VIRTUALE# SISTEMI&OPERATIVI& AA&2012&/&2013& LA# MEMORIA# VIRTUALE# Mo-vazioni#» Spesso&non&tu8e&le&funzioni&di&un&programma& sono&ublizzate&durante&l esecuzione& Procedure&per&la&gesBone&di&errori&poco&frequenB&

Dettagli

9. Memoria Virtuale. 9.1 Memoria Virtuale: introduzione

9. Memoria Virtuale. 9.1 Memoria Virtuale: introduzione 1 9. Memoria Virtuale Concetti di base Demand Paging (Paginazione su richiesta) Prestazioni del Demand Paging Rimpiazzamento delle pagine Algoritmi di rimpiazzamento Allocazione dello spazio in Memoria

Dettagli

3. Terza esercitazione autoguidata: progetto gestione voli

3. Terza esercitazione autoguidata: progetto gestione voli 9 3. Terza esercitazione autoguidata: progetto gestione voli Qui ci occupiamo di scrivere un programma abbastanza lungo, dedicato alla gestione di una tabella di dati. Una tabella e una struttura dati

Dettagli

Memoria Virtuale. è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale

Memoria Virtuale. è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale Memoria Virtuale 1 Memoria Virtuale Definizione è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale Considerazioni permette di eseguire in concorrenza

Dettagli

Laboratorio di Algoritmi e Strutture Dati. La gestione della memoria dinamica Heap

Laboratorio di Algoritmi e Strutture Dati. La gestione della memoria dinamica Heap Laboratorio di Algoritmi e Strutture Dati La gestione della memoria dinamica Heap Proff. Francesco Cutugno e Luigi Lamberti 2009 Cenni sui Processi Si definisce Programma un insieme di Istruzioni destinate

Dettagli

Varie tipologie di memoria

Varie tipologie di memoria Varie tipologie di memoria velocita` capacita` registri CPU memoria cache memoria secondaria (Hard Disk) Gestione della memoria Una parte della viene riservata per il SO I programmi per poter essere eseguiti

Dettagli

Memoria virtuale e ottimizzazione

Memoria virtuale e ottimizzazione SISTEMI OPERATIVI 08.b Memoria virtuale e ottimizzazione Memoria virtuale e ottimizzazione Supporto fornito dall hardware MV con Paginazione (page table) MV con Segmentazione MV con Segmentazione e Paginazione

Dettagli

La gestione dell I/O (Cap. 5, Tanenbaum)

La gestione dell I/O (Cap. 5, Tanenbaum) La gestione dell I/O (Cap. 5, Tanenbaum) Prestazioni e generalità Gestione software Supporti su disco Orologi Lezione Architettura degli Elaboratori - 1 - A. Sperduti Pagina 1 Prestazioni e generalità

Dettagli

Modello della memoria in Unix. Unix: Gestione della Memoria. Gestione della memoria in UNIX - fondamenti. Gestione della memoria in UNIX - storia

Modello della memoria in Unix. Unix: Gestione della Memoria. Gestione della memoria in UNIX - fondamenti. Gestione della memoria in UNIX - storia Modello della memoria in Unix I processi Unix lavorano su uno spazio di indirizzamento virtuale Es. 0,..., 2 32 1 su indirizzi a 32bit Ogni processo ha uno spazio indirizzi separato per i segmenti text,

Dettagli

Lezione 19 Memoria Virtuale

Lezione 19 Memoria Virtuale Lezione 9 Memoria Virtuale http://www.dii.unisi.it/~giorgi/didattica/arcal All figures from Computer Organization and Design: The Hardware/Software Approach, Second Edition, by David Patterson and John

Dettagli

Il supporto al Sistema Operativo

Il supporto al Sistema Operativo Il supporto al Sistema Operativo Obiettivi e funzioni del S.O. Il Sistema Operativo è il software che controlla l esecuzione dei programmi e amministra le risorse del sistema. Ha due obiettivi principali:

Dettagli

Sistemi Operativi II Corso di Laurea in Ingegneria Informatica

Sistemi Operativi II Corso di Laurea in Ingegneria Informatica www.dis.uniroma1.it/~midlab Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Prof. Roberto Baldoni Gestione della memoria Gestione della memoria: 1. Binding degli indirizzi 2. Partizionamento

Dettagli

Sistemi Operativi Kernel

Sistemi Operativi Kernel Approfondimento Sistemi Operativi Kernel Kernel del Sistema Operativo Kernel (nocciolo, nucleo) Contiene i programmi per la gestione delle funzioni base del calcolatore Kernel suddiviso in moduli. Ogni

Dettagli

Memoria Virtuale. Lezione 10-11 Sistemi Operativi

Memoria Virtuale. Lezione 10-11 Sistemi Operativi Memoria Virtuale Lezione 10-11 Sistemi Operativi Problemi implementativi Dal punto di vista del SO la realizzazione di un sistema di VM richiede la soluzione di una serie di problemi: Individuazione di

Dettagli

La Gestione delle risorse Renato Agati

La Gestione delle risorse Renato Agati Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File

Dettagli

GENERAZIONE PROCESSO FIGLIO (padre attende terminazione del figlio)

GENERAZIONE PROCESSO FIGLIO (padre attende terminazione del figlio) GENERAZIONE PROCESSO FIGLIO (padre attende terminazione del figlio) #include void main (int argc, char *argv[]) { pid = fork(); /* genera nuovo processo */ if (pid < 0) { /* errore */ fprintf(stderr,

Dettagli

Informatica Teorica. Macchine a registri

Informatica Teorica. Macchine a registri Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.

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

Dettagli

Gestione della memoria principale

Gestione della memoria principale Gestione della memoria principale Gestione della memoria principale Background Swapping Allocazione contigua della memoria Segmentazione Paginazione Struttura della tabella delle pagine Esempi Le architetture

Dettagli

Lezione 14. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata

Lezione 14. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata Lezione 14 Sistemi operativi 9 giugno 2015 System Programming Research Group Università degli Studi di Roma Tor Vergata SO 15 14.1 Di cosa parliamo in questa lezione? Ottimizzazione degli accessi alla

Dettagli

Sicurezza del File System

Sicurezza del File System Sicurezza del File System Luigi Catuogno luicat@dia.unisa.it BARONISSI 30 maggio 2002 Cos è un file system Luigi Catuogno - Sicurezza del File System 2 1 Cos è il filesystem Una parte del sistema operativo

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Esercitazione E1 Scheduling, deadlock, monitor

Esercitazione E1 Scheduling, deadlock, monitor Esercitazione E1 Scheduling, deadlock, monitor Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 E1-1 Scheduling I cinque processi A,B,C,D,E richieste di CPU si presentano nell ordine. Le loro richieste

Dettagli

interoperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.

interoperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse. Capitolo 7 Le infrastrutture SoftWare Funzioni del sistema operativo Rendere utilizzabili le risorse fisiche presenti nel sistema informatico: correttezza e precision; anywhere, anytime; affidabilità,

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1 IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo. PROBLEMA. Un albergo di una grande città intende gestire in modo automatizzato sia le prenotazioni sia i soggiorni e realizzare un database. Ogni cliente viene individuato, tra l altro, con i dati anagrafici,

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Capitolo 9: Memoria centrale

Capitolo 9: Memoria centrale Capitolo 9: Memoria centrale Concetti generali. Swapping Allocazione contigua di memoria. Paginazione. Segmentazione. Segmentazione con paginazione. 9.1 Concetti generali Per essere eseguito un programma

Dettagli

Architettura di un sistema di calcolo

Architettura di un sistema di calcolo Richiami sulla struttura dei sistemi di calcolo Gestione delle Interruzioni Gestione della comunicazione fra processore e dispositivi periferici Gerarchia di memoria Protezione. 2.1 Architettura di un

Dettagli

Secondo biennio Articolazione Informatica TPSIT Prova Quarta

Secondo biennio Articolazione Informatica TPSIT Prova Quarta Sistema operativo: gestione memoria centrale La Memoria Virtuale consente di superare i limiti della Memoria Centrale : A. no B. a volte C. si, ma non sempre e' adeguata D. si, attraverso tecniche di gestione

Dettagli

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3

Dettagli

Capitolo 11 -- Silberschatz

Capitolo 11 -- Silberschatz Implementazione del File System Capitolo 11 -- Silberschatz Implementazione del File System File system: Definizione dell aspetto del sistema agli occhi dell utente Algoritmi e strutture dati che permettono

Dettagli

Sommario. G. Piscitelli

Sommario. G. Piscitelli Sommario Memory manager La memoria centrale: requisiti della gestione Dal programma sorgente all'esecuzione: spazio degli indirizzi e caricamento Indirizzamento e traduzione degli indirizzi: Memory Management

Dettagli

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni Sistemi operativi real time basati su Linux: gestione delle risorse e dei processi. Tesina per l esame di Sistemi Operativi a cura di. Prof. Aldo Franco Dragoni Corso di laurea in Ingegneria Informatica

Dettagli

Introduzione. il programmatore divideva il programma in diversi pezzi, chiamati overlay, ognuno dei quali poteva stare in memoria;

Introduzione. il programmatore divideva il programma in diversi pezzi, chiamati overlay, ognuno dei quali poteva stare in memoria; Appunti di Informatica La memoria virtuale Introduzione 1 La paginazione 2 Meccanismi di paginazione 5 La paginazione su richiesta. 11 Politiche per la sostituzione delle pagine.. 12 La dimensione delle

Dettagli

Memoria Cache. La memoria cache

Memoria Cache. La memoria cache Testo di rif.to: [Congiu] 6.1 (pg. 193 199) Memoria Cache 06.a Memoria associativa Cache completamente associativa Cache a mappatura diretta Cache set-associativa a n-vien Cache nell Xscale PXA-255 La

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Gestione della memoria centrale 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide

Dettagli

2.2 Scheduling in Linux

2.2 Scheduling in Linux Appunti di Sistemi Operativi 28 2.2 Scheduling in Linux In generale, i processi possono essere classificati secondo due schemi: CPU bound vs. I/O bound; interattivi vs. batch vs. real-time. Le due classi

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Analisi Object Oriented ed Elementi di Programmazione OO Origini Le metodologie ad oggi nascono negli anni 70 ma si affermano solo nelgi anni 80 grazie alla nascita dei linguaggi

Dettagli

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria

Dettagli

STRUTTURE DEI SISTEMI DI CALCOLO

STRUTTURE DEI SISTEMI DI CALCOLO STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema

Dettagli

La memoria virtuale. La gerarchia di memorie. Indirizzo fisico. Memoria virtuale. Architetture Avanzate dei Calcolatori. Valeria Cardellini

La memoria virtuale. La gerarchia di memorie. Indirizzo fisico. Memoria virtuale. Architetture Avanzate dei Calcolatori. Valeria Cardellini La memoria Architetture Avanzate dei Calcolatori Valeria Cardellini Nelle lezioni precedenti { Memoria La gerarchia di memorie Registri Istruzioni, operandi L Cache Blocchi L2 Cache Blocchi Memoria Pagine

Dettagli

Fondamenti di Informatica: Sistemi Operativi 1. Introduzione

Fondamenti di Informatica: Sistemi Operativi 1. Introduzione Introduzione Fondamenti di Informatica: Sistemi Operativi 1 Elaboratori necessitano di SOFTWARE SOFTWARE DI SISTEMA (SISTEMI OPERATIVI): fanno funzionare le varie componenti del computer e permettono all

Dettagli

esercizi memoria virtuale 2004-2008 maurizio pizzonia - sistemi operativi

esercizi memoria virtuale 2004-2008 maurizio pizzonia - sistemi operativi esercizi memoria virtuale 1 tabella delle pagine (8.1) data la tabella delle pagine (pagina di 1024 bytes) di un processo tradurre i seguenti riferimenti in indirzzi fisici: 1052, 5499, 2221 2 dove mettiamo

Dettagli

Esercitazione E2 Memoria virtuale

Esercitazione E2 Memoria virtuale Esercitazione E2 Memoria virtuale Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 E2-1 Memoria virtuale 1 Si consideri un sistema a memoria virtuale con indirizzi virtuali a 32 bit, indirizzi fisici

Dettagli

Ambienti Operativi: Memoria

Ambienti Operativi: Memoria DTI / ISIN / Titolo principale della presentazione 1 Ambienti Operativi: Memoria Amos Brocco, Ricercatore, ISIN / DTI 2 Motivazione Perché studiare come la memoria viene gestita in un sistema operativo

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

= 0, 098 ms. Da cui si ricava t 2 medio

= 0, 098 ms. Da cui si ricava t 2 medio 1. Una macchina ha uno spazio degli indirizzi a 32 bit e una pagina di 8 KB. La tabella delle pagine è completamente nell hardware, con una parola a 32 bit per voce. Quando parte un processo, la tabella

Dettagli

Il contesto! Gestione della Memoria! Reg. di Base e reg. Limite! Associazione tra dati/istruzioni e memoria!

Il contesto! Gestione della Memoria! Reg. di Base e reg. Limite! Associazione tra dati/istruzioni e memoria! Il contesto Gestione della Memoria Per essere eseguiti, i programmi devono essere trasferiti (dal disco) in memoria e tradotti in processi. Obiettivi: accesso rapido e protezione. Accesso rapido La CPU

Dettagli

Memoria. Sistemi Operativi Giuseppe Prencipe. Tipica Gerarchia di Memoria. Gestione della Memoria. Modelli di gestione della memoria

Memoria. Sistemi Operativi Giuseppe Prencipe. Tipica Gerarchia di Memoria. Gestione della Memoria. Modelli di gestione della memoria Sistemi Operativi Giuseppe Prencipe Gestione della Memoria Memoria La memoria è un ampio vettore di parole, ciascuna con il suo indirizzo La CPU preleva le istruzioni dalla memoria (basandosi sul PC) Una

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

Sistemi Operativi (modulo di Informatica II) I processi

Sistemi Operativi (modulo di Informatica II) I processi Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Il concetto di processo Schedulazione dei processi e cambio di contesto

Dettagli

HEX Bin HEX Bin HEX Bin HEX Bin 0 0000 4 0100 8 1000 C 1100 1 0001 5 0101 9 1001 D 1101 2 0010 6 0110 A 1010 E 1110 3 0011 7 0111 B 1011 F 1111

HEX Bin HEX Bin HEX Bin HEX Bin 0 0000 4 0100 8 1000 C 1100 1 0001 5 0101 9 1001 D 1101 2 0010 6 0110 A 1010 E 1110 3 0011 7 0111 B 1011 F 1111 Struttura interna del Sistema Operativo CAP. 7. La gestione della memoria virtuale Il concetto di memoria virtuale Il concetto di memoria virtuale nasce dalla necessità di separare il concetto di spazio

Dettagli

Gerarchie di Memoria

Gerarchie di Memoria Gerarchie di Memoria Sistemi Operativi AA. 2008-09 09 Prof. O Mejri Sommario Le esigenze di memoria Il principio di località dei programmi La gerarchia di memoria Principio di funzionamento della memoria

Dettagli

Processi. Concorrenza. Processi e programmi

Processi. Concorrenza. Processi e programmi Concetto di processo Scheduling dei processi Operazioni sui processi Stati dei processi Esempio in Unix Processi Concorrenza Un sistema operativo consiste in un gran numero di attività che vengono eseguite

Dettagli

Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1

Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1 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

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2 Computazione multi-processo Avere più processi allo stesso momento implica/richiede Processi e Threads Pt. 2 Concorrenza ed efficienza Indipendenza e protezione dei dati ma deve prevedere/permettere anche:

Dettagli

Parte V. Il File System

Parte V. Il File System Parte V Il File System Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 V - 1 Il File System I/O Virtuale: l'accesso alla memoria di massa avviene tramite tramite il SO La memoria di massa è organizzata

Dettagli

memoria virtuale protezione

memoria virtuale protezione Memoria Virtuale Le memorie cache forniscono un accesso veloce ai blocchi di memoria usati più di recente La memoria virtuale fornisce un accesso veloce ai dati sulle memorie di massa usati più di recente.

Dettagli

Caching and Virtual Memory

Caching and Virtual Memory Caching and Virtual Memory Main Points Cache concept Hardware vs. software caches When caches work and when they don t Spatial/temporal locality vs. Zipf workloads Cache Replacement Policies FIFO, MIN,

Dettagli

Il memory manager. Gestione della memoria centrale

Il memory manager. Gestione della memoria centrale Il memory manager Gestione della memoria centrale La memoria La memoria RAM è un vettore molto grande di WORD cioè celle elementari a 16bit, 32bit, 64bit (2Byte, 4Byte, 8Byte) o altre misure a seconda

Dettagli

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU Il sistema operativo Sistema operativo Gestione della CPU Primi elaboratori: Monoprogrammati: un solo programma in memoria centrale Privi di sistema operativo Gestione dell hardware da parte degli utenti

Dettagli

CAP. 6: Nucleo del sistema operativo (La gestione dei processi)

CAP. 6: Nucleo del sistema operativo (La gestione dei processi) Struttura interna del sistema operativo Linux CAP. 6: Nucleo del sistema operativo (La gestione dei processi) Architettura del sistema operativo shell Programmi utente Modo utente Interfaccia delle chiamate

Dettagli

Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore

Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore 5.2 Silberschatz, Galvin and Gagne 2005 1 Massimizzare lʼutilizzo della

Dettagli

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09 SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli

Dettagli

Gestione di files Motivazioni

Gestione di files Motivazioni Gestione di files Motivazioni Un programma in esecuzione legge (sequenzialmente) una sequenza di caratteri prodotti "al volo" dall'utente (tramite tastiera) il programma in esecuzione scrive (sequenzialmente)

Dettagli

1. Spiegare le differenze fra le seguenti modalità di binding degli indirizzi:

1. Spiegare le differenze fra le seguenti modalità di binding degli indirizzi: 1. Spiegare le differenze fra le seguenti modalità di binding degli indirizzi: compile time, load time, execution time. Quale delle modalità precedenti necessita di un supporto hardware per poter essere

Dettagli

Lo scheduling. Tipici schedulatori

Lo scheduling. Tipici schedulatori Lo scheduling Un processo durante la sua evoluzione è o running o in attesa di un evento. Nel secondo caso trattasi della disponibilità di una risorsa (CPU, I/O, struttura dati, ecc.) di cui il processo

Dettagli

ARCHITETTURA FISICA DEL SISTEMA

ARCHITETTURA FISICA DEL SISTEMA PROGETTO EBLA+ L uso dei contenitori EBLAplus ti aiuterà a gestire i tuoi documenti in modo facile e organizzato. Potrai in ogni momento, dal tuo dispositivo mobile, controllare quali documenti compongono

Dettagli

MANUALE UTENTE RIO-42

MANUALE UTENTE RIO-42 MANUALE UTENTE RIO-42 Dispositivo generico di Telecontrollo con 4 ingressi e 2 uscite. Manuale Utente RIO-42 Rev.0 SOMMARIO PRESENTAZIONE... 3 Caratteristiche generali (TODO)... 3 Caratteristiche tecniche...

Dettagli

Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). RCHITETTUR DI UN ELORTORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). MCCHIN DI VON NEUMNN UNITÀ FUNZIONLI fondamentali Processore (CPU) Memoria

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java Fondamenti di Informatica Ingegneria Gestionale Canale AL 1 Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel

Dettagli