Lezione 19 Memoria Virtuale

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Lezione 19 Memoria Virtuale"

Transcript

1 Lezione 9 Memoria Virtuale All figures from Computer Organization and Design: The Hardware/Software Approach, Second Edition, by David Patterson and John Hennessy, are copyrighted material. (COPYRIGHT 998 MORGAN KAUFMANN PUBLISHERS, INC. ALL RIGHTS RESERVED.) Figures may be reproduced only for classroom or personal educational use in conjunction with the book and only when the above copyright line is included. They may not be otherwise reproduced, distributed, or incorporated into other works without the prior written consent of the publisher. Roberto Giorgi, Universita di Siena, C7L9, Slide Other material is adapted from CS52 Copyright (C) 2 UCB Disk Caching (!= Memoria Virtuale) Idea: utilizzare la Memoria Principale come se fosse una cache del disco Scopo: ridurre il tempo medio di accesso ai file che stanno su disco Memoria Principale DISCO -5 clks 5 clks Funzionamento: e una cache implementata completamente a software Memorizza i blocchi di disco piu recentemente utilizzati Su hit, ottengo un tempo di accesso di 5 /= 4 volte maggiore La tecnica e usata da Windows, Linux e altri sistemi operativi Roberto Giorgi, Universita di Siena, C7L9, Slide 2

2 Memoria Virtuale Obiettivi delle tecniche di caching Memoria Disco Disk Caching migliorare il tempo di accesso file Memoria Virtuale creare uno spazio di indirizzamento piu largo (con tempi di accesso simili alla memoria principale) Uso il disco come memoria esterna rispetto alla memoria principale: il livello successivo nella gerarchia di memoria La memoria contiene una copia delle istruzioni/dati piu recentemente usati Tutto il resto sta su disco Roberto Giorgi, Universita di Siena, C7L9, Slide 3 Memoria Virtuale: vantaggi Crea l illusione di un enorme quantita di memoria (molto piu ampia della memoria fisica realmente disponibile nel calcolatore) Rimuove i vincoli di programmazione legati all avere una memoria di dimensioni limitate Rilocazione dei programmi non necessaria Il programma viene caricato in uno spazio di memoria che e completamente vuoto per ogni programma, ovvero ogni programma ha a disposizione tutti gli indirizzi di uno proprio spazio virtuale privato Protezione dei programmi Porzioni dello spazio di indirizzamento possono essere rese condivise in maniera controllata ed efficiente Un programma non puo accedere allo spazio di indirizzamento privato di un altro programma Il tutto funziona grazie ancora al principio di localita In un certo intervallo di tempo lo working set del programma e abbastanza limitato Roberto Giorgi, Universita di Siena, C7L9, Slide 4

3 Memoria Virtuale: Funzionamento L unita di trasferimento fra memoria e disco e la pagina La pagina ha una dimensione tipica di 4-6KB Indirizzi Virtuali Indirizzi Fisici Memoria Principale swap-in swap-out Meccanismo di traduzione degli indirizzi DISK La Pagina Virtuale indirizzata puo trovarsi sul disco anziche nella memoria fisica swap-in Roberto Giorgi, Universita di Siena, C7L9, Slide 5 Tempi di accesso Rapporti tipici fra i tempi di accesso di vari tipi di memoria L L2 L2 MEM MEM DISCO t t t penalty, L t hit, L penalty, L 2 t hit, L 2 penalty, MEM t hit, MEM Nel caso di un page-miss, o meglio di un page-fault, il tempo di penalty risulta molto grande = = 5 5 = Roberto Giorgi, Universita di Siena, C7L9, Slide 6

