SOLUZIONI: Memoria virtuale
|
|
- Ambra Bevilacqua
- 7 anni fa
- Visualizzazioni
Transcript
1 SOLUZIONI: Memoria virtuale INTRODUZIONE Memoria Virtuale: Si parla di memoria virtuale quando la memoria principale viene utilizzata come cache per la memoria di massa (dischi, nastri): - I programmi sono compilati rispetto ad uno spazio di indirizzamento virtuale, diverso da quello fisico; - Il sistema di memoria virtuale traduce gli indirizzi virtuali in indirizzi fisici. Vantaggi: - illusione di avere una maggiore memoria fisica a disposizione del processo; - rilocazione dei codici in esecuzione; - meccanismi di protezione (gli spazi di indirizzamento virtuali dei diversi programmi sono mappati su spazi fisici differenti). I concetti relativi alla memoria virtuale sono analoghi a quelli visti per la cache ma, per ragioni storiche, la terminologia è diversa. - Memoria fisica / memoria virtuale - Pagine (blocchi) - Page fault (miss) [la pagina non è in memoria e deve essere letta da disco] Il costo dei page fault è estremamente elevato (milioni di cicli), e questo influenza molte scelte (dimensioni della pagina elevate 4, 16, 32, 64 KB, completa associatività, gestione software, solo politica write-back). Traduzione degli indirizzi: Ad ogni istante solo una parte delle pagine di memoria virtuali è presente nella memoria fisica (meccanismo di caching). L indirizzo virtuale si suddivide in : VIRTUAL PAGE ADDRESS OFFSET Il Virtual Page Address indirizza le entry di una tabella, detta Page Table, che contiene informazioni sulla presenza / validità delle pagine in memoria: D V PHYSICAL PAGE NUMBER Per ragioni di efficienza non si accede direttamente alla Page Table, ma piuttosto al TLB (Translation Lookaside Buffer) che svolge il ruolo di cache della Page Table. La conversione degli indirizzi è eseguita in hardware dalla MMU (memory management unit). 1. Si consideri un sistema di memoria virtuale con le seguenti caratteristiche: VirtualADDR size = 40 b Page size = 8 KB FisicalADDR size = 27 b Si determini la dimensione della Page Table, considerando che ogni elemento della tabella ospiti 2 b aggiuntivi (dirty, valid). Si ipotizzi la presenza di una TLB set-associative a 4 vie di 512 elementi. Si determini la dimensione della TAG. PageOffset size = log 2 Page size = log 2 8 K = 13 b VirtualPage size = = 27 b FisicalPage size = = 14 b La dimensione di ogni entry della tabella è data da: PTentry size = FisicalPage size + (dirty,valid) = 14 b + 2 b = 16 b = 2 B Poiché la PT è indirizzata tramite il VirtualPage il numero di entry della PT è dato da: #Entry = 2 VirtualPagesize = 2 27 La dimensione della tabella: 2 27 * 2 B = 2 28 B = 2 8 MB = 256 MB La TLB, questa viene indirizzata con VirtualPage che è di 27 b suddiviso in TAG e INDEX Poiché gli insiemi della TLB sono: #Sets = #Entry / n = 512 / 4 = 128 Allora i bit dell INDEX per la TLB sono: INDEX size = log 2 #Sets = log = 7 b Quindi TAG sarà dato: TAG size = VirtualPage size INDEX size = 27 7 = 20 b 1
2 2. Sia data una memoria virtuale paginata. Ogni entry della page table (PT) è di 2B, e contiene 3 bit aggiuntivi (Valid, Dirty, Reference). Calcolare il numero di bit per rappresentare il numero della pagina fisica. Se la dimensione della PT è di 1 MB, quanti bit sono necessari per rappresentare il numero della pagina virtuale? Conoscendo che ogni pagina è di un KB, calcolare le dimensioni dell indirizzo virtuale e di quello fisico. Il numero di pagina fisica è calcolato come: FisicalPage size = PTentry size (Valid, Dirty, Reference) = 2B 3b = 13 b Per calcolare il numero di pagina virtuale, bisogna calcolare il numero di entry della PT: #PTentry = PT size / PTentry size = 1 MB / 2 B = 2 20 B/ 2 B = 2 19 = 0.5 M entry Per cui per indirizzare la PT si ha che: VirtualPage size = log 2 #PTentry = log = 19 b Se la dimensione di ogni pagina è di 1 KB, allora si ha che: PageOffset size = log 2 Page size = log 2 1K = 10 b Allora le dimensioni dell indirizzo fisico e virtuale sono: FisicalADDR size = FisicalPage size + PageOffset size = 13 b + 10 b = 23 b VirtualADDR size = VirtualPage size + PageOffset size = 19 b + 10 b = 29 b 3. Si supponga di avere un sistema di memoria virtuale paginata con indirizzo virtuale di 32 b e fisico di 30 b, con pagine di 2048 B. La TLB ha 128 entry, dove ogni entry comprende 2 ulteriori bit di Valid e Dirty. Calcolare il numero di bit necessari per memorizzare ciascuna entry della TLB rispetto alle organizzazioni diretta, associativa a 4 vie e completamente associativa, della TLB stessa. Se la dimensione di ogni pagina è di 2048 B, allora si ha che: PageOffset size = log 2 Page size = log = 11 b E quindi gli identificatori di pagina hanno le seguenti dimensioni: FisicalPage size = FisicalADDR size - PageOffset size = 30 b + 11 b = 19 b VirtualPage size = VirtualADDR size - PageOffset size = 32 b + 11 b = 21 b TLB diretta: INDEX size = log 2 #Entry = log = 7 Da cui si ricava che: TAG size = VirtualPage size - INDEX size = 21 b - 7 b = 14 b E quindi ogni entry è composta da: TLBentry size = TAG size + FisicalPage size + (Valid, Dirty) = 14 b + 19 b + 2 b = 35 b TLB 4-way: #Sets = #Blocks / n = 128 / 4 = 32 INDEX size = log 2 #Sets = log 2 32 = 5 Da cui si ricava che: TAG size = VirtualPage size - INDEX size = 21 b - 5 b = 16 b E quindi ogni entry è composta da: TLBentry size = TAG size + FisicalPage size + (Valid, Dirty) = 16 b + 19 b + 2 b = 37 b TLB completamente associativa: INDEX ha 0 b e quindi il TAG coincide con VirtualPage E quindi ogni entry è composta da: TLBentry size = VirtualPage size + FisicalPage size + (Valid, Dirty) = 21 b + 19 b + 2 b = 42 b 2
3 4. Sia dato un sistema di memoria virtuale con pagine di 2 KB, e indirizzo virtuale di 32 b. L indirizzo fisico è di 27 b. Si assuma che la TLB sia 4-way associative e che la dimensione di ogni entry sia 4B, inclusi 2 bit di Valid e Dirty. Determinare la dimensione della TAG nella TLB. Determinare il numero di insiemi contenuti nella TLB. L offset all interno della pagina è: PageOffset size = log 2 Page size = log 2 2K = 11 b La dimensione del numero di pagina virtuale e fisica sono: VirtualPage size = VirtualADDR size - PageOffset size = 32 b + 11 b = 21 b FisicalPage size = FisicalADDR size - PageOffset size = 27 b + 11 b = 16 b La dimensione della TAG nella TLB è: TAG size = TLBentry size - (Valid, Dirty) - FisicalPage size = 32 b - 2 b - 16 b = 14 b Per conoscere il numero di insiemi della TLB a 4 vie, è necessario conoscere INDEX size. Considerando che la TLB viene indirizzata tramite l indirizzo virtuale, INDEX size è: INDEX size = VirtualPage size - TAG size = 21 b - 14 b = 7 b Quindi il numero di insiemi della TLB è: #Sets = 2 INDEXsize = 2 7 = Si consideri un sistema con memoria virtuale e Page Table di dimensione 16 MB. Ogni entry include 3 bit (valid, dirty, e reference bit). Le pagine sono di dimensione 1 KB e l indirizzo fisico è di 23 b. 1. Determinare la dimensione dell indirizzo virtuale. 2. Supponendo di avere una TLB 4-way associative con 512 blocchi, mostrare la suddivisione in campi TAG e INDEX dell indirizzo di pagina virtuale. 3. Supponendo di avere una cache 2-way associative composta da 2048 blocchi da 16 B ciascuno, mostrare la suddivisione in campi TAG, INDEX e OFFSET dell indirizzo fisico usato per accedere la cache. 1. Per indirizzare i byte all interno della pagina si ha che PageOffset size = log 2 Page size = log 2 1K = 10 b Quindi i bit per indirizzare le pagine fisiche sono dati da: FisicalPage size = FisicalADDR size - PageOffset size = 23 b + 10 b = 13 b Ogni ingresso della page table è costituito quindi da PTentry size = FisicalPage size + (Valid, Dirty, Reference) = 13 b + 3 b = 16 b = 2B. Possiamo ora ricavare il numero di ingressi della PT come segue: #PTentry = PT size / PTentry size = 16 MB / 2 B = 8 M = Il numero di entry della PT corrisponde al numero di pagine virtuali indirizzabili, quindi si ha: VirtualPage size = log 2 #PTentry = log = 23 b Si ottiene così un indirizzo virtuale di VirtualADDR size = VirtualPage size + PageOffset size = 23 b + 10 b = 33 bit. 2. Il numero di insiemi della TLB è #Sets = #Entry / n = 512 / 4 = 2 7 = 128 Avremo quindi un campo INDEX di: INDEX size = log 2 #Sets = log = 7 b Considerando che alla TLB si accede tramite il VirtualPage size di 23 b, il campo TAG sarà di: TAG size = VirtualPage size - INDEX size = 23 b - 7 b = 16 b Continua 3
4 Continua esercizio 5: 3. Il numero di insiemi della Cache è #Sets = #Blocks / n = 2048 / 2 = 2 10 = Avremo quindi un campo INDEX di: INDEX size = log 2 #Sets = log = 10 b L OFFSET del blocco è invece uguale a: OFFSET size = log 2 Block size = log 2 16 = 4 b Quindi la TAG da memorizzare assieme ad ogni blocco è TAG size = FisicalADDR size - INDEX size - OFFSET size = 23 b - 10 b - 4 b = 9 b 6. Considerare una cache associativa a 4 vie, con una parte dati in grado di memorizzare 512 KB, i cui blocchi sono grandi 32B. L indirizzo fisico con cui si accede alla cache è di 27 b. Calcolare la dimensione della TAG della cache. A monte della cache, abbiamo un sistema di memoria virtuale basato su pagine da 4 KB. La TLB corrispondente è a 2 vie, ed è costituita da 128 insiemi. Ogni entry della TLB è grande 32 b, e include 2 bit aggiuntivi (Valid, Dirty). Calcolare la dimensione dell indirizzo virtuale. Il numero di blocchi totali della cache è: #Blocks = Cache size / Block size = 512 KB / 32 B = 512 * 2 10 / 32 = 16 * 2 10 = 2 14 Il numero di insiemi della cache è: #Sets = #Blocks / n = 2 14 / 4 = 2 12 = 4096 Da cui si ha che INDEX è: INDEX size = log 2 #Sets = log = 12 b E poiché: OFFSET size = log 2 Block size = log 2 32 = 5 b Abbiamo che: TAG size = FisicalADDR size - INDEX size - OFFSET size = 27 b - 12 b - 5 b = 10 b Poiché la pagina è di 4 KB, l offset di pagina è di PageOffset size = log 2 Page size = log 2 4K = 12 b Per cui il numero di pagina fisica è: FisicalPage size = FisicalADDR size - PageOffset size = 27 b - 12 b = 15 b Poiché gli insiemi della TLB sono 128, l INDEX per accedere alla TLB è: INDEX size = log 2 #Sets = log = 7 b Per trovare la TAG, impostiamo la seguente equazione: TLBentry size = TAG size + (Valid, Dirty) + FisicalPage size Sostituendo si ottiene 32 b = TAG size + 2 b + 15 b Da cui: TAG size = 32 b - 17 b = 15 b Quindi la dimensione del numero di pagina virtuale è: VirtualPage size = TAG size + INDEX size = 15 b + 7 b = 22 b La dimensione dell indirizzo virtuale è: VirtualADDR size = VirtualPage size + PageOffset size = 22 b + 12 b = 34 b 4
5 7. Calcolare il numero di insiemi ed il livello di associatività in una cache set-associative dove siano noti l INDEX, la dimensione (parte dati) della cache, la TAG e la dimensione dell indirizzo fisico. In particolare abbiamo che: Cache size = 1 MB, TAG size = 13 b, FisicalADDR size = 30 b, INDEX size = 11 b. Sempre rispetto alla solita gerarchia di memoria, individuare la dimensione della TAG size in una TLB a 4 vie di 256 insiemi, considerando che l indirizzo virtuale è di 32 b, e la Page size della memoria paginata è 4 KB. L offset nel blocco è uguale a: OFFSET size = FisicalADDR size - TAG size - INDEX size = 30 b - 13 b - 11 b = 6 b Quindi la dimensione di ogni blocco è: Block size = 2 OFFSETsize = 2 6 B = 64 B Il numero di insiemi della cache è quindi: #Sets = 2 INDEXsize = 2 11 = 2048 Ogni insieme è grande: Set size = Cache size / #Sets = 2 20 B / 2 11 = 2 9 B. Ogni insieme contiene quindi: n = Set size / Block size = 2 9 B / 2 6 B = 2 3 Per cui la cache è associativa ad 8 vie Il page offset è uguale a: PageOffset size = log 2 Page size = log 2 4 KB = log = 12 b La dimensione in bit della pagina virtuale è quindi: VirtualPage size = VirtualADDR size - PageOffset size = 32 b - 12 b = 20 b Poiché la TLB è composta da 256 insiemi, abbiamo che: INDEX size = log 2 #Sets = log = 8 b Per cui: TAG size = VirtualPage size - INDEX size = 20 b - 8 b = 12 b 8. Sia dato un sistema di memoria virtuale con pagine di 1 KB, Page Table di 8 MB e indirizzo virtuale di 32 bit. Assumendo che ogni entry delle Page Table contenga, oltre all indirizzo di pagina fisica, due bit aggiuntivi (Validità e Riferimento) si calcoli il numero di bit dell indirizzo fisico. Si ipotizzi, quindi, la presenza di una cache 1-way associative (diretta) di 64 KB (solo dati), con blocchi di 4 B. Si descrivano composizione e dimensioni delle varie parti di ciascuna entry della cache e si calcoli la dimensione complessiva della cache (TAG e dati). L offset all interno della pagina è: PageOffset size = log 2 Page size = log 2 1K = 10 b Dunque il numero di bit che esprimono il numero di pagina virtuale è: VirtualPage size = VirtualADDR size - PageOffset size = 32 b - 10 b = 22 b Dato che la PT è indirizzata dal numero di pagina virtuale, il numero di entry è pari a: #PTentry = 2 VirtualPagesize = 2 22 Per cui la dimensione di ogni entry è pari a: PTentry size = PT size / #PTentry = 8 * 2 20 / 2 22 = 2 B = 16 b Ciascuna entry contiene i due bit di controllo e l indirizzo di pagina fisico e quindi: FisicalPage size = PTentry size - (Valid, Dirty) = 16 b - 2 b = 14 b Quindi l indirizzo fisico è complessivamente dato da: FisicalADDR size = FisicalPage size + PageOffset size = 14 b + 10 b = 24 b Continua 5
6 Continua esercizio 8: L offset all interno del blocco è: OFFSET size = log 2 Block size = log 2 4 B = 2 b Quindi l indirizzo del blocco è: BlockADDR size = FisicalADDR size - OFFSET size = 24 b 2 b = 22 b Il numero di blocchi nella cache è di: #Blocks = Cache size / Block size = 64 KB / 4 B = 64 * 2 10 B / 4 B = Pertanto: INDEX size = log 2 #Blocks = log = 14 Mentre la dimensione del TAG sarà: TAG size = BlockADDR size - INDEX size = 22 b - 14 b = 8 b = 1 B Dato che ogni entry contiene dati e TAG, la dimensione complessiva della cache sarà: Cache size (dati + TAG) = #Blocks * (Block size + TAG size ) = 2 14 * 5 B = 80 KB 6
Esercitazione su Gerarchie di Memoria
Esercitazione su Gerarchie di Memoria Introduzione Memoria o gerarchie di memoria: cache, memoria principale, memoria di massa etc. (con possibilità di fallimenti nell accesso) o organizzazione, dimensionamento,
DettagliEsercitazione su Gerarchie di Memoria
Esercitazione su Gerarchie di Memoria Introduzione Memoria o gerarchie di memoria: cache, memoria principale, memoria di massa etc. (con possibilità di fallimenti nell accesso) o organizzazione, dimensionamento,
DettagliMemoria Virtuale e I/O
Memoria Virtuale e I/O Paolo Baldan Baldan@dsi.unive.it Introduzione CPU - progettazione - prestazioni ideali Le prestazioni reali sono influenzate (pesantemente) da memoria e I/O. Memoria - gerarchie
DettagliGerarchie di Memoria Andrea Gasparetto andrea.gasparetto@unive.it
Tutorato di architettura degli elaboratori Gerarchie di Memoria Andrea Gasparetto andrea.gasparetto@unive.it Esercizio 1 Considerare un sistema di memoria virtuale paginata, con dimensione dell indirizzo
DettagliPrestazioni & Co: CPU, Memoria, I/O
Prestazioni & Co: CPU, Memoria, I/O CPU - progettazione - prestazioni ideali Panoramica Memoria - gerarchie di memoria: cache, memoria principale, etc. - organizzazione, dimensionamento, indirizzamento,
DettagliIntroduzione alle gerarchie di memoria
Introduzione alle gerarchie di memoria 1 Un ripasso Circuito sequenziale Segnale di clock Circuito sincrono Temporizzazione sensibile ai fronti Latch tipo S-R Latch tipo D Flip-flop tipo D Register file
DettagliIntroduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1
Introduzione alle memorie cache Corso ACSO prof. Cristina SILVANO Politecnico di Milano Cristina Silvano, 06/01/2013 versione 2 1 Obiettivo Sommario Livelli della gerarchia di memoria Memoria cache: concetti
DettagliLa 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
DettagliUniamo VM e CACHE. Physically addressed. Physically Addressed. Prestazioni. Ci sono varie alternative architetturali. Sono quelle piu semplici
Uniamo VM e CACHE Physically addressed Ci sono varie alternative architetturali physically addressed virtually addressed virtually indexed Sono quelle piu semplici un dato puo essere in cache solo se e
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
DettagliGerarchie di memoria. Gerarchie di memoria
Gerarchie di memoria Salvatore Orlando Arch. Elab. - S. Orlando 1 Gerarchie di memoria I programmatori hanno l esigenza di avere memorie sempre più veloci e capienti, per poter memorizzare programmi e
DettagliCache associativa. Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore:
Cache associativa Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore: 1. Indirizzamento diretto (già visto). Ogni blocco della memoria inferiore può
DettagliMEMORIA GERARCHIE DI MEMORIA
MEMORIA GERARCHIE DI MEMORIA La memoria è divisa in più livelli che sono dal più vicino al più distante al CPU, per tempi di accesso: memoria cache, SRAM, capienza (MB), più veloce (decimi di ns), costosa
DettagliLezione 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
DettagliSIMULAZIONE DELLA PROVA INTERMEDIA DEL CORSO DI CALCOLATORI ELETTRONICI
SIMULAZIONE DELLA PROVA INTERMEDIA DEL CORSO DI CALCOLATORI ELETTRONICI ESERCIZIO 1 (10 Punti) Si implementi una rete sequenziale la cui uscita valga Z=1 solo quando viene riconosciuta la sequenza in ingresso
DettagliGestione 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
DettagliArchitettura degli elaboratori - 2 -
Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori e gerarchie di memoria Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it
Dettagli8 bit per la parola nel blocco 10 bit per l insieme (gruppo) nella cache 12 bit di etichetta. Esercizio 3 Memoria Cache
Esercizio 3 Memoria Cache Prima parte - memoria di 1 Giga parole da 16 bit (indirizzata a livello di parola) - cache di 1 Mega parole da 16 bit (indirizzata a livello di parola) - ogni della cache contiene
DettagliCalcolo prestazioni cache (1)
Calcolo prestazioni cache (1) Consideriamo gcc: miss rate x istruzioni = 2% miss rate x dati = 4% frequenza di letture e scritture=36% Consideriamo inoltre un sistema con: CPU: Clock=3Ghz, CPI ideale =1
Dettaglimemoria 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.
DettagliMemory management. Le attività di memory management del SO per la condivisione da parte di più processi
memory management 1 Memory management Le attività di memory management del SO per la condivisione da parte di più processi Ricordare quali parti della memoria sono attualmente in uso e quali no Allocare/disallocare
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
DettagliMatlab/Octave - Esercitazione 13
Facoltà di Ingegneria Industriale Dipartimento di Elettronica e Informazione MATLAB/Octave Laurea in Ingegneria - Esercitazione Energetica, 13 Meccanica e dei Trasporti Matlab/Octave - Esercitazione 13
DettagliGerarchie di memoria. Gerarchie di memoria. Costi e capacità delle memorie. Gerarchie di memoria
Gerarchie di memoria Gerarchie di memoria Salvatore Orlando I programmatori, per memorizzare i loro programmi e dati, necessiterebbero di memorie molto veloci e capienti La tecnologia permette solo di
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/24
DettagliLe virtual machine e la memoria virtuale
Le virtual machine e la memoria virtuale Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento Patterson 5: 5.6, 5.7. 1/29
DettagliSISTEMI OPERATIVI. Gestione della memoria. Gestione della memoria. Partizionamento Paginazione Segmentazione Memoria virtuale. 08.
SISTEMI OPERATIVI 08.a Gestione della memoria Gestione della memoria Partizionamento Paginazione Segmentazione Memoria virtuale 1 Obiettivi La gestione della memoria (effettuata dal SO usando gli accorgimenti
DettagliGerarchia di Memorie
Gerarchia di Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Gerarchia di Memorie Obiettivo: creare l illusione di
DettagliDesiderata: 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
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
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
DettagliCorso di Informatica
Corso di Informatica Modulo T2 3-La memoria 1 Prerequisiti Concetto di memoria Dati e istruzioni Bit e byte 2 1 Introduzione In questa Unità studiamo più in dettaglio la memoria del computer e le sue funzioni.
DettagliCache: 1 livello della gerarchia di memoria
Cache: 1 livello della gerarchia di memoria Processore Controllo Datapath Registri On chip cache Cache di secondo livello (SRAM) Memoria principale (DRAM) Memoria secondaria (Disco) 4 decisioni da prendere
DettagliUniversità degli Studi di Padova - Corso di Laurea in Informatica
Sistemi Operativi 17 giugno 2016 er. A 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
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
DettagliUniversità degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica
Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Regole dell'esame Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di
DettagliLa gerarchia di Memoria
La gerarchia di Memoria Metodologie di progettazione Hw-Sw- LS. Ing. Informatica Gap delle prestazioni DRAM - CPU 000 CPU 00 0 DRAM 980 98 982 983 984 985 986 987 988 989 990 99 992 993 994 995 996 997
DettagliSIMULAZIONE DELLA PRIMA PROVA INTERMEDIA DEL MODULO DI. CORSO DI LAUREA IN INGEGNERIA ELETTRICA ED ELETTRONICA, INGEGNERIA BIOMEDICA 21 Aprile 2015
SIMULAZIONE DELLA PRIMA PROVA INTERMEDIA DEL MODULO DI CORSO DI LAUREA IN INGEGNERIA ELETTRICA ED ELETTRONICA, INGEGNERIA BIOMEDICA NOME: COGNOME: MATRICOLA: CFU: ESERCIZIO 1 (7 punti) Disegnare il circuito
DettagliEsercizi svolti sulle cache - Soluzioni
Esercizi svolti sulle cache - Soluzioni 1. Si progetti una cache di 16K a 8 vie per un sistema con indirizzamento al byte di 32bit, bus dati a 32 bit, bus indirizzi a 30bit, e word di 4 byte. In quale
DettagliMemoria Virtuale. Anche la memoria principale ha una dimensione limitata. memoria principale (memoria fisica) memoria secondaria (memoria virtuale)
Memoria Virtuale Anche la memoria principale ha una dimensione limitata. Possiamo pensare di superare questo limite utilizzando memorie secondarie (essenzialmente dischi) e vedendo la memoria principale
Dettaglistatic dynamic random access memory
LA MEMORIA SRAM e D R A M static dynamic random access memory SRAM: unità che memorizza un gran numero di parole in un insieme di flip-flop, opportunamente connessi, mediante un sistema di indirizzamento
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
DettagliGerachie di Memorie. Matteo Dominoni a.a. 2002/2003. Gerarchie di Memoria A.A. 2002/2003 1
Gerachie di Memorie Matteo Dominoni a.a. 2002/2003 Gerarchie di Memoria A.A. 2002/2003 1 Dove Studiare? Capitolo 7 Patterson-Hennessy Gerarchie di Memoria A.A. 2002/2003 2 Obbiettivo Creare l illusione
DettagliSISTEMI 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)
DettagliSommario. Indirizzamento della memoria cache. Indirizzamento della memoria cache. Esercitazione di Calcolatori Elettronici Prof. Gian Luca Marcialis
Esercitazione di Calcolatori Elettronici Prof. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Esercitazione 2 (Capitolo 3) Memoria Cache Memoria Disco Codice di Hamming Sommario Memoria
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
DettagliEsercizi sulla memoria cache - Informatica 2 - L. Breveglieri 1
Esercizio 1 Sia data una memoria cache di tipo a indirizzamento diretto (direct-mapped), con blocchi di dimensioni pari a una sola parola per blocco, e contenente. La parola è lunga 16 bit, e la memoria
DettagliSistemi Operativi Il Sistema Operativo Windows (parte 2)
Sistemi Operativi Il Sistema Operativo Windows (parte 2) Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Gestione della memoria 1 Ogni processo dispone
DettagliLe Memorie. Si distinguono per: Supporti sui quali le informazioni vengono fisicamente memorizzate.
Le Memorie Supporti sui quali le informazioni vengono fisicamente memorizzate. Si distinguono per: Velocità Costo per bit Tipo di accesso Accesso a byte o blocchi di byte Volatilità Parte I 15 Due Tipi
DettagliLe virtual machine e la memoria virtuale
Le virtual machine e la memoria virtuale Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento Patterson 5: 5.6, 5.7. 1/30
DettagliLa gestione della memoria. Lezione 16 Sistemi Operativi
La gestione della memoria Lezione 16 Sistemi Operativi La memoria come risorsa La memoria centrale è una risorsa fondamentale di un sistema di calcolo L accesso a memoria centrale è una delle operazioni
DettagliDove 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()
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
DettagliCalcolatori Elettronici. La memoria gerarchica La memoria virtuale
Calcolatori Elettronici La memoria gerarchica La memoria virtuale Come usare la memoria secondaria oltre che per conservare permanentemente dati e programmi Idea Tenere parte del codice in mem princ e
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
DettagliGli attori principali di un architettura
Memoria Architettura degli Elaboratori e delle Reti, Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: borghese@dsi.unimi.it Gli attori principali
DettagliUniversità degli Studi di Padova - Facoltà di Scienze MM.FF.NN. - Corso di Laurea in Informatica
Sistemi Operativi Appello del 9 luglio 2013 ersione Compito A Università degli Studi di Padova - acoltà di Scienze MM..NN. - Corso di Laurea in Informatica Regole dell'esame Il presente esame scritto deve
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
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
DettagliGerarchia di memorie
Gerarchia di memorie Regole base dell'efficienza: - Rendere di massima velocità il caso comune - Piccolo significa (in generale) veloce Nei programmi vi è una significativa presenza di località spaziale
DettagliFamiglia dei processori INTEL
Famiglia dei processori INTEL 1975 2002 8080-8086 - 80286-80386 - 80486 - Pentium - Pentium II-III-IV - Itanium Compatibilità del SW (assemby) 8086 80286 80386 80486 Pentium Pentium III Perché studiare
DettagliGerarchie di memoria Memorie a componenti dinamici 1
Gerarchie di memoria Memorie a componenti dinamici 1 Denominate Dynamic RAM Memorizzazione su componenti capacitivi 1 transistor per bit (4-6 per Static RAM), dunque maggiore densità Richiede un ciclo
DettagliGestione della Memoria Introduzione ai Sistemi Operativi Corso di Informatica Laurea in Fisica
Gestione della Memoria Introduzione ai Sistemi Operativi Corso di Informatica Laurea in Fisica prof. Ing. Corrado Santoro A.A. 2008-09 Architettura di un sistema operativo Progr 1 Progr 2 Progr 3 Progr
DettagliCalcolatori Elettronici B a.a. 2008/2009
Calcolatori Elettronici B aa 28/29 MEMORIA VIRTUALE: ESERCIZI Massimiliano Giacomin 1 Dal Tema d esame 2 set 26 [ES 7] (omissis) Supponendo che gli indirizzi virtuali siano a 32 bit e che la dimensione
DettagliSOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004
SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (9 punti) Si
DettagliLa Gerarchia delle Memorie. Calcolatori Elettronici II
La Gerarchia delle Memorie Calcolatori Elettronici II 1 Connessione memoria processore: schema tipo Processor MAR MDR k-bit address bus n-bit data bus Memory Up to 2 k addressable locations Dimensione
DettagliStruttura gerarchica delle memorie
Architettura degli Elaboratori e delle Reti Struttura gerarchica delle memorie A. Borghese, F. Pedersini Dipartimento di Informatica Università degli studi di Milano 1 Considerazioni introduttive Tipologie
DettagliDesiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Memoria cache, struttura. Tecniche impiegate. Ad ogni accesso alla memoria
Connessioni tra livelli di memoria Tape Registers Cache Main memory Magnetic disk Optical disk (Architettura degli Elaboratori) Gerarchie di memorie / 58 Metodo: Desiderata: memoria capiente e veloce i
DettagliCalcolatori 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
DettagliInformatica giuridica
Informatica giuridica Corso di laurea in Scienze dei Servizi giuridici Corso di laurea magistrale in Giurisprudenza A.A. 2015/16 L architettura hardware degli elaboratori La scheda madre 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. 2016-17 Pietro Frasca Lezione 12 Martedì 22-11-2016 Partizioni variabili Un miglioramento dell uso
DettagliMemoria. Memoria. Sommario. Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica
Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Introduzione Gerachia di memoria virtuale cache. 2 M. Violante 1.1 È il luogo dove risiedono i dati e le istruzioni;
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
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
DettagliGerarchia di memoria
Gerarchia di memoria 1 Gerarchia di memoria: Terminologia Hit: il dato appare in qualche blocco al livello superiore (Es.: Blocco X) Hit Rate: la frazione degli accessi di memoria trovati nel livello superiore
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:
DettagliSistemi 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
DettagliFILE E INDICI Architettura DBMS
FILE E INDICI Architettura DBMS Giorgio Giacinto 2010 Database 2 Dati su dispositivi di memorizzazione esterni! Dischi! si può leggere qualunque pagina a costo medio fisso! Nastri! si possono leggere le
DettagliSistemi di Calcolo (A.A ) Corso di Laurea in Ingegneria Informatica e Automatica Sapienza Università di Roma
Sistemi di alcolo (.. 2014-2015) orso di Laurea in Ingegneria Informatica e utomatica Sapienza Università di Roma Esercizi riepilogativi sulla seconda parte del Modulo I Memoria virtuale omanda 1 La memoria
DettagliLezione n.14. La memoria cache
Lezione n. La memoria cache Sommario: Politiche di sostituzione Memoria cache Mapping degli indirizzi (modo in cui i dati sono memorizzati nella cache) Capacità e prestazioni Questa lezione conclude la
DettagliSistemi Operativi Gestione della Memoria (parte 3)
Sistemi Operativi Gestione della Memoria Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Paginazione: l anomalia di Belady - 1 Nel 1969 Lazlo Belady
DettagliBlocchi di più parole
Blocchi di più parole Per trarre vantaggio dalla località spaziale non conviene avere blocchi di una sola parola ma blocchi di più parole che occupano nella memoria principale posizioni vicine. Esempio:
DettagliCircuiti di Indirizzamento della Memoria
Circuiti di Indirizzamento della Memoria Maurizio Palesi Maurizio Palesi 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di
DettagliLa gestione della memoria. Lezione 30 Sistemi Operativi
La gestione della memoria Lezione 30 Sistemi Operativi Background Un programma per poter essere eseguito deve essere caricato in memoria Per questioni prestazionali devono essere caricati in memoria contemporaneamente
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
DettagliLA MEMORIA NEL CALCOLATORE
Tipi di memorie (1) Rappresenta il supporto fisico, il dispositivo su cui sono immagazzinate le informazioni (dati e programmi) ROM (Read Only Memory) 1-2 MByte Cache 1 MByte di sola lettura contiene programmi
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
DettagliGerarchia di Memoria e Memorie Cache. ma rallenta R / nw. Qui : modi di aumentare velocità di R / nw. dati e codice non tutti uguali
Gerarchia di Memoria e Memorie Cache Memoria virtuale: comodità + sicurezza ma rallenta R / nw Qui : modi di aumentare velocità di R / nw Osservazione: dati e codice non tutti uguali alcuni si usano poco
DettagliAXO. Operativi. Architettura dei Calcolatori e Sistemi. memoria virtuale
AXO Architettura dei Calcolatori e Sistemi Operativi memoria virtuale concetto di memoria virtuale Separare il concetto di: spazio di indirizzamento di un programma eseguibile e dimensione effettiva della
DettagliSistemi Operativi Esercizi Ricapitolazione. Docente: Claudio E. Palazzi
Sistemi Operativi Esercizi Ricapitolazione Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Problema Numerosi operai in una fabbrica preparano un unico prodotto con l utilizzo di na quantità del componente
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Maurizio Palesi Maurizio Palesi 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di
DettagliMemoria 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
DettagliGestione della Memoria Principale
Gestione della Memoria Principale Fondamenti Binding, Loading, Linking Spazio indirizzi logico vs fisico Allocazione contigua Paginazione Segmentazione Fondamenti La gestione della memoria mira a soddisfare
DettagliGestione della Memoria Principale
Gestione della Memoria Principale Fondamenti Binding, Loading, Linking Spazio indirizzi logico vs. fisico Allocazione contigua Paginazione Segmentazione 1 Fondamenti La memoria di un elaboratore e organizzata
DettagliIl 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
DettagliGestione della memoria
Gestione della memoria Gestione della Memoria Introduzione Spazi di indirizzamento Allocazione contigua Paginazione Segmentazione Segmentazione con paginazione 2 1 Introduzione La condivisione della memoria
DettagliLa gerarchia delle memorie. Sommario
La gerarchia delle memorie Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento Patterson: Sezioni 5.1, 5.2 1/37 http:\\homes.dsi.unimi.it\
DettagliMemoria. 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
DettagliParte 5. Memoria e I/O
Parte 5 Memoria e I/O Facoltà di Scienze MM FF NN Università di Urbino A.A. 2001/2002 1 1 Memoria [Bucci c3.1] 1.1 Classificazione Memorie volatili (che perdono il contenuto quando si spegne l alimentazione)
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità
Dettagli