Parte 3: Meccanismi di Gestione della Memoria. Parte 3: Meccanismi di Gestione della Memoria. Gerarchia di Memorie

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Parte 3: Meccanismi di Gestione della Memoria. Parte 3: Meccanismi di Gestione della Memoria. Gerarchia di Memorie"

Transcript

1 Parte 3: Meccanismi di Gestione della Memoria Gestione della memoria principale richiami su: binding degli indirizzi, caricamento dinamico, collegamento dinamico, overlay, indirizzi logici e fisici Swapping Allocazione contigua Problema della frammentazione Paginazione Segmentazione Tecniche combinate 1 Parte 3: Meccanismi di Gestione della Memoria Memoria Virtuale Paginazione su richiesta Algoritmi di rimpiazzamento delle pagine Allocazione dei frame Problema del Trashing Gestione della memoria secondaria File System Interfaccia, implementazione, file system distribuiti Struttura della memoria secondaria scheduling del disco gestione dell area di swap 2 Gerarchia di Memorie 3 P iù v el o ci P iù c a p ac i Velocità implica costo maggiore, capacità minore, volatilità maggiore

2 9. Gestione della Memoria 4 I programmi devono essere in MP almeno parzialmente per essere eseguiti gestire la MP in modo da favorire l'utilizzo efficiente della CPU (e la comodità d uso da parte dei programmatori e degli utenti dei programmi) Poiché la MP è piccola (per le esigenze) e volatile (per le esigenze) usarelamemoria Secondaria(MS) perallargaree rendere non volatile la MP Gestione della MS per estendere la MP Gestione della MS per memorizzare dati e/o programmi in modo permanente Gestione della Memoria Primaria (Richiami) Ciclo di fetch&execute genera in vario modo indirizzi di MP Address Binding: condivisione della MP i programmi che sono in MP devono dividersi lo spazio di indirizzi della MP fisica in quale momento un programma e i suoi dati vengono legati (binding) ai loro indirizzi? Preparazione di un programma utente Preparazione di un programma utente 6

3 9.1.2 Gestione della Memoria Primaria (Richiami 2) 7 Caricamento dinamico: un modulo non viene caricato finché una delle sue procedure non viene richiamata il caricatore include la funzionalità di rilocazione È fatto (può essere fatto) a cura del programma stesso. Il SO fornisce memoria e librerie per il caricamento nella memoria fisica Gestione della Memoria Primaria (Richiami 3) Linking dinamico: anche il linking è posposto a tempo di esecuzione, non solo il caricamento. il nucleo del programma viene staticamente linkato a uno stub lo stub controlla se il modulo è caricato in memoria e se non lo è... localizza il modulo su MS linka il modulo al nucleo e lo carica in memoria rimpiazza così se stesso nell immagine del programma Gestione della Memoria Primaria (Richiami 3) 9 Permette lo sharing del codice del modulo fra processi diversi shared libraries Richiede aiuto dal SO per lo sharing delle librerie per rendere efficienti gli stub nel loro lavoro per rimpiazzare il codice degli stub

4 9.1.4 Gestione della Memoria Primaria (Richiami 4) Overlay: per evitare che (alla fine) tutto il programma sia in MP, esso è diviso in overlay =:= partidiprogramma che possono occupare (in momenti diversi) gli stessi indirizzi di MP Gli overlay possono avere parti comuni che non vengono caricate e scaricate, e parti diverse che fanno risparmiare occupazione complessiva di memoria. La struttura può essere ripetuta Gestione della Memoria Primaria (Richiami 4) Notare il componente overlay driver Gli overlay sono già linked e pre-caricati in indirizzi assoluti l overlay driver non è un loader rilocante, non alloca memoria all overlay, e quindi è molto efficiente Gli overlay sono tornati di moda con i PC e i loro semplici SO Non hanno bisogno di supporto da parte del SO Gestione della Memoria Primaria (Richiami 4) 12 Ma il programma deve essere strutturato in modo opportuno (da parte dell utente) e supportato da parte della catena di programmazione (compilatore e linker)

5 9.2 Spazio Indirizzi Fisico e Logico 13 Logico: generato dalla CPU; detto anche virtuale Fisico: visto dalla MP Il binding a tempo di esecuzione realizza una distinzione fra spazio logico/virtuale e spazio fisico Tradurre indirizzi virtuali in indirizzi fisici: solo con opportuno dispositivo hardware: MMU o traduttore di indirizzi. Esempio banale: generalizzazione del registro base Spazio Indirizzi Fisico e Logico Notare: I registri del traduttore sono gestiti solo dal SO Il programma vede e usa solo indirizzi virtuali Swapping Salvare in memoria secondaria l immagine di un processo che non esegue (swap out) e ricaricarla (swap in) prima di dargli la CPU