4 Esempio Il processore P, viaggia a 3 MIPS e /3 delle istruzioni generate da un certo programma sono di tipo LD P fa 3/3 = milioni di load/secondo Supponiamo che L e L2 insieme riescano a servire il 95% delle richieste la Memoria Principale deve servire.5 x 7 = 5 x 5 load/secondo Supponiamo che il Disco possa servire 5 richieste/secondo (considerando un rapporto di : per servire un miss). Determinare il tempo di esecuzione del programma ipotizzando che l hit-rate della memoria principale assuma i seguenti valori: Hit Rate Richieste al disco Tempo di Esecuzione Memoria Principale per secondo del Programma..... % (normalizzato) % % % 5 9.% 5 Roberto Giorgi, Universita di Siena, C7L9, Slide 7 Memoria Virtuale: Caratteristiche La memoria principale si comporta come una cache Le caratteristiche di tale cache sono A=A MAX cache fully associative: una pagina virtuale puo essere mappata su qualsiasi pagina fisica B=4-6KB C=Dimensione della Memoria Politica di Rimpiazzamento=LRU Politica di Scrittura=WB (Write-Back) Politica di Scrittura su Miss=WA (Write Allocate) Roberto Giorgi, Universita di Siena, C7L9, Slide 8

5 Memoria Virtuale: Terminologia Working set : Insieme di pagine che e necessario mantenere in Memoria per ottenere un hit rate accettabile Thrashing : Perdita di prestazioni conseguente al fatto che lo working set e diventato piu grande della Memoria Principale Page Swap : Trasferimento di una pagina nuova in memoria principale e conseguente riscrittura su disco di una pagina vittima Roberto Giorgi, Universita di Siena, C7L9, Slide 9 Memoria Virtuale: schema logico Identificatore di Pagina Virtuale (VPN) n + p = 32 n Indirizzo Virtuale Funzione di Mapping Virtuale Fisico p Offset di pagina Identificatore di Pagina Fisica (PPN) m Indirizzo Fisico m + p Roberto Giorgi, Universita di Siena, C7L9, Slide

6 Funzione di Mapping Virtuale-Fisico E una tabella! Bit di validita : mi dice se la pagina e in memoria o no Bit di modifica (Dirty): utile all algoritmo di scrittura Bit di uso: utile all algoritmo di rimpiazzamento VPN V D U Identificatore di Pag. Fisica Memoria Fisica PPN DISCO La Tabella delle Pagine sta in Memoria Fisica Quanto e grande questa tabella? Roberto Giorgi, Universita di Siena, C7L9, Slide Gestione del Page-Fault (Page-Fault Handler) Passi per leggere una locazione della Memoria Principale ) Presento un indirizzo virtuale al sistema di Memoria 2) Accedo alla Tabella delle Pagine per vedere se la pagina e in RAM 3) Se la pagina e in RAM accedo nuovamente alla RAM per prendere il dato 4) Se la pagina non e in RAM lancio un interrupt al processore e chiamo una routine di servizio del Sistema Operativo denominata Page-Fault Handler 5) Il Page-Fault Handler si occupa di fare il page-swap (tramite il DMA) e porta in RAM la pagina richiesta prelevandola da disco 6) Viene ripetuta la lettura: stavolta la pagina si trovera in RAM Anche se avessi una percentuale del % di Hit-Rate in Memoria Principale, la penalty dovuta all uso della memoria virtuale comporaterebbe un raddoppio dei tempi di accesso alla memoria Roberto Giorgi, Universita di Siena, C7L9, Slide 2

7 Tecniche per ridurre la Tabella delle Pagine A) Paginazione della Tabella delle Pagine Parte della tabella finisce in memoria virtuale anziche fisica ( si potra generare un doppio page-fault!) Staranno in RAM solo le porzioni della tabelle piu usate B) Tabella delle Pagine Inversa Si applica una funzione di hashing all indirizzo virtuale cosi che il numero di entry nella tabella delle pagine e al piu pari al numero totale di pagine fisiche Roberto Giorgi, Universita di Siena, C7L9, Slide 3 A) Tabella delle Pagine a Due Livelli Indirizzo a 32 bit 2 P index P2 index page offest radice K foglie 4KB 4 bytes Ho k tabelle di secondo livello ( foglie ) + la tabella radice Non tutte le tabelle foglie saranno pero presenti in memoria In totale la radice occupa 4KB tutte le foglie 4MB Ogni processo del sistema ha pero una proprima tabella completa! 4 bytes Roberto Giorgi, Universita di Siena, C7L9, Slide 4

