Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
|
|
- Riccardo Contini
- 7 anni fa
- Visualizzazioni
Transcript
1 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca Lezione 3 Martedì
2 Paginazione su richiesta Con la tecnica della paginazione un processo deve essere caricato completamente in memoria per essere eseguito. Come già descritto per la segmentazione su richiesta, anche per la paginazione, ricorrendo ad architetture di microprocessori più complesse, si può fare in modo che un processo possa essere eseguito caricando in memoria solo una parte del suo spazio virtuale. Nel campo controllo dell elemento della tabella delle pagine è inserito un bit di presenza P che indica se la pagina virtuale relativa è presente o meno in memoria. Analogamente sono usati il bit d uso U e di modifica M. 2
3 L elemento della tabella delle pagine dipende dall architettura hardware. Tipicamente ha il formato come in figura: pagina fisica controllo altre info Indice della pagina fisica se P= R W P U M Elemento della tabella delle pagine indirizzo cluster se P=0 Generalmente, il campo altre info non è presente nella tabella delle pagine ma è memorizzato in tabelle esterne, associate al descrittore del processo. Il disco di sistema è formattato in blocchi logici (cluster) di dimensione pari alla dimensione delle pagine. Quando un processo è creato, alcune pagine del suo spazio virtuale sono copiate in altrettanti cluster della swap-area (o del file di paging) e sono caricate in memoria solo poche pagine (pre-paging) o anche nessuna. 3
4 La tabella delle pagine è creata nel modo seguente: ponendo a i bit P di presenza delle pagine caricate e a 0 quelle delle pagine non caricate; Inserendo nel campo pagina fisica l indice della pagina fisica se P= o nel campo altre info l indirizzo della pagina su swaparea (indirizzo del cluster) delle pagine non caricate (P=0). Quando la MMU indirizza una pagina che non è caricata in memoria (bit P=0) essa genera un segnale di interruzione di page-fault (errore di pagina) che attiva una funzione del gestore della memoria che ha il compito di ricercare nella tabella delle pagine fisiche, una pagina libera in cui caricare la pagina virtuale richiesta. Se non è disponibile memoria libera, è necessario liberare la memoria salvando sull area swap un certo numero di pagine, appartenenti o meno al processo in esecuzione. Questa operazione prende il nome di rimpiazzamento delle pagine. 4
5 Swap-area (disco) MMU pv off I pv pv MMU off 8 Tabella pagine P 4 5 Tabella pagine P pv I P=0 Page-fault Memoria fisica pv pf P=0 P= 6 2 pf 3 Tabella pagine fisiche Tabella pagine fisiche pf libera pf pv pid P 7 Gestione di un page-fault 5
6 Rimpiazzamento delle pagine Per effettuare il rimpiazzamento di una pagina fisica di indice pf il kernel esegue i seguenti passi:. mediante un algoritmo di rimpiazzamento, ricerca nella tabella delle pagine fisiche la pf più idonea da rimpiazzare; 2. trovata la pagina pf, recupera l indice pv della pagina virtuale che vi è allocata e il processo Pk cui essa appartiene; seleziona l elemento di indice pv della tabella delle pagine di Pk e ottiene l indirizzo I del cluster su swaparea; 3. salva la pagina fisica pf contenente la pagina virtuale pv di Pk su swap-area all indirizzo I; 4. aggiorna i valori dell elemento pv della tabella delle pagine del processo Pk ponendo a 0 (reset) il bit di presenza P; 5. aggiorna la tabella delle pagine fisiche rendendo pf libera. La copia su disco della pagina scelta non avviene se il bit di modifica è M=0. Al termine del rimpiazzamento il processo torna in esecuzione ed esegue di nuovo l istruzione che ha generato il page-fault. 6
7 Pk: processo a cui si revoca la pagina pf Swap-area pv Tabella pagine di Pk 2 Tabella pagine di Pk I pv pf I P=0 P= pv I P=0 4 Tabella pagine Fisiche Memoria fisica 3 Tabella pagine Fisiche pf pf pv Pk pf libera 5 Prima del rimpiazzamento Dopo il rimpiazzamento Rimpiazzamento delle pagine 7
8 L algoritmo di rimpiazzamento, deve escludere dalla selezione le pagine fisiche che sono coinvolte in un trasferimento dati. Ad esempio se una pagina fisica pf contiene la pagina virtuale pv di un processo P che ha attivato un trasferimento di dati da una periferica a un suo buffer contenuto nella propria pagina virtuale pv, tramite un canale DMA, pf non deve essere scelta. Infatti, anche se il processo P è bloccato, il DMA trasferisce dati nel buffer e se pf viene sostituita, il DMA scriverà dati in una pagina virtuale diversa. Per questo motivo l elemento della tabella delle pagine fisiche contiene anche un campo di lock che se posto ad significa che la corrispondente pagina fisica deve essere ignorata dall algoritmo di rimpiazzamento. Il blocco di una pagina spesso è chiamato pinning (appuntare). Un altra soluzione è di gestire tutte le operazioni di I/O nei buffer del kernel e successivamente copiare il dati nelle pagine del processo utente. 8
9 I page-fault riducono le prestazioni del sistema. E quindi necessario minimizzare il numero di page-fault che un processo può generare durante la sua esecuzione. Il numero di page-fault, in parte, dipende da come è strutturato il programma che il processo esegue. Tanto più il programma è ben strutturato, tanto minore sarà il numero di page-fault che genererà. Quando ci sono molti processi il numero di page-fault aumenta notevolmente. Diventa fondamentale la scelta dell algoritmo di rimpiazzamento per evitare il fenomeno del trashing che consiste nell attività, da parte della CPU, a trasferire continuamente pagine tra la memoria fisica e la swap-area, riducendo fortemente l efficienza del sistema. 9
10 Algoritmi di rimpiazzamento delle pagine Un algoritmo di rimpiazzamento ottimo dovrebbe prevedere quali pagine saranno referenziate nel futuro. Abbiamo già incontrato un problema analogo descrivendo l algoritmo SJF nella schedulazione dei processi. Gli algoritmi reali, per predire il futuro, si basano sulle informazioni relative agli accessi effettuati nell immediato passato. Infatti, a partire da un generico istante e per un certo intervallo di tempo, i processi generano indirizzi che sono spesso contenuti all interno di un ristretto numero di pagine detto working set (insieme di lavoro). Il working set varia nel tempo, ma gradualmente. Le chiamate di funzioni provocano una variazione di working set. L algoritmo di rimpiazzamento più semplice è il FIFO che sceglie come pagina da rimpiazzare quella che risiede da più tempo in memoria. Tuttavia è poco efficiente. 0
11 Un algoritmo molto più complesso, ma molto più efficiente in termini di page-fault, è l LRU (Least recently Used) che sceglie come pagina da rimpiazzare quella meno recentemente utilizzata indipendentemente da quando è stata caricata. E stato sperimentato che LRU è l algoritmo che fornisce le migliori prestazioni. Tuttavia la sua realizzazione non è conveniente in quanto richiede un complesso supporto hardware e l implementazione software produce un overhead troppo elevato. Molti algoritmi sono approssimazioni dell LRU. Uno di questi è l algoritmo second-chance (seconda scelta) chiamato anche clock algorithm (algoritmo dell orologio).
12 Algoritmo seconda chance Per consentire al gestore della memoria di fare statistiche sull uso delle pagine si utilizzano i bit U (uso) e M (modifica) associati a ciascuna pagina. Questi due bit devono essere aggiornati ogni volta che una pagina viene referenziata, è quindi fondamentale che siano modificati via hardware. All avvio di un processo, i due bit U e M di ogni pagina sono resettati (posti a 0). Periodicamente, ad esempio ogni 20 ms, all interruzione del clock, i bit U sono resettati. Le pagine sono distinte in due classi: quelle con il bit U= (le più recentemente usate) e quelle con il bit U=0 (le meno recentemente usate). Si sceglie una pagina con politica FIFO, dapprima tra quelle con il bit U=0, se ci sono. 2
13 La tabella delle pagine fisiche è gestita come un array circolare (round robin). Viene tenuta aggiornata una variabile di sistema vittima, contenente l indice della pagina fisica successiva a quella che è stata rimpiazzata per ultima. Quando si verifica un page-fault la verifica inizia con la pagina il cui indice è contenuto nella variabile vittima. Se tale pagina ha il bit U=0 è scelta per il rimpiazzamento, altrimenti il suo bit U è resettato e si prosegue fino a trovare una pagina che ha il bit U=0. Nella figura è mostrato il funzionamento dell algoritmo disegnando la tabella delle pagine fisiche in forma circolare e mettendo in evidenza per ogni pagina solo il bit d uso U. 3
14 tabella delle pagine fisiche. Sono visualizzati solo i bit d uso U Pagina 0 Pagina 0 Pagina 7 0 Pagina Pagina 7 0 Pagina 0 Pagina 6 Pagina 2 Pagina 6 Pagina vittima 0 Pagina 5 Pagina 3 Pagina 5 Pagina 3 Pagina 4 Pagina inizio fine Algoritmo second-chance 4
15 Per ridurre i trasferimenti tra memoria e disco, e quindi per migliorare le prestazioni dell algoritmo, per la classificazione delle pagine si considera anche il bit di modifica M. In tal modo le classi diventano 4, relativamente alle combinazione dei bit U-M: classe0: 0-0 non referenziata non modificata classe: 0- non referenziata - modificata classe2: -0 referenziata non modificata classe3: - referenziata - modificata Rispetto alla scelta basata sul solo bit U si privilegiano le pagine con il bit di modifica M=0 in quanto non modificate e quindi non è necessario riscriverle sul disco. La classe, contiene pagine che sono state referenziate, M= ma che hanno il bit U=0 per via del reset eseguito all interruzione del clock. 5
16 Sono molti gli algoritmi realizzati per il rimpiazzamento. Ogni tipo di algoritmo ha molte varianti in base ai criteri di scelta delle pagine da rimpiazzare. Ad esempio, al momento del page-fault, si potrebbe scegliere di revocare una pagina fisica dal processo che ha generato il page-fault (tecnica del rimpiazzamento locale) oppure scegliere la pagina revocandola a qualsiasi processo (tecnica del rimpiazzamento globale). Il rimpiazzamento globale consente una scelta più conveniente, in quanto viene fatta su un numero maggiore di pagine. Molti sistemi, tra cui UNIX, non consentono di saturare completamente la memoria ma conservano un certo numero di pagine fisiche di riserva. In tal modo la gestione del page-fault avviene più velocemente. D altra parte però il paginatore, quando verifica che la memoria sta per esaurirsi, deve salvare un numero di pagine in modo da renderle di nuovo libere. 6
17 Per minimizzare il numero di page-fault, molti paginatori tengono traccia del working set di ciascun processo, in modo tale da caricarlo in memoria prima che il processo riprenda l esecuzione. Questa tecnica è detta working set model. 7
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 14 Martedì 29-11-2016 Algoritmi di rimpiazzamento delle pagine Un algoritmo
DettagliSistemi operativi e distribuiti
Sistemi operativi e distribuiti La memoria virtuale Memoria Virtuale Separazione della memoria logica da quella fisica Un programma potrebbe risiedere in memoria solo parzialmente Lo spazio di indirizzamento
DettagliMemoria Virtuale. Sommario. Introduzione Paginazione su domanda. Rimpiazzamento delle pagine Allocazione dei frame
Memoria Virtuale Sommario Introduzione Paginazione su domanda Rimpiazzamento delle pagine Allocazione dei frame 1 Introduzione Caratteristica degli schemi precedenti per la gestione della memoria: l intero
DettagliGESTIONE 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:
DettagliUniversità 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
DettagliGestione della memoria
Gestione della memoria Gestione della memoria In un sistema multiprogrammato il numero di processi è > del numero di processori, ciò implica: unità di elaborazione virtuale memoria virtuale Un gestore
DettagliMemoria Virtuale. Considerazioni sulla paginazione e segmentazione
Memoria Virtuale Generalità Hardware di supporto Scelte di progetto 1 Considerazioni sulla paginazione e segmentazione I riferimenti di Memoria sono tradotti dinamicamente in indirizzi fisici a run time
DettagliSistemi 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
DettagliLa memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni
La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso, misurata in base al tempo impiegato dal processore per accedere ad uno specificato indirizzo
DettagliSistemi operativi 2/ed Paolo Ancilotti, Maurelio Boari, Anna Ciampolini, Giuseppe Lipari Copyright 2008 The McGraw-Hill Companies srl
SOLUZIONI DEI PROBLEMI DEL CAPITOLO 4. Soluzione: Adottando lo schema best-fit la partizione libera utilizzata per allocare un segmento di dimensione pari a 56 byte è quella le cui dimensioni siano le
DettagliObiettivi! Memoria Virtuale! Memoria Virtuale > Memoria Fisica!
Obiettivi Memoria Virtuale Descrivere i vantaggi di un sistema a memoria virtuale Concetti fondamentali Paginazione su richiesta (Demand paging) Algoritmi di sostituzione delle pagine Algoritmi di allocazione
DettagliGestione della memoria
Gestione della memoria centrale Gestione della memoria Concetti generali. Swapping. Allocazione contigua di memoria. Paginazione. Segmentazione. Segmentazione con paginazione. Esempio: Pentium Intel Background
DettagliMemoria virtuale. Capitolo 9 - Silberschatz
Memoria virtuale Capitolo 9 - Silberschatz Processo in memoria Istruzioni in memoria prima di essere eseguite. Condizione necessaria e ragionevole ma le dimensioni del programma devono essere correlate
DettagliUniversità 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 12 Martedì 22-11-2016 Partizioni variabili Un miglioramento dell uso
DettagliBasi 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
DettagliSimuliamo ora il funzionamento di LRU sulla reference string data:
1. Un computer ha quattro frame, i cui istanti di caricamento, di ultimo riferimento e i reference bit sono riportati nella seguente tabella: Frame Caric. Rifer. R 2 135 287 1 1 240 250 1 0 169 253 0 3
DettagliMemoria Virtuale. Lezione 6-7 Sistemi Operativi
Memoria Virtuale Lezione 6-7 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 strutture
DettagliPage replacement. Al page fault (PF) causato da un indirizzo virtuale nella pagina P, non presente in memoria, la pagina P va copiata su una frame.
Page replacement Al page fault (PF) causato da un indirizzo virtuale nella pagina P, non presente in memoria, la pagina P va copiata su una frame. Quale? Idealmente: una ospitante una pagina poco usata
DettagliMemoria Virtuale. Background Paginazionesu richiesta Sostituzione delle pagine Algoritmi di sostituzione delle pagine Allocazione dei frame Thrashing
Memoria Virtuale Background Paginazionesu richiesta Sostituzione delle pagine Algoritmi di sostituzione delle pagine Allocazione dei frame Thrashing Background Memoria virtuale separazione della memoria
DettagliCapitolo 10: Memoria virtuale
Capitolo 10: Memoria virtuale Ambiente. Richiesta di paginazione. Creazione del processo. Sostituzione della pagina. Allocazione dei frame. Thrashing. Altre considerazioni. 10.1 Ambiente Memoria virtuale
DettagliSistemi 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
DettagliSOLUZIONE 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
DettagliInformatica 3. LEZIONE 20: Ordinamento esterno. Modulo 1: Organizzazione della memoria Modulo 2: Ordinamento esterno
Informatica 3 LEZIONE 20: Ordinamento esterno Modulo 1: Organizzazione della memoria Modulo 2: Ordinamento esterno Informatica 3 Lezione 20 - Modulo 1 Organizzazione della memoria Introduzione Dati in
DettagliLa gerarchia delle memorie
La gerarchia delle memorie Gestione della memoria Ogni processo, per avanzare necessità che il relativo programma risieda nella memoria centrale, Tale programma è costituito da memoria e dati. Lo spazio
DettagliUniversità 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 1 Martedì 11-10-2016 1 Introduzione Un sistema operativo è un software
DettagliIntroduzione Definizioni
Informatica 3 Informatica 3 LEZIONE 20: Ordinamento esterno Lezione 20 - Modulo 1 Modulo 1: Organizzazione della memoria Modulo 2: Ordinamento esterno Organizzazione della memoria Politecnico di Milano
DettagliRegistri della CPU. Memoria Centrale. Memoria di Massa. Memorie di altri sistemi in rete
+ Veloce + Vicina alla CPU + Costosa Registri della CPU Memoria cache di primo livello sul microprocessore L1 - Capiente Memoria cache di secondo livello sul microprocessore L2 Memoria Centrale - Veloce
DettagliSistema operativo: Gestione dei processi
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2009/2010 Sistema operativo: Gestione dei processi La presente dispensa e da
DettagliUniversità 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
DettagliSistemi Operativi (modulo di Informatica II) La memoria virtuale
Sistemi Operativi (modulo di Informatica II) La memoria virtuale Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Ambiente virtuale Richiesta di paginazione Creazione di un processo
DettagliGestione della memoria per sistemi multiprogrammati. Obiettivi. Partizioni fisse. Partizioni fisse. Fondamenti di Informatica
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
DettagliMemoria 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
DettagliLA GESTIONE DELLA I/O
LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono
DettagliCapitolo 14: Struttura delle memorie di massa
Capitolo 14: Struttura delle memorie di massa Struttura dei dischi. Schedulazione degli accessi al disco. Amministrazione del disco. Gestione dello spazio di swap. 14.1 Struttura dei dischi I dischi rigidi
DettagliCognome 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
DettagliIl Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire efficientemente l'elaboratore e le sue periferiche,
DettagliGestione della memoria. Introduzione Swapping Allocazione contigua Paginazione
Gestione della memoria Introduzione Swapping Allocazione contigua Paginazione Introduzione In un sistema monoprogrammato la memoria centrale è divisa in due parti: una per il sistema operativo, l altra
DettagliSistemi 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
DettagliEsercizio: 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
DettagliGESTIONE 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
DettagliLivelli del sottosistema di I/O
Input/Output 1 Livelli del sottosistema di I/O Software di I/O di livello utente Software di sistema indipendente dal dispositivo Driver dei dispositivi Gestori delle interruzioni Hardware Modo utente
DettagliSistemi 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
DettagliSistemi 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
DettagliMemoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliDescrivere i vantaggi di un sistema a memoria virtuale
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! Il problema
DettagliGestione della memoria. Algoritmi di rimpiazzamento Segmentazione
Gestione della memoria Algoritmi di rimpiazzamento Segmentazione Algoritmi di rimpiazzamento Per ogni page fault il SO deve: scegliere una pagina da rimuovere dalla memoria per creare spazio per la nuova
DettagliStruttura Logica del S.O:
Avvertenza Quanto segue NON è un libro, ma è una copia dei lucidi usati a lezione che NON sostituisce i libri di testo adottati e consigliati per l insegnamento di Informatica Generale. Questa copia è
DettagliBootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:
Bootstrap Bootstrap All accensione di un calcolatore vengono attivati programmi di diagnostica scritti nella ROM (Read Only Memory) che verificano l assenza di guasti Poi viene attivato il programma di
Dettagli2. Nucleo del sistema operativo (la gestione dei processi)
Struttura interna del sistema operativo Linux 2. Nucleo del sistema operativo (la gestione dei processi) Architettura (struttura) del sistema operativo shell Programmi utente Modo utente Interfaccia delle
DettagliStruttura interna del Sistema Operativo. 3. La gestione della memoria virtuale
Struttura interna del Sistema Operativo 3. La gestione della memoria virtuale Il concetto di memoria virtuale Separare il concetto di spazio di indirizzamento di un programma eseguibile e dimensione effettiva
DettagliFallimenti nella TLB
Fallimenti nella TLB Un fallimento nella TLB può essere dovuto a due motivi: 1. la pagina fisica non è presente in memoria (page fault); 2. la traduzione non è nella TLB, anche se la pagina fisica è presente
DettagliGestione della Memoria Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica
Gestione della Memoria Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica prof. Ing. Corrado Santoro A.A. 2010-11 Architettura di un sistema operativo Progr 1 Progr 2 Progr
DettagliIl concetto di memoria virtuale. Struttura interna del Sistema Operativo. Memoria virtuale: indirizzi virtuali. Codifica Esadecimale
Il concetto di memoria virtuale Struttura interna del Sistema Operativo 3. La gestione della memoria virtuale 25 marzo 2004 Separare il concetto di spazio di indirizzamento di un programma eseguibile e
DettagliLa gestione della memoria
La gestione della memoria Nella gestione della memoria il sistema operativo deve perseguire l'obiettivo di allocare il maggior numero di processi in memoria centrale per aumentare la probabilità che ci
Dettagli5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche
Device driver - gestori delle periferiche Struttura interna del sistema operativo Linux Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici Interagiscono con
DettagliUniversità 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 è
DettagliUniversità 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. 2015-16 Pietro Frasca Lezione 11 Martedì 10-11-2015 1 Memoria partizionata Le tecniche di memoria partizionata
Dettagli14 Struttura della memoria secondaria Struttura del disco Struttura del disco
14 Struttura della memoria secondaria 1 Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Affidabilità 2 14.1 Struttura del disco 3 14.1 Struttura del disco I dischi
DettagliMEMORIA VIRTUALE. Programma: Processore: Memoria fisica: Caso più semplice:
MEMORIA VIRTUALE MEMORIA VIRTUALE Programma: utilizza indirizzi che prendono il nome di indirizzi logici: l insieme degli indirizzi logici costituisce il cosiddetto spazio logico. Processore: utilizza
DettagliLa 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à
DettagliCapitolo 2: Strutture dei sistemi di calcolo
Capitolo 2: Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di protezione Struttura delle reti di calcolatori
DettagliSistemi operativi e distribuiti
Sistemi operativi e distribuiti La memoria Indirizzi fisici e indirizzi logici Importante separazione di concetti Ci permette di separare la parte software da la parte hardware Indirizzo logico (o virtuale):
DettagliLezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario
Lezione 2 Principi Fondamentali di SO Interrupt e Caching Sommario Operazioni di un SO: principi fondamentali Una visione schematica di un calcolatore Interazione tra SO, Computer e Programmi Utente 1
Dettagli9. Memoria Virtuale. 9. Memoria Virtuale. 9. Memoria Virtuale
1 (es. 1) Consideriamo un processo con m frame inizialmente uoti. La stringa di riferimento è lunga p e contiene riferimenti a n pagine dierse. Per un qualsiasi algoritmo di rimpiazzamento: a) qual è il
DettagliSistemi Operativi: Prof.ssa A. Rescigno Anno Acc. 2008-2009. Esercitazione. Memoria virtuale
Sistemi Operativi: Prof.ssa A. Rescigno Anno Acc. 2008-2009 Esercitazione Università di Salerno Memoria virtuale 1. Si assuma che un processo abbia m frames (inizialmente tutti vuoti) a disposizione e
DettagliSistemi 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
DettagliMemoria 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
DettagliCorso di Informatica
Corso di Informatica Modulo T4 3-Gestione della memoria 1 Prerequisiti Rilocazione dinamica Spazio degli indirizzi Descrittore di processo Descrittore della memoria 2 1 Introduzione Una volta conosciute
DettagliIl 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
DettagliSistemi Operativi 9 luglio 2013 Compito
Si risponda ai seguenti quesiti, giustificando le risposte. Gli esercizi e le domande marcate con l asterisco (*) devono essere svolti soltanto da chi ha in piano di studi l esame di Sistemi Operativi
DettagliSistemi Operativi 2003/2004 WINDOWS 2000
Sistemi Operativi 2003/2004 WINDOWS 2000 Windows NT Diversità tra Windows 98 e Windows NT Windows 2000 (1) Versioni diverse di Windows 2000 Windows 2000 (2) The Win32 Application Programming Interface
DettagliSistemi operativi - Concetti ed esempi -Settima edizione
Capitolo 9: Memoria virtuale Capitolo 9: Memoria virtuale Introduzione Paginazione su richiesta Copiatura su scrittura Sostituzione delle pagine Allocazione di frame Paginazione degenere (thrashing) File
DettagliINFORMATICA GENERALE. Informatica Generale
INFORMATICA GENERALE a.a. 006/007 COGNOMI A-L Silvano Antonelli -Ricevimento : durante il corso: Martedì ore 5.0 presso Dipartimento di Informatica, Largo Pontecorvo Stanza 94 negli altri periodi: su appuntamento
DettagliMemoria Virtuale. Sistemi operativi- AA 2015/16 1 1
Memoria Virtuale Sistemi operativi- AA 2015/16 1 1 2 Sommario Virtualizzazione della memoria Algoritmi di sostituzione delle pagine Allocazione dei frame Trashing Segmentazione su richiesta Conclusioni
DettagliGESTIONE 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:
DettagliGestione della memoria centrale. Marco Cesati. Schema della lezione. Memoria centrale. Linux su Intel IA-32 SO Gestione della memoria centrale
Di cosa parliamo in questa lezione? Lezione 7 La gestione della Sistemi operativi 1 Schemi di indirizzamento della 2 La segmentazione 3 La paginazione 9 maggio 2017 4 System Programming Research Group
DettagliSistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
DettagliARCHITETTURA DEI CALCOLATORI
A09 139/3 Graziano Frosini Giuseppe Lettieri ARCHITETTURA DEI CALCOLATORI VOLUME III ASPETTI ARCHITETTURALI AVANZATI E NUCLEO DI SISTEMA OPERATIVO Con riferimento al Personal Computer all ambiente di
DettagliInformatica Generale 06 - Introduzione ai Sistemi Operativi
Informatica Generale 06 - Introduzione ai Sistemi Operativi Cosa vedremo: Funzionalità dei sistemi operativi Bootstrap Stato utente e stato supervisore Componenti di un Sistema Operativo Cos è un sistema
DettagliREGISTRI MEMORIA CACHE MEMORIA PRINCIPALE DISCO. Figura 1 Gerarchia di memoria.
Memoria Cache 1 Introduzione La velocità di un microprocessore è molto più alta di un qualsiasi sistema di memoria disponibile a costi ragionevoli. Ogni singolo accesso alla memoria principale di un microprocessore
DettagliEsercitazione 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
DettagliArchitettura hardware
Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliStruttura interna del sistema operativo Linux
Struttura interna del sistema operativo Linux 5. I device driver A cura di: Anna Antola Giuseppe Pozzi DEI, Politecnico di Milano anna.antola/giuseppe.pozzi@polimi.it -versione del 30 marzo 2004-1-04.-04
DettagliComponenti di un sistema operativo
Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria
DettagliGESTIONE DEI FILE IN C. Docente: Giorgio Giacinto AA 2008/2009
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliStruttura delle memorie cache
Architettura degli Elaboratori e delle Reti Lezione 28 Struttura delle memorie cache Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 28 1/30
DettagliSistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
DettagliMemoria cache, interrupt e DMA
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliVeloce e cara. Lenta e economica. I livelli di memoria. E il supporto del calcolatore per conservare dati e istruzioni (programmi) La memoria centrale
I livelli di memoria LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica Veloce e cara E il supporto del calcolatore per conservare dati e istruzioni (programmi) Sistemi Operativi : La gestione
DettagliLezione T17 Algoritmi di sostituzione delle pagine
Lezione T17 Algoritmi di sostituzione delle pagine Sistemi Operativi (9 CFU), CdL Informatica, A. A. 2013/2014 Dipartimento di Scienze Fisiche, Informatiche e Matematiche Università di Modena e Reggio
DettagliProcessi e memoria. Ges&one della memoria. Rilocazione. Indirizzi. Rilocazione e protezione. Memory Management Unit (MMU)
Processi e memoria Ges&one della memoria Tu6 i processi in esecuzione necessitano della memoria centrale per memorizzare: le istruzioni che fanno parte del codice i da& su cui operano A. Ferrari Indirizzi
DettagliComponenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni
Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria
DettagliEsercizio 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
DettagliMEMORIA VIRTUALE. G. Frosini Memoria virtuale Slide 1
MEMORIA VIRTUALE G. Frosini Memoria virtuale Slide 1 MEMORIA VIRTUALE Programma: utilizza indirizzi che prendono il nome di indirizzi logici: l insieme degli indirizzi logici costituisce il cosiddetto
Dettagli2. Nucleo del sistema operativo (la gestione dei processi)
Architettura del sistema operativo Struttura interna del sistema operativo Linux shell Programmi utente Modo utente 2. Nucleo del sistema operativo (la gestione dei processi) - 31 marzo 2008 - Interfaccia
DettagliUniversità 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 17 Martedì 13-12-2016 Sceduling in ordine di arrivo - FCFS Coda delle
DettagliStrutture fisiche e strutture di accesso ai dati
Strutture fisiche e strutture di accesso ai dati 1 A L B E R T O B E L U S S I P R I M A P A R T E A N N O A C C A D E M I C O 2 0 1 2-2 0 1 3 Gestore dei metodi di accesso 2 E il modulo del DBMS che esegue
DettagliUniversità 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,
DettagliUniversità 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 15 Martedì 26-11-2013 1 Allocazione dei dispositivi e tecniche di spooling
DettagliInput/Output (Cap. 7, Stallings)
Input/Output (Cap. 7, Stallings) Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi Tutti più lenti della CPU e della RAM Necessità di avere moduli
Dettagli