6 9.3 Swapping 16 Es: multiprogrammazione con RR quando il quanto di tempo scade, swap out del processo swap in di quello a cui dare la CPU esecuzione del processo Si può fare swap in in anticipo in modo che i primi processi della RQ siano in MP pronti per eseguire I processi che non sono in RQ è meglio che siano in MS: detto anche roll-in e roll-out quando si usa scheduling a priorità Swapping Dove si fa swap in? nello stesso posto in MP, se il binding è fatto a tempo di compilazione+caricamento anche in un altro posto se il binding è fatto a tempo di esecuzione Richiede memoria di salvataggio (backing store, BS), in genere disco veloce Il tempo di context switch può essere molto alto se il processo è in BS ( niente hard real time!) Swapping Es: Processo di 100K, transfer throughput 1MB/sec transfer time 100msec 200msec di context switch (swap out + swap in) in RR il quanto di tempo dovrebbe essere circa 2sec (10 volte il context switch time) Il tempo di switch dipende molto dal transfer time e quindi si fa swap della sola memoria usata effettivamente dal processo

7 9.3 Swapping 19 Se il processo è in BS non si può fare I/O direttamente sulle sue variabili transitare da buffer di sistema oppure bloccare lo swapping Unix usava una versione di swapping e rilocazione Windows 3.1 tiene in BS i processi "vecchi" e li ricarica solo quando l utente li seleziona (mouse) per farli girare Windows/NT usa il traduttore degli indirizzi dei nuovi processori e fornisce memory management sofisticato Allocazione della Memoria Ma come si alloca la memoria ai processi? 9.4 Allocazione Contigua della Memoria Due partizioni della memoria: una per il SO e una per i programmi utente Spesso il SO sta in memoria dove sta il vettore delle interruzioni, che di solito è in memoria bassa 21 0 Sistema operativo Utente 640K

8 9.4.1 Allocazione a Partizione Singola Con registri di rilocazione e di limite (supporto hardware!) si ottiene: protezione del SO da accessi di utente protezione dei processi l uno verso l altro dimensione dinamica del SO (per codice transiente) e degli utenti Allocazione a Partizioni Multiple La memoria è divisa in partizioni di dimensione fissa (ma non tutte uguali!) Ogni partizione contiene un unico programma, dall inizio alla fine dell esecuzione Il numero delle partizioni è uguale al grado di multiprogrammazione Quando il processo finisce la sua esecuzione, si carica un altro job dalla job queue (e il job entra nel sistema) Allocazione a Partizioni Multiple 24 Usato ad esempio da IBM OS/360 (MFT) Schema dell IBM MVT: la memoria è descritta nelle sue parti occupate da una immagine di processo, oppure libera (buco) All inizio è tutto un grande buco libero Quando arriva un job, si cerca un buco per contenere l immagine del suo processo in memoria: il resto rimane un buco più piccolo.

9 Allocazione a Partizioni Multiple P 4, P 5 rimangono in job queue perché non c è posto per loro in memoria. Quando finisce P 2 si forma un buco per P 4 Bisogna fondere i buchi adiacenti Dove allocare un processo? First Fit Best Fit Worst Fit Worst Fit funziona peggio degli altri; First e Best non sono sempre uno meglio dell altro, ma First Fit costa molto meno di Best Fit Frammentazione Esterna e Interna Esterna: la memoria libera risulta scomposta in molteplici buchi piccoli, non contigui, che non riescono ad ospitare processi grandi Statisticamente, se N blocchi sono allocati, altri 0,5*N blocchi sono inutilizzati a causa della frammentazione esterna 30% della memoria totale è sprecato. Viene detta la regola del 50% Interna: costa troppo descrivere buchi molto piccoli, e quindi si agganciano ad una allocazione precedente. Vi è uno spreco nascosto 27

10 9.4.3 Frammentazione Esterna e Interna 28 Soluzione possibile: compattamento.spostarele immagini dei processi in MP in modo che le immagini siano contigue si forma così un unico buco Il compattamento richiede rilocazione delle immagini, sia del codice che dei dati. Ciò è possibile solo se la rilocazione è realizzata dinamicamente (a run-time) Frammentazione Esterna e Interna 29 Modi di compattare: tutti i processi ad un estremo della memoria (molto costoso) spostare i processi in buchi già esistenti verso gli estremi della memoria (si sposta di meno) parziale: solo per fare entrare un processo particolare combinandolo con lo swapping Frammentazione Esterna e Interna 30