8 A) Tabella delle Pagine a Tre Livelli (Alpha) Avendo indirizzi a 64 bit conviene suddividere in tre livelli Nell Alpha uso in realta solo 43 bit per lo spazio virtuale selector Indirizzo VIRTUALE a 64-bit PAGE TABLE BASE REGISTER + Level Level 2 Level 3 page offest + + L page table L2 page table L3 page table Roberto Giorgi, Universita di Siena, C7L9, Slide 5 PHYSICAL PAGE NUMBER page offest 64-bit PHYSICAL address A) Metodi di accesso Top-Down e Bottom-Up Top-Down Accesso alla root page table (sempre in memoria) Accesso alla leaf page table Accesso alla pagina fisica Totale 3 accessi alla memoria + eventuale fault o doppio fault In generale ho un numero di accessi alla memoria pari a +Num_Livelli Bottom-Up Accesso diretto all insieme delle leaf page table* (supposte contigue in memoria e allineate su boundary di 4MB per semplificare l accesso) - Se l operazione ha successo: bene (ho solo 2 accessi in memoria) - Altrimenti: si procede con un accesso bottom-up completo Se va tutto bene, faccio 2 accessi fissi indipendentemente dal numero di livelli della tabella delle pagine Roberto Giorgi, Universita di Siena, C7L9, Slide 6 * affinche questo funzioni devo avere un metodo per sapere se ci sono leaf al loro posto oppure no

9 B) Tabella delle Pagine Inversa () Una entry nella tabella delle pagine per ogni pagina fisica Vantaggi La dimensione scala con la dimensione della memoria fisica anziche con quella della memoria virtuale La dimensione e fissa a prescindere dal numero di processi! Chiamata inversa perche le entry sono indicizzate per PPN anziche per VPN In ogni caso la ricerca avviene fornendo un VPN e ottenendo un PPN Il PPN e dedotto dalla posizione della VPN trovata Tecnica Si applica una funzione di hash al VPN L hash costituisce un indice nella tabella inversa corrispondente al PPN Poiche diversi VPN possono produrre lo stesso hash e necessario un meccanismo per risolvere le collisioni (es. lista concatenata memorizzata all interno della tabella stessa): la nuova entry e aggiunta in fondo alla lista E possibile che si perda un po tempo per percorrere tale lista concatenata Roberto Giorgi, Universita di Siena, C7L9, Slide 7 B) Tabella delle Pagine Inversa (2) VPN PPN K Numero di elementi della tabella = K V Virtual Address PPN PPN PPN 2 PPN 3 Virtual Page Virtual Page 6 Virtual Page 52 D C O M P A R E Physical Page Number L IBM System 38 (AS4) implementa indirizzi a 64-bit 48 bit costituiscono il numero di pagina virtuale e tali elementi hanno un tag di soli 2-bit Roberto Giorgi, Universita di Siena, C7L9, Slide 8 Funziona come una cache fully associative!

10 Velocizzare il meccanismo di traduzione Indirizzi Virtuali N TLB Funzione di Mapping Virtuale Fisico P M Indirizzi Fisici Uso una piccola cache (TLB=Translation Lookaside Buffer) per avere a portata di mano un po di elementi della Tabella delle Pagine Roberto Giorgi, Universita di Siena, C7L9, Slide 9 Funziona come una cache L per la Tabella delle Pagine (L2)! TLB: Caratteristiche V D U Permessi VPN PPN tag La TLB e una cache che puo essere fully associative, set-associative o ad accesso diretto La TLB ha tipicamente non piu di elementi Il tempo di accesso alla TLB e confrontabile col tempo di accesso alla cache (molto piu basso del tempo di accesso alla memoria principale) Roberto Giorgi, Universita di Siena, C7L9, Slide 2

11 TLB: Organizzazione Logica VPN V D U Tag Physical Address Memoria Fisica V D U Physical Page or Disk Address DISCO Roberto Giorgi, Universita di Siena, C7L9, Slide 2 TLB: esempio Memoria Virtuale la memoria agisce da cache per il disco La tabella delle pagine mappa indirizzi virtuali in fisici La TLB e una cache delle piu recenti traduzioni Virtual Address Space Physical Memory Space Page Table Translation Lookaside Buffer VPN PPN virtual address page off Roberto Giorgi, Universita di Siena, C7L9, Slide 22

12 TLB: Schema e interazione con la Cache CPU VA TLB Lookup PA hit Cache miss Main Memory miss hit Translation /2 t C data t C 2 t C VA = Virtual Address PA= Physical Address Roberto Giorgi, Universita di Siena, C7L9, Slide 23 TLB+cache: diagramma di funzionamento Virtual address TLB access TLB miss exception No TLB hit? Yes Physical address No Write? Yes Try to read data from cache No Write access bit on? Yes Cache miss stall No Cache hit? Yes Write protection exception Writedataintocache, update the tag, and put the data and the address into the write buffer Deliver data to the CPU Roberto Giorgi, Universita di Siena, C7L9, Slide 24

13 TLB: Valori tipici Dimensione del blocco: 8 byte Hit-time:.5 - cicl Miss-penalty: -5 cicli Hit-rate: da 99% a 99.99% Dimensione della TLB: elementi Roberto Giorgi, Universita di Siena, C7L9, Slide 25 Reducing Translation Time Machines with TLBs go one step further to reduce # cycles/cache access They overlap the cache access with the TLB access Works because high order bits of the VA are used to look in the TLB while low order bits are used as index into cache Roberto Giorgi, Universita di Siena, C7L9, Slide 26

14 Overlapped Cache & TLB Access 32 TLB assoc lookup index Cache K 2 4 bytes PA Hit/ Miss 2 2 page # disp PA Data Hit/ Miss IF cache hit AND (cache tag = PA) then deliver data to CPU ELSE IF [cache miss OR (cache tag = PA)] and TLB hit THEN access memory with the PA from the TLB ELSE do standard VA translation = Roberto Giorgi, Universita di Siena, C7L9, Slide 27 Problems With Overlapped TLB Access Overlapped access only works as long as the address bits used to index into the cache do not change as the result of VA translation This usually limits things to small caches, large page sizes, or high n-way set associative caches if you want a large cache Example: suppose everything the same except that the cache is increased to 8 K bytes instead of 4 K: 2 cache index This bit is changed by VA translation, but 2 2 is needed for cache virt page # disp lookup Solutions: go to 8K byte page sizes; go to 2 way set associative cache; or SW guarantee VA[3]=PA[3] 4 4 K 2 way set assoc cache Roberto Giorgi, Universita di Siena, C7L9, Slide 28

15 Address Translation + L Cache () Virtual Address N TLB Virtual to Physical Page Map P M Physical Address Problem with physically addressed cache is increased latency L Cache Data Roberto Giorgi, Universita di Siena, C7L9, Slide 29 Address Translation + L Cache (2) Virtual Address N TLB Virtual to Physical Page Map P L Cache M Physical Address Data Aliasing problem: 2 virtual pages may correspond to same physical page which is cached in 2 different locations in L! Roberto Giorgi, Universita di Siena, C7L9, Slide 3

16 Address Translation + L Cache (3) Virtual Address N P TLB Virtual to Physical Page Map L Cache M Data Physical Address PPN PPN (tag) = L HIT Problem is the limitation on the size of the L Cache Roberto Giorgi, Universita di Siena, C7L9, Slide 3 Virtual Address and a Cache CPU VA PA miss Translation Cache Roberto Giorgi, Universita di Siena, C7L9, Slide 32 Main Memory hit data It takes an extra memory access to translate VA to PA This makes cache access very expensive, and this is the "innermost loop that you want to go as fast as possible ASIDE: Why access cache with PA at all? VA caches have a problem! synonym / alias problem: two different virtual addresses map to same physical address => two different cache entries holding data for the same physical address! for update: must update all cache entries with same physical address or memory becomes inconsistent determining this requires significant hardware, essentially an associative lookup on the physical address tags to see if you have multiple hits; or software enforced alias boundary: same lsb of VA &PA > cache size