11 Paginazione Allocare in modo non contiguo, usando memoria dove è già disponibile, e dividere la memoria in buchi tutti uguali detti pagine Metodo di Base Memoria Primaria divisa in frame, tutti uguali; memoria logica divisa in pagine tutte uguali, di dimensione uguale a quella dei frame; la BS è divisa in blocchi la cui dimensione è ancora uguale a quella delle pagine Paginazione È necessario un supporto hardware: interposto fra CPU e MP indirizzo = (#pagina, offset di pagina) se i frame cominciano a indirizzi multipli della dimensione del frame, e la dimensione è una potenza di 2, basta rilocare l indirizzo di partenza della pagina Paginazione #pagina è usato come indice in una page table (preparata dal SO) che contiene l indirizzo di base del frame su cui è allocata la pagina Dimensione della pagina (2 m ): da 512 a 8192 byte È una forma di rilocazione dinamica

12 34 Esempio di Paginazione Paginazione C è solo frammentazione interna (per l ultima pagina dello spazio di indirizzi del processo) pagine piccole è meglio! Pagine grandi sono meglio per l I/O la dimensione delle pagine è storicamente cresciuta per il diminuire del costo della memoria Serve una page table per ogni processo protezione fra utenti 9.5 Paginazione 36 Il SO mantiene anche una frame table che descrive lo stato di allocazione della memoria fisica Per fare I/O occorre dare al dispositivo l indirizzo fisico, non quello virtuale (compito del SO) Per cambiare contesto occorre modificare i registri che definiscono la page all hardware che traduce gli indirizzi context switch più lento!

13 Allocazione delle pagine Supporto Hardware 38 Svariati metodi per supportare le page table (PT) in hardware Il più semplice: set di registri dedicati allo scopo e molto veloci: ogni indirizzo generato dalla CPU deve essere tradotto Es. PDP-11: 8 registri, pagine di 8KB. Spazio virtuale di 64KB Ragionevole fino a PT di 256 elementi: oggi si hanno PT di milioni di elementi tutta la PT in hardware non è possibile PT in MP + PageTableBaseRegister (PTBR) che punta all inizio della PT in MP Supporto Hardware PT in MP è molto lenta: raddoppia gli accessi in memoria (che già è lenta!) usare una cache (come al solito!) chiamata: registri associativi, oppure MMU, oppure translation look-aside buffer (TLB)

14 Funzionamento del TLB Si interroga con page number e restituiscono frame number o trap Se ha successo (hit) penalizzazione circa del ~10% del tempo di accesso alla memoria Se ha insuccesso (miss) allora si usa la PT in memoria certi hardware vanno da se in memoria si inserisce il nuovo elemento della PT in TLB se il TLB è pieno si sostituisce un vecchio elemento Funzionamento del TLB Funzionamento del TLB Quando si cambia contesto bisogna svuotare (flush) o invalidare il TLB altrimenti la traduzione sarebbe errata! grande costo del cambio di contesto inoltre molte trap perché il TLB è vuoto, oppure salvataggio e ripristino del contenuto del TLB, ma allora la commutazione di contesto è ancora più lunga grande è quindi il vantaggio nel commutare i contesto fra thread dello stesso task

15 Importanza dell Hit Ratio 43 Hit Ratio =:= tasso di successo nel TLB Hp: 20 nsec accesso al TLB, 100nsec accesso a MP; allora con hit ratio dell 80% si ha effective memory access time = 0.80* *220=140nsec Con hit ratio del 98% effective memory access time = 0.98* *220=122nsec Motorola ha un TLB di 22 elementi, Intel ha 32 registri. Sostengono di avere un hit ratio da 80 a 98% Protezione Bit in PT possono definire la pagina come read-only, read/write, execute, invalid trap per uso invalido, perché la CPU dichiara l uso che vuole fare dell indirizzo Protezione Le pagine invalide sono quelle non usate dal processo (dimensione minore dello spazio max possibile) Le PT sono molto più piccole del max page table length register(s) (PTLR(s)) offerti da alcuni hardware

16 9.5.3 Paginazione Multilivello 46 Address Space di 2 32 (ora anche 2 64 ); pagine di 4KB(2 12 ) dimensione PT 2 32 / 2 12 = 2 20 = 1 milione di elementi; 4B per entry 4MB per la PT, per ogni processo: un pò troppo! Non si può allocare in modo contiguo I processi non la usano tutta È comodo che sia "sparsa", composta da molte zone usate, separate da buchi non usati (libertà nell uso dello spazio virtuale) Usare uno schema a due livelli Paginazione Multilivello Paginazione Multilivello 48 Page Table esterna e interna. VAX ha una page table esterna di soli 4 elementi SPARC ha 3 livelli; MC livelli Ancora serve caching! Con hit ratio di 98% si ha effective memory address time = 0.98* *520=128 nsec

17 9.5.4 Page Table Invertita (IPT) 49 Le PT è comoda per il SO ma occupa un sacco di memoria Una IPT descrive invece solo l occupazione dei frame di memoria fisica grande a seconda della memoria fisica Un elemento di IPT è così fatto, ad es. IBM RT: <process-id, page-number> e gli indirizzi sono una tripla <process-id, page-number, offset> Page Table Invertita (IPT) Page Table Invertita (IPT) 51 Le PT sono ancora necessarie per le pagine che sono su BS. Possono a loro volta essere tenute in MS Hash Table per facilitare la ricerca nella IPT che è tenuta per indirizzi fisici e viene scandita per indirizzi virtuali L accesso hash aumenta gli accessi in memoria: si usano registri di cache

18 Pagine Condivise La paginazione rende "facile" la condivisione di codice (non automodificantesi, o rientrante), anche a livello di librerie Le IPT non si prestano allo sharing perché obbligano le pagine condivise a stare nello stesso indirizzo virtuale e a usare un jollyprocess-id nella IPT ( si generano PT sparse!) 53 Esempio di condivisione di pagine 9.6 Segmentazione 54 La paginazione separa la visione della memoria dell utente da quella fisica. MA come è più naturale per l utente? Lineare oppure una collezione di segmenti di dimensione diversa, senza ordinamento fra loro?

19 Segmentazione Metodobase indirizzo = <#segmento, offset> L utente (compilatore, linker) libero di usare i segmenti per riflettere la struttura del programma variabili locali codice di una funzione o procedura variabili locali statiche di funzione o procedura stack di esecuzione ciascun array su un suo segmento Supporto Hardware Segment Table (ST): ogni elemento contiene base (fisica) e limite del segmento Notarelasomma veraepropria! 57 Esempio di Segmentazione

20 Supporto Hardware ST può stare in registri di macchina (ma allora deve essere piccola!) ST in MP e Segment Table Base Register (STBR) che la punta + Segment Table Length Register (STLR) perché la lunghezza della ST può variare molto Cache usata per non raddoppiare il tempo di accesso Protezione e Sharing Protezione associata ai segmenti Sharing associato ai segmenti Richiedono ambedue al SO meno lavoro della paginazione Frammentazione Lo scheduler di lungo termine (job scheduler) deve trovare posto ai segmenti (come per la paginazione) ma i segmenti sono di dimensione diversa gestione dinamica della memoria best-fit o first-fit frammentazione esterna si può compattare quando si vuole La grandezza media dei segmenti è abbastanza piccola meglio dello schema a partizioni variabili

21 Segmentazione con Paginazione Ogni schema ha i suoi vantaggi. Infatti MC680xx ha paginazione (modificata), Intel 80x86 segmentazione (modificata) vanno a fondere i due approcci Chi ha insegnato a tutti è stato il MULTICS 18 bit di segment number, 16 bit di offset Ogni segmento (64KB) è paginato a 1KB Traduzione degli indirizzi in MULTICS Traduzione degli indirizzi in MULTICS Anche la ST è troppo grande, per cui viene paginata anch essa, componendo il segment number Vi sono 16 registri associativi che contengono una chiave di =24 bit e come valore il numero di frame 63

22 9.7.2 OS/2 a 32 bit 64 Intel 386 e 486 usano segmentazione + paginazione. OS/2 usa solo in parte il 386 Ci sono 16K segmenti ognuno fino a 4GB, dimensione di pagina 4KB Ogni processo ha due partizioni: 1.Una privata, fino a 8K segmenti: descritta in una Local Descriptor Table (LDT) 2.Una condivisa fra tutti i processi, fino a 8K segmenti: descritta in una Global Descriptor Table (GDT) OS/2 a 32 bit Ogni elemento di LDT e di GDT è di 8 byte: indirizzo di base, lunghezza, protezioni,... Indirizzo logico =:= <selettore, offset>, dove selettore = <s, g, p> di ampiezza: con s=#segmento; g=ldt/gdt; p=protezioni; offset è di 32 bit Come è fatta la CPU? OS/2 a 32 bit La CPU ha: 6 segment registers (che contengono il selector) per indirizzare 6 segmenti contemporaneamente 6 registri di microprogramma che contengono i descrittori dei 6 segment register (presi dalla relativa Local/Global Descriptor Table) Un indirizzo è sempre relativo ad un segment register

23 OS/2 a 32 bit Offset + base del segmento generano un indirizzo (virtuale) a 32bit lineare (la somma è su 32bit), ma prima è controllato il limite del segmento e poi viene mappato scomponendolo così: page-number page-offset p1 p2 d bit Paginazione a due livelli OS/2 a 32 bit p1 è chiamato directory pointer e p2 page table pointer La Directory Table deve stare in memoria, ma le Page Table possono essere swappedout (invalid bit nell elemento di directory) Le Page Table sono nella zona bassa della MP (il primo bit nell elemento di directory è l invalid bit) OS/2 a 32 bit 69

24 70 Conclusioni Algoritmi di gestione della memoria molto diversi, da quelli semplici per sistema single user alla segmentazione paginata È il supporto hardware che determina la classe di algoritmi usabili il supporto hardware è progettato pensando alla classe di algoritmi che si vuole supportare Conclusioni 71 Quali considerazione fare nel valutare un metodo di gestione della memoria? supporto hardware disponibile velocità (più è complesso, più è lento) frammentazione (limita il livello di multiprogrammazione) rilocazione: supportata/non supportata swapping: se possibile aumenta il livello di multiprogrammazione condivisione testo e dati fra utenti (ancora per aumentare il livello di multiprogrammazione) protezione 72 Esercizio 9.5 P1 (212K), P2(417K), P3 (112K), P4 (426K) First-Fit: P1(2),P2(5),P3(3) Best-Fit: P1(4),P2(2),P3(3),P4(5) Worst-Fit: P1(5),P2(2),P3(4) 100k 500k 200k 300k 600k P2 P3 P1

25 73 Esercizio Allocazione Contigua Memoria a partizioni variabili Buchi liberi in ordine crescente di indirizzo: 8k, 4k, 20k, 18k, 7k, 10k, 12k, 15k Quale buco viene scelto per le richieste A) 11k 8k, 4k, 18k, First Fit: 7k, 10k, 12k, 15k B) 20k A -> 20K C) 9k B -> non allocabile C -> 9K 74 Esercizio Allocazione Contigua 8k, 4k, 18k, 7k, 1k, 1k, 15k Best Fit: A-> 12K B -> 20K C -> 10K 75 8k, 4k, 9k, 9k, 7k, 10k, 12k, 15k Worst Fit: A -> 20K B -> non allocabile C -> 18K