17 R3 TLB & CP (MMU) VPN ASID 2 8 PFN N D V G global (ignore ASID) valid, dirty, non-cacheable 63 Entry Hi Entry Lo loaded when VA presented for translation Index index of probe and fail flag random random index for replacement 8 7 Safe entries Roberto Giorgi, Universita di Siena, C7L9, Slide 33 Constraints on TLB organization MIPS R3 Pipeline Inst Fetch Dcd/ Reg ALU / E.A Memory Write Reg TLB I-Cache RF Operation WB E.A. TLB D-Cache TLB 64 entry, on-chip, fully associative, software TLB fault handler Virtual Address Space ASID V. Page Number Offset xx User segment (caching based on PT/TLB entry) Kernel physical space, cached Kernel physical space, uncached x Kernel virtual space Allows context switching among 64 user processes without TLB flush Roberto Giorgi, Universita di Siena, C7L9, Slide 34

18 Virtually Addressed Cache CPU VA Translation PA Main Memory hit Cache data Only require address translation on cache miss! synonym problem: two different virtual addresses map to same physical address => two different cache entries holding data for the same physical address! nightmare for update: must update all cache entries with same physical address or memory becomes inconsistent determining this requires significant hardware, essentially an associative lookup on the physical address tags to see if you have multiple hits. (usually disallowed by fiat) Roberto Giorgi, Universita di Siena, C7L9, Slide 35 Optimal Page Size Mimimize wasted storage small page minimizes internal fragmentation small page increase size of page table Minmize transfer time large pages (multiple disk sectors) amortize access cost sometimes transfer unnecessary info sometimes prefetch useful data sometimes discards useless data early General trend toward larger pages because big cheap RAM increasing mem / disk performance gap larger address spaces Roberto Giorgi, Universita di Siena, C7L9, Slide 36

19 Page Replacement: Not Recently Used (-bit LRU,Clock) page table entry Associated with each page is a reference flag such that ref flag = if the page has been referenced in recent past = otherwise -- if replacement is necessary, choose any page frame such that its reference bit is. This is a page that has not been referenced in the recent past dirty used page table entry Roberto Giorgi, Universita di Siena, C7L9, Slide 37 page fault handler: Or search for the a page that is both not recently referenced AND not dirty. last replaced pointer (lrp) if replacement is to take place, advance lrp to next entry (mod table size) until one with a bit is found; this is the target for replacement; As a side effect, all examined PTE's have their reference bits set to zero. Architecture part: support dirty and used bits in the page table => may need to update PTE on any instruction fetch, load, store How does TLB affect this design problem? Software TLB miss? Modern Systems Very complicated memory systems: Characteristic Intel Pentium Pro PowerPC 64 Virtual address 32 bits 52 bits Physical address 32 bits 32 bits Page size 4 KB, 4 MB 4 KB, selectable, and 256 MB TLB organization A TLB for instructions and a TLB for data A TLB for instructions and a TLB for data Both four-way set associative Both two-way set associative Pseudo-LRU replacement LRU replacement Instruction TLB: 32 entries Instruction TLB: 28 entries Data TLB: 64 entries Data TLB: 28 entries TLB misses handled in hardware TLB misses handled in hardware Characteristic Intel Pentium Pro PowerPC 64 Cache organization Split instruction and data caches Split intruction and data caches Cache size 8 KB each for instructions/data 6 KB each for instructions/data Cache associativity Four-way set associative Four-way set associative Replacement Approximated LRU replacement LRU replacement Block size 32 bytes 32 bytes Write policy Write-back Write-back or write-through Roberto Giorgi, Universita di Siena, C7L9, Slide 38

20 Survey R4 32 bit virtual, 36 bit physical variable page size (4KB to 6 MB) 48 entries mapping page pairs (28 bit) MPC6 (32 bit implementation of 64 bit PowerPC arch) 52 bit virtual, 32 bit physical, 6 segment registers 4KB page, 256MB segment 4 entry instruction TLB 256 entry, 2-way TLB (and variable sized block translate) overlapped lookup into 8-way 32KB L cache hardware table search through hashed page tables Alpha 264 arch is 64 bit virtual, implementation subset: 43, 47,5,55 bit 8,6,32, or 64KB pages (3 level page table) 2 entry ITLB, 32 entry DTLB 43 bit virtual, 28 bit physical oct-word address Roberto Giorgi, Universita di Siena, C7L9, Slide Hardware / Software Boundary What aspects of the Virtual -> Physical Translation is detemined in hardare? TLB Format Type of Page Table Page Table Entry Format Disk Placement Paging Policy Roberto Giorgi, Universita di Siena, C7L9, Slide 4

21 Why virtual memory? Generality ability to run programs larger than size of physical memory Storage management allocation/deallocation of variable sized blocks is costly and leads to (external) fragmentation Protection regions of the address space can be R/O, Ex,... Flexibility portions of a program can be placed anywhere, without relocation Storage efficiency retain only most important portions of the program in memory Concurrent I/O execute other processes while loading/dumping page Expandability can leave room in virtual address space for objects to grow. Performance Roberto Giorgi, Universita di Siena, C7L9, Slide 4 Observe: impact of multiprogramming, impact of higher level languages Summary (): TLB, Virtual Memory Caches, TLBs, Virtual Memory all understood by examining how they deal with 4 questions: ) Where can block be placed? 2) How is block found? 3) What block is repalced on miss? 4) How are writes handled? Page tables map virtual address to physical address TLBs are important for fast translation TLB misses are significant in processor performance: (funny times, as most systems can t access all of 2nd level cache without TLB misses!) Roberto Giorgi, Universita di Siena, C7L9, Slide 42

22 Summary (2): Memory Hierachy Virtual memory was controversial at the time: can SW automatically manage 64KB across many programs? X DRAM growth removed the controversy Today VM allows many processes to share single memory without having to swap all processes to disk; VM protection is more important than memory hierarchy Today CPU time is a function of (ops, cache misses) vs. just f(ops): What does this mean to Compilers, Data structures, Algorithms? Roberto Giorgi, Universita di Siena, C7L9, Slide 43

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

Lezione 19 Memoria Virtuale

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

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

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

Gerachie 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 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

Dettagli

Le virtual machine e la memoria virtuale

Le 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

Dettagli

Uniamo VM e CACHE. Physically addressed. Physically Addressed. Prestazioni. Ci sono varie alternative architetturali. Sono quelle piu semplici

Uniamo 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

Dettagli

Le virtual machine e la memoria virtuale

Le 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

Dettagli

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM Obiettivo Tipi classici di memoria Fornire illimitata memoria veloce Problemi: costo tecnologia Soluzioni: utilizzare diversi tipi di memoria... Static RAM access times are 2-25ns at cost of $100 to $250

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 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

Memoria 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. 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

Dettagli

Gerarchia di memorie

Gerarchia 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

Dettagli

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale

Calcolatori 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

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

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

Architetture Avanzate dei Calcolatori. Valeria Cardellini. Divario delle prestazioni processore- memoria

Architetture Avanzate dei Calcolatori. Valeria Cardellini. Divario delle prestazioni processore- memoria La gerarchig erarchia di memorie e (1) Architetture Avanzate dei Calcolatori Valeria Cardellini Divario delle prestazioni processore- memoria 100.000 Soluzione: memorie cache più piccole e veloci tra processore

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

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. 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

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

MEMORIA GERARCHIE DI MEMORIA

MEMORIA 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

Dettagli

12. Implementazione di un File System. 12.1.1 Struttura a livelli. 12.2.1 Allocazione contigua

12. Implementazione di un File System. 12.1.1 Struttura a livelli. 12.2.1 Allocazione contigua 12. Implementazione di un File System 1 Struttura del file system Metodi di allocazione Gestione dello spazio libero Implementazione delle directory Prestazioni ed efficienza 2 Utente 12.1.1 Struttura

Dettagli

Strutture di Memoria 1

Strutture di Memoria 1 Architettura degli Elaboratori e Laboratorio 17 Maggio 2013 Classificazione delle memorie Funzionalitá: Sola lettura ROM, Read Only Memory, generalmente usata per contenere le routine di configurazione

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

Lezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario

Lezione 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

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

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 - parte II La memoria 1 La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso,

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

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

Desiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Memoria cache, struttura. Tecniche impiegate. Ad ogni accesso alla memoria

Desiderata: 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

Dettagli

Hardware di un Computer

Hardware di un Computer Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,

Dettagli

Gerarchie di Memoria Andrea Gasparetto andrea.gasparetto@unive.it

Gerarchie 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

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

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici La Pipeline Superpipeline Pipeline superscalare Schedulazione dinamica della pipeline Processori reali: l architettura Intel e la pipeline dell AMD Opteron X4 Ricapitolando Con

Dettagli

Schemi di paginazione nell architettura 86 (32 e 64 bit)

Schemi di paginazione nell architettura 86 (32 e 64 bit) Paginazione X86 1 Schemi di paginazione nell architettura 86 (32 e 64 bit) Questo documento mette insieme figure dai manuali Intel che illustrano gli aspetti salienti della gestione della memoria nell

Dettagli

Capitolo 11 La memoria cache

Capitolo 11 La memoria cache Capitolo 11 La memoria cache Gerarchie di Memoria Dati sperimentali mostrano che i riferimenti alla memoria godono della proprietà di località spaziale e temporale. Località spaziale: tendenza a generare

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

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

Gerarchie di memoria Divide et impera. Gerarchie di memoria La congettura 90/10. Gerarchie di memoria Schema concettuale

Gerarchie di memoria Divide et impera. Gerarchie di memoria La congettura 90/10. Gerarchie di memoria Schema concettuale Memorie Caratteristiche principali Tecnologie di memoria Locazione: processore, interna (principale), esterna (secondaria) Capacità: dimensione parola, numero di parole Unità di trasferimento: parola,

Dettagli

La memoria centrale (RAM)

La memoria centrale (RAM) La memoria centrale (RAM) Mantiene al proprio interno i dati e le istruzioni dei programmi in esecuzione Memoria ad accesso casuale Tecnologia elettronica: Veloce ma volatile e costosa Due eccezioni R.O.M.

Dettagli

La memoria cache. Lab di Calcolatori

La memoria cache. Lab di Calcolatori La memoria cache 1 Gap delle prestazioni DRAM - CPU 1000 CPU- DRAM Gap CPU Proc 60%/yr. (2X/1.5yr) 100 10 ProcessorMemory Performance Gap: (grows 50% / year) D R A M DRAM9%/yr.(2X/10 yrs) 1 1980 1981 1982

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale

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

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

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

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

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

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

Fondamenti di informatica: un po di storia

Fondamenti di informatica: un po di storia Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi

Dettagli

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia

Dettagli

File system II. Sistemi Operativi Lez. 20

File system II. Sistemi Operativi Lez. 20 File system II Sistemi Operativi Lez. 20 Gestione spazi su disco Esiste un trade-off,tra spreco dello spazio e velocità di trasferimento in base alla dimensione del blocco fisico Gestione spazio su disco

Dettagli

La memoria. I sistemi di memoria di un elaboratore possono essere suddivisi in: Memoria interna al processore Memoria principale Memoria secondaria

La memoria. I sistemi di memoria di un elaboratore possono essere suddivisi in: Memoria interna al processore Memoria principale Memoria secondaria La memoria I sistemi di memoria di un elaboratore possono essere suddivisi in: Memoria interna al processore Memoria principale Memoria secondaria La memoria interna Registri interni alla CPU Visibili

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

Cache e gerarchia di memoria

Cache e gerarchia di memoria Cache e gerarchia di memoria Cache e gerarchia di memoria Gerarchia di Memoria: motivazioni tecnologiche per caching. Località: perché il caching funziona Processor Input Control Memory Datapath Output

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

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

Gerarchie di memoria Roberto Bisiani 5/22/2002 1

Gerarchie di memoria Roberto Bisiani 5/22/2002 1 Gerarchie di memoria 2002 Roberto Bisiani 5/22/2002 Dove studiare Trasparenze delle lezioni Patterson & Hennessy Cap. 7 5/22/2002 2 Tendenze tecnologiche Capacita' Velocita (latenza) Logica: 2x in 3 anni

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

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

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

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

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it La memoria principale 2 izzazione della memoria principale ria principale è organizzata come

Dettagli

Sistema operativo: Gestione della memoria

Sistema operativo: Gestione della memoria Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e

Dettagli

C. P. U. MEMORIA CENTRALE

C. P. U. MEMORIA CENTRALE C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine. Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere

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 memoria virtuale. Calcolatori Elettronici. Valeria Cardellini Rielaborate da Salvatore Tucci

La memoria virtuale. Calcolatori Elettronici. Valeria Cardellini Rielaborate da Salvatore Tucci La memoria virtuale Calcolatori Elettronici Valeria Cardellini Rielaborate da Salvatore Tucci La gerarchia di memorie Registri Istruzioni, operandi L Cache Blocchi Nelle lezioni L2 Cache precedenti{ Più

Dettagli

Materiali per il modulo 1 ECDL. Autore: M. Lanino

Materiali per il modulo 1 ECDL. Autore: M. Lanino Materiali per il modulo 1 ECDL Autore: M. Lanino RAM, l'acronimo per "random access memory", ovvero "memoria ad acceso casuale", è la memoria in cui vengono caricati i dati che devono essere utilizzati

Dettagli

ESERCIZIO 1 (b) Dove è memorizzato il numero del primo blocco del file? Insieme agli altri attributi del file, nella cartella che contiene il file.

ESERCIZIO 1 (b) Dove è memorizzato il numero del primo blocco del file? Insieme agli altri attributi del file, nella cartella che contiene il file. ESERCIZIO 1 Si consideri un hard disk formattato la cui memoria è suddivisa in 16 blocchi (numerati da 0 a 15). Si supponga che sull hard disk sia memorizzato un unico file, contenuto, nell ordine, nei

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti

Dettagli

La memoria - generalità

La memoria - generalità Calcolatori Elettronici La memoria gerarchica Introduzione La memoria - generalità n Funzioni: Supporto alla CPU: deve fornire dati ed istruzioni il più rapidamente possibile Archiviazione: deve consentire

Dettagli

Architettura di un calcolatore

Architettura di un calcolatore 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore (CPU) la memoria principale (RAM) la memoria secondaria i dispositivi di input/output Il processore

Dettagli

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Hazard sul controllo. Sommario

Hazard sul controllo. Sommario Hazard sul controllo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento al Patterson: 4.7, 4.8 1/28 Sommario Riorganizzazione

Dettagli

Università 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 Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 60 minuti dalla sua

Dettagli

Migliorare le prestazioni di processori e memorie

Migliorare le prestazioni di processori e memorie Migliorare le prestazioni di processori e memorie Corso: Architetture degli Elaboratori Docenti: F. Barbanera, G. Bella UNIVERSITA DI CATANIA Dip. di Matematica e Informatica Tipologie dei Miglioramenti

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

Speedup. Si definisce anche lo Speedup relativo in cui, invece di usare T 1 si usa T p (1).

Speedup. Si definisce anche lo Speedup relativo in cui, invece di usare T 1 si usa T p (1). Speedup Vediamo come e' possibile caratterizzare e studiare le performance di un algoritmo parallelo: S n = T 1 T p n Dove T 1 e' il tempo impegato dal miglior algoritmo seriale conosciuto, mentre T p

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

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi

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

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

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del

Dettagli

Il Software. Il software del PC. Il BIOS

Il Software. Il software del PC. Il BIOS Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

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

La gerarchia di Memoria

La 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

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

Organizzazione della memoria

Organizzazione della memoria Memorizzazione dati La fase di codifica permette di esprimere qualsiasi informazione (numeri, testo, immagini, ecc) come stringhe di bit: Es: di immagine 00001001100110010010001100110010011001010010100010

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni

Dettagli

IL PROBLEMA DELLA MEMORIA

IL PROBLEMA DELLA MEMORIA Principi di architetture dei calcolatori: la memoria cache Mariagiovanna Sami IL PROBLEMA DELLA MEMORIA Da sempre, il programmatore desidera una memoria veloce e grande (illimitata ) Il problema: le memorie

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

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

MODELLO DLX IN UNISIM

MODELLO DLX IN UNISIM Architettura e descrizione del modello MODELLO DLX IN UNISIM RINGRAZIAMENTI : I materiali per questa presentazione sono tratti dal tutorial ufficiale di UNISIM - https://unisim.org/site/tutorials/start

Dettagli