26 76 Esercizio: Paginazione Spazio Indirizzi virtuali (logici) di 64K : 16 bit Memoria fisica di 32K Pagine di 4K : 12 bit offset (16 pagine) # pagina # frame Valido/invalido X X 3 1 X x V V I I V V I I 77 # pagina # frame Valido/invalido : x I #pag: 0, offset 24 #frame: 2 offset (0 * 4096)+24 (2 * 4096)+24 = : (2 * 4096) + 3 page fault 16385: (4 * 4096) + 1 (3 * 4096) +1 = X X 3 1 X V V I I V V I 78 Esercizio: Paginazione Dimensione Pagine di FFF byte Memoria fisica e` composta da 7F frame # pagine massimo e` FF Qual e` la lunghezza di un indirizzo logico? Offset: 12 bit, #pag: 8 bit 20 bit Qual e` la lunghezza di un indirizzo fisico? Offset: 12 bit, #frame: 7 bit 19 bit

27 C: #pag: 03 offset: 45C 7E 45C (126*4096)+1116 = # pagina 3 # frame 126 (7E) Valido/invalido V

GESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL

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

Dettagli

Gestione Memoria. Gestione della memoria

Gestione Memoria. Gestione della memoria Gestione Memoria Gestione della memoria Il sistema operativo ha il compito di: Assegnare ad ogni processo la memoria di cui ha bisogno per la sua esecuzione Isolare i processi facendo in modo che i processi

Dettagli

Gestione della memoria

Gestione 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

Dettagli

Gestione della memoria

Gestione della memoria Gestione della memoria Gestione della memoria In un sistema multiprogrammato il numero di processi è > del numero di processori, ciò implica: unità di elaborazione virtuale memoria virtuale Un gestore

Dettagli

Sistemi operativi e distribuiti

Sistemi operativi e distribuiti Sistemi operativi e distribuiti La memoria Indirizzi fisici e indirizzi logici Importante separazione di concetti Ci permette di separare la parte software da la parte hardware Indirizzo logico (o virtuale):

Dettagli

Memory management. Le attività di memory management del SO per la condivisione da parte di più processi

Memory 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

Dettagli

Gestione della memoria. Introduzione Swapping Allocazione contigua Paginazione

Gestione della memoria. Introduzione Swapping Allocazione contigua Paginazione Gestione della memoria Introduzione Swapping Allocazione contigua Paginazione Introduzione In un sistema monoprogrammato la memoria centrale è divisa in due parti: una per il sistema operativo, l altra

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

Gestione della memoria

Gestione 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

Dettagli

La gestione della memoria. Lezione 16 Sistemi Operativi

La 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

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 12 Martedì 22-11-2016 Partizioni variabili Un miglioramento dell uso

Dettagli

La gerarchia delle memorie

La 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

Dettagli

SISTEMI OPERATIVI. Gestione della memoria. Gestione della memoria. Partizionamento Paginazione Segmentazione Memoria virtuale. 08.

SISTEMI 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

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 (modulo di Informatica II)

Sistemi Operativi (modulo di Informatica II) Sistemi Operativi (modulo di Informatica II) Gestione della memoria centrale Patrizia Scandurra Università degli Studi di Bergamo a.a. 2011-12 Sommario Sistemi multiprogrammati e il gestore della memoria

Dettagli

Gestione della memoria

Gestione della memoria Università di Udine Facoltà di Scienze MM.FF.NN. Laurea in TWM A.A. 2015-2016 Copyright c 2000 04 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella

Dettagli

Il supporto al sistema operativo

Il supporto al sistema operativo Politecnico di Milano Il supporto al sistema operativo Prof. Mariagiovanna Sami sami@elet.polimi.it 2007- Obiettivi e Funzioni Perché introdurre il sistema operativo? Convenienza Rende più facile usare

Dettagli

Gestione della memoria principale

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

Dettagli

Gestione della memoria

Gestione della memoria Corso di laurea in Ingegneria dell Informazione Indirizzo Informatica Reti e sistemi operativi Gestione della memoria Memoria principale (1/2) Generalmente, i linguaggi assembly permettono di accedere

Dettagli

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

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16 Pietro Frasca Lezione 11 Martedì 10-11-2015 1 Memoria partizionata Le tecniche di memoria partizionata

Dettagli

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

Dettagli

Gestione della Memoria Principale

Gestione 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

Dettagli

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

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

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T4 3-Gestione della memoria 1 Prerequisiti Rilocazione dinamica Spazio degli indirizzi Descrittore di processo Descrittore della memoria 2 1 Introduzione Una volta conosciute

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

Gestione della Memoria Principale

Gestione 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

Dettagli

Registri della CPU. Memoria Centrale. Memoria di Massa. Memorie di altri sistemi in rete

Registri 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

Dettagli

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

Dettagli

Gestione della Memoria

Gestione della Memoria Gestione della Memoria Multiprogrammazione e gestione della memoria L obiettivo primario della multiprogrammazione e` l uso efficiente delle risorse computazionali: Efficienza nell uso della CPU Velocita`

Dettagli

Trasparenze del Corso di Sistemi Operativi

Trasparenze del Corso di Sistemi Operativi Università di Udine Facoltà di Scienze MMFFNN Gestione della Memoria Laurea in Informatica AA 5/6 Fondamenti Associazione degli indirizzi alla memoria fisica Trasparenze del Corso di Sistemi Operativi

Dettagli

Sistema Operativo - Gestione della Memoria lista argomenti di studio

Sistema Operativo - Gestione della Memoria lista argomenti di studio Sistema Operativo - Gestione della Memoria lista argomenti di studio Istruzioni assembly salti assoluti salti relativi Linking Rilocazione Statica Istruzioni rilocabili (salti relativi) Istruzioni Non

Dettagli

SISTEMI OPERATIVI. Gestione della memoria centrale. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)

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

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

Nei sistemi moderni si usano sistemi di avvicendamento sofisticati al fine di garantire ad ogni processo quanti di esecuzione considerevoli.

Nei sistemi moderni si usano sistemi di avvicendamento sofisticati al fine di garantire ad ogni processo quanti di esecuzione considerevoli. C1. MEMORIA CENTRALE Al fine di migliorare lo scheduling della CPU è necessario tenere in memoria parecchi processi, rendendo condivisa la memoria. Vi sono diversi metodi per gestire la memoria, tra cui

Dettagli

Sistemi Operativi (modulo di Informatica II)

Sistemi Operativi (modulo di Informatica II) Sistemi Operativi (modulo di Informatica II) Gestione della memoria centrale Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Sistemi multiprogrammati e il gestore della memoria

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

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

Gestione della Memoria. Sistemi Operativi T AA

Gestione della Memoria. Sistemi Operativi T AA Gestione della Memoria Sistemi Operativi T AA 2009-2010 1 Multiprogrammazione e gestione memoria Obiettivo primario della multiprogrammazione è l uso efficiente delle risorse computazionali: Efficienza

Dettagli

Sistemi Operativi Gestione della Memoria (parte 3)

Sistemi 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

Dettagli

Sistemi Operativi Gestione della Memoria (parte 1)

Sistemi Operativi Gestione della Memoria (parte 1) Sistemi Operativi Gestione della Memoria Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Considerazioni preliminari 1 Nell ottica degli utenti applicativi

Dettagli

La gestione della memoria. Lezione 30 Sistemi Operativi

La 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

Dettagli

Simuliamo ora il funzionamento di LRU sulla reference string data:

Simuliamo 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

Dettagli

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

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

Dettagli

SOLUZIONI: Memoria virtuale

SOLUZIONI: Memoria virtuale 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

Dettagli

Gestione della memoria principale

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

Dettagli

Gestione della Memoria

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

Dettagli

Calcolo prestazioni cache (1)

Calcolo 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

Dettagli

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

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

Dettagli

Gestione della memoria per sistemi multiprogrammati. Obiettivi. Partizioni fisse. Partizioni fisse. Fondamenti di Informatica

Gestione 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

Dettagli

Sistemi Operativi: Concetti Introduttivi

Sistemi Operativi: Concetti Introduttivi Sistemi Operativi: Concetti Introduttivi 1.1 Principali funzioni di un Sistema Operativo 1.2 Cenni Storici 1.3 Classificazione dei Sistemi Operativi 1.4 Struttura dei Sistemi Operativi 1.5 Processi e gestione

Dettagli

Il Gestore della Memoria. Tecnica a Partizioni Fisse e a Partizioni Variabili

Il Gestore della Memoria. Tecnica a Partizioni Fisse e a Partizioni Variabili Il Gestore della Memoria Tecnica a Partizioni Fisse e a Partizioni Variabili Compiti del gestore della Memoria Mantenere traccia dello stato, libera o occupata, di ciascuna zona della memoria. Assegnare

Dettagli

Sistemi Operativi Il Sistema Operativo Windows (parte 2)

Sistemi 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

Dettagli

Parte III: Gestione della Memoria. 8 Memoria Centrale ( gestione della ) 8.1. Introduzione. Memoria Centrale (cap. 8) Memoria Virtuale (cap.

Parte III: Gestione della Memoria. 8 Memoria Centrale ( gestione della ) 8.1. Introduzione. Memoria Centrale (cap. 8) Memoria Virtuale (cap. Parte III: Gestione della Memoria 1 Memoria Centrale (cap. 8) Memoria Virtuale (cap. 9) 8 Memoria Centrale ( gestione della ) 2 Introduzione Binding degli indirizzi Spazio degli indirizzi logici e fisici

Dettagli

USO DELLA GERARCHIA. FONDAMENTI DI INFORMATICA Lezione n. 14 POLITICHE DI SOSTITUZIONE DIMENSIONE DEL BLOCCO THRASHING POLITICA DI ALLOCAZIONE

USO DELLA GERARCHIA. FONDAMENTI DI INFORMATICA Lezione n. 14 POLITICHE DI SOSTITUZIONE DIMENSIONE DEL BLOCCO THRASHING POLITICA DI ALLOCAZIONE FONDAMENTI DI INFORMATICA Lezione n. 14 GESTIONE DELLA GERARCHIA CONCETTO DI MEMORIA VIRTUALE RAGIONI PER L'USO DELLA MEMORIA VIRTUALE MECCANISMO DI GENERAZIONE DEGLI INDIRIZZI FISICI SEGMENTI, PAGINE

Dettagli

Sistemi Operativi. C.d.L. in Informatica (laurea triennale) Anno Accademico Dipartimento di Matematica e Informatica Catania

Sistemi Operativi. C.d.L. in Informatica (laurea triennale) Anno Accademico Dipartimento di Matematica e Informatica Catania Sistemi Operativi C.d.L. in Informatica (laurea triennale) Anno Accademico 2012-2013 Dipartimento di Matematica e Informatica Catania Gestione della Memoria Prof. Mario Di Raimondo Memoria centrale e processi

Dettagli

I Sistemi Operativi. Prof.ssa Antonella Serra

I Sistemi Operativi. Prof.ssa Antonella Serra I Sistemi Operativi Prof.ssa Antonella Serra Il Software di Base Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. Il sistema operativo è

Dettagli

Veloce e cara. Lenta e economica. I livelli di memoria. E il supporto del calcolatore per conservare dati e istruzioni (programmi) La memoria centrale

Veloce e cara. Lenta e economica. I livelli di memoria. E il supporto del calcolatore per conservare dati e istruzioni (programmi) La memoria centrale I livelli di memoria LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica Veloce e cara E il supporto del calcolatore per conservare dati e istruzioni (programmi) Sistemi Operativi : La gestione

Dettagli

Docente Prò Giuseppe - Corso PENTEST MIND PROJECT A cura di Prò Giuseppe

Docente Prò Giuseppe - Corso PENTEST MIND PROJECT A cura di Prò Giuseppe A cura di Prò Giuseppe GESTORE DELLA MEMORIA Simula l esistenza di una pluralità di memoria centrale ciascuna associata ad uno dei processi virtuali generati dal nucleo, mascherando ai livelli successivi

Dettagli

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

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

Dettagli

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

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

Dettagli

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

Gestione della memoria centrale. Marco Cesati. Schema della lezione. Memoria centrale. Linux su Intel IA-32 SO Gestione della memoria centrale

Gestione della memoria centrale. Marco Cesati. Schema della lezione. Memoria centrale. Linux su Intel IA-32 SO Gestione della memoria centrale Di cosa parliamo in questa lezione? Lezione 7 La gestione della Sistemi operativi 1 Schemi di indirizzamento della 2 La segmentazione 3 La paginazione 9 maggio 2017 4 System Programming Research Group

Dettagli

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

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

Dettagli

La gestione della memoria

La gestione della memoria La gestione della memoria Nella gestione della memoria il sistema operativo deve perseguire l'obiettivo di allocare il maggior numero di processi in memoria centrale per aumentare la probabilità che ci

Dettagli

Sistemi Operativi. 5 Gestione della memoria

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

Dettagli

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

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

La memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni

La memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso, misurata in base al tempo impiegato dal processore per accedere ad uno specificato indirizzo

Dettagli

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi

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

Dettagli

Gerarchie di memoria Memorie a componenti dinamici 1

Gerarchie 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

Dettagli

ARCHITETTURA DEI CALCOLATORI

ARCHITETTURA DEI CALCOLATORI A09 139/3 Graziano Frosini Giuseppe Lettieri ARCHITETTURA DEI CALCOLATORI VOLUME III ASPETTI ARCHITETTURALI AVANZATI E NUCLEO DI SISTEMA OPERATIVO Con riferimento al Personal Computer all ambiente di

Dettagli

14 Struttura della memoria secondaria Struttura del disco Struttura del disco

14 Struttura della memoria secondaria Struttura del disco Struttura del disco 14 Struttura della memoria secondaria 1 Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Affidabilità 2 14.1 Struttura del disco 3 14.1 Struttura del disco I dischi

Dettagli

Bootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:

Bootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO: Bootstrap Bootstrap All accensione di un calcolatore vengono attivati programmi di diagnostica scritti nella ROM (Read Only Memory) che verificano l assenza di guasti Poi viene attivato il programma di

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

Sistemi Operativi. La gestione delle risorse

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

Dettagli

Sistemi Operativi. Modulo 7: Gestione della memoria

Sistemi Operativi. Modulo 7: Gestione della memoria Sistemi Operativi Modulo 7: Gestione della memoria Renzo Davoli Alberto Montresor Copyright Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation

Dettagli

La Gestione della Memoria

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

Dettagli

Obiettivi! Memoria Virtuale! Memoria Virtuale > Memoria Fisica!

Obiettivi! Memoria Virtuale! Memoria Virtuale > Memoria Fisica! Obiettivi Memoria Virtuale Descrivere i vantaggi di un sistema a memoria virtuale Concetti fondamentali Paginazione su richiesta (Demand paging) Algoritmi di sostituzione delle pagine Algoritmi di allocazione

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

Gerarchia fisica di memoria 1. Gerarchia fisica di memoria 2. Gerarchia fisica di memoria 3. Ricapitolazione di concetti base

Gerarchia fisica di memoria 1. Gerarchia fisica di memoria 2. Gerarchia fisica di memoria 3. Ricapitolazione di concetti base Gerarchia fisica di memoria 1 Tempo di accesso Capacità tipica Ricapitolazione di concetti base Sistemi Operativi - T. Vardanega Pagina 92/113 Gerarchia fisica di memoria 2 La cache è suddivisa in blocchi

Dettagli

File: definizione. Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da:

File: definizione. Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da: File System File: definizione Il file è la più piccola unità logica manipolabie Un file è caratterizzato principalmente da: Dimensione Posizione Accessibilità (solo lettura, lettura e scrittura) Tipo (estensione)

Dettagli

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1 SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Sistemi Operativi 2003/2004 WINDOWS 2000

Sistemi Operativi 2003/2004 WINDOWS 2000 Sistemi Operativi 2003/2004 WINDOWS 2000 Windows NT Diversità tra Windows 98 e Windows NT Windows 2000 (1) Versioni diverse di Windows 2000 Windows 2000 (2) The Win32 Application Programming Interface

Dettagli

Il Sistema Operativo

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

Dettagli

Componenti di un sistema operativo

Componenti di un sistema operativo Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria

Dettagli

Gestione della Memoria Principale

Gestione della Memoria Principale Fondamenti Gestione della Memoria Principale La memoria di un elaboratore e organizzata nella seguente gerarchia Typical access time Typical capacity Fondamenti Binding, Loading, Linking Spazio indirizzi

Dettagli

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011 Sistemi Operativi Introduzione all architettura IA-32 Lez. 16 1 Microprocessori Intel Nel 1979 Intel introduce la famiglia dei microprocessore 8086 8086, 8087, 8088, e 80186 Processori a 16-bit con registri

Dettagli

Gestione della memoria

Gestione della memoria Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2007-2008 Copyright c 2000 04 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella sua integrità

Dettagli

Gestione della Memoria

Gestione della Memoria Gestione della Memoria Multiprogrammazione e gestione memoria Obiettivo primario della multiprogrammazione è l uso efficiente delle risorse computazionali: Efficienza nell uso della CPU Velocità di risposta

Dettagli

Architettura hardware

Architettura 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

Dettagli

Esercitazione su Gerarchie di Memoria

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,

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

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

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

Dettagli

Sistemi Operativi Esercizi Gestione Memoria

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

Dettagli

Processi e memoria. Ges&one della memoria. Rilocazione. Indirizzi. Rilocazione e protezione. Memory Management Unit (MMU)

Processi e memoria. Ges&one della memoria. Rilocazione. Indirizzi. Rilocazione e protezione. Memory Management Unit (MMU) Processi e memoria Ges&one della memoria Tu6 i processi in esecuzione necessitano della memoria centrale per memorizzare: le istruzioni che fanno parte del codice i da& su cui operano A. Ferrari Indirizzi

Dettagli

Scheduling della CPU

Scheduling della CPU Scheduling della CPU 1 Scheduling della CPU Obiettivo della multiprogrammazione: massimizzazione dell utilizzo della CPU. Scheduling della CPU: commuta l uso della CPU tra i vari processi. Scheduler della

Dettagli

Macchina di Riferimento: argomenti

Macchina di Riferimento: argomenti Macchina di Riferimento: argomenti L'architettura di una macchina MIPS Organizzazione della memoria I registri della CPU L'esecuzione dei programmi Il ciclo fetch-execute Il simulatore SPIM 1 Architettura

Dettagli

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

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

Dettagli

Il file È un insieme di informazioni: programmi. Il File System. Il file system

Il file È un insieme di informazioni: programmi. Il File System. Il file system Il File System Il file È un insieme di informazioni: programmi d a t i testi rappresentati come insieme di record logici (bit, byte, linee, record, etc.) Ogni file è individuato da (almeno) un nome simbolico

Dettagli

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

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

Dettagli