Università di Trieste Calcolatori Elettronici a.a. 2001-2002Omero TuzziL01, Basi 1 Sommario: 1. Concetto di bit. 2. Indirizzi di memoria. 3. Ordinamento.

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Rappresentazioni numeriche
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
Meccanismi di IPC Problemi classici di IPC
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
1 Introduzione ai calcolatori Parte II Software di base.
Gestione della memoria centrale
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
Gestione della memoria
File System Cos’è un File System File e Directory
Gestione della Memoria
Gestione della Memoria
Frontespizio Economia Monetaria Anno Accademico
Training On Line – CONA. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Annuali > Nuova Richiesta Si accede alla pagina di Richiesta.
Numerazione in base tre Prof. Lariccia Giovanni Gruppo: Roberta Spicciariello, Roberta Accaria e Maria Elisa Graziano.
Realizzazione del file system
Gestione della memoria
Realizzazione del file system
File.
Algoritmo di Ford-Fulkerson
Larchitettura di Von Neumann CPU RAM Mem second I/O bus.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo.
eliana minicozzi linguaggi1a.a lezione2
Corso di Informatica per Giurisprudenza
Il Linguaggio Macchina
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Scritte scritte scritte scritte scritte scritte scritte Scritte scritte Titolo.
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
Cos’è un problema?.
Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE.
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
Num / 36 Lezione 9 Numerosità del campione.
Lezione 4 Probabilità.
Lezione 6 Encoder ottici
Labortaorio informatica 2003 Prof. Giovanni Raho 1 INFORMATICA Termini e concetti principali.
Introduzione alle basi di dati
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Portale Capacità STOGIT
2 3 4 RISERVATEZZA INTEGRITA DISPONIBILITA 5 6.
Melfi, 1 aprile 2011 – MediaShow 1 Social Network: possibilità di uso consapevole nella didattica Uso, consapevolezza, opportunità, proposte Caterina Policaro.
Educare al multimediale 1 – Verso il digitale 2 Presentazione a cura di Gino Roncaglia Prima parte: Informazione in formato digitale.
Esercitazione 1: Rispetto al test di ansia (Media=25; σ=5), calcolare:
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
1 Guida per linsegnamento nei corsi per il conseguimento del CERTIFICATO DI IDONEITÀ ALLA GUIDA DEL CICLOMOTORE.
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
Architettura del calcolatore
LE SAI LE TABELLINE? Mettiti alla prova!.
QUIZ – PATENTE EUROPEA – ESAME WORD
La gerarchia di memoria Ing. Rosa Senatore Università degli Studi di Salerno Corso di Calcolatori Elettronici Anno 2013/14.
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
1 Ly-LAB Sistema di gestione dei dati analitici di laboratorio.
1Piero Scotto - C14. Finalità del corso Programma Materiale Requisiti Spendibilità 2Piero Scotto - C14.
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
Gestione della Memoria
Numeri Interi senza segno
A.P. cat. B - 1 Per chi vuole: Libro di testo D.P. Curtis, K. Foley, K. Sen, C. Morin Informatica di base 2° edizione Mc Graw-Hill Companies.
Architettura del calcolatore
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
Gestione della Memoria
L’esecuzione dei programmi
1 1. Introduzione alla gestione della memoria 2. Swapping 3. Memoria virtuale 4. Implementazione 5. Algoritmi di sostituzione Gestione della Memoria.
La gerarchia di memorie
 Ogni processo che deve essere eseguito da un sistema di elaborazione, deve essere caricato e risiedere almeno parzialmente nella memoria centrale 
Transcript della presentazione:

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 1 Sommario: 1. Concetto di bit. 2. Indirizzi di memoria. 3. Ordinamento dei byte (little endian vs. big endian). 4. Codici di correzione degli errori. 5. Memoria cache. 6. Packaging e tipi di memoria.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 2 Il concetto di bit Un bit può contenere uno 0 o un 1 e rappresenta lunità di base della memoria. Per memorizzare informazione bisogna avere un dispositivo che possa assumere almeno due stati distinti; i dispositivi che hanno solo due stati sono più affidabili e veloci di quelli con tre o più stati; A volte si parla di dispositivi che usano laritmetica decimale intendendo con ciò la codifica binaria delle cifre decimali (BCD - Binary Coded Decimal) con quattro bit (16 combinazioni) si codificano le cifre da 0 a 9, che poi vengono utilizzate per comporre un numero; 1944dieci = BCD = due; 16 bit in formato BCD codificano numeri ( ); 16 bit in formato binario codificano numeri (216).

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 3 Indirizzi di memoria I bit nelle memorie sono raggruppati in celle : tutte le celle sono formate dallo stesso numero di bit ; una cella composta da k bit, è in grado di contenere una qualunque tra 2k combinazioni diverse di bit. Ogni cella ha un indirizzo : serve come accesso allinformazione; in una memoria con N celle gli indirizzi vanno da 0 a N–1. La cella è lunità indirizzabile più piccola. In quasi tutti i calcolatori è di 8 bit (un byte ). I byte vengono raggruppati in parole (che oggi sono di 32/64 bit ), su cui la CPU esegue le operazioni.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 4 Organizzazione della memoria Anche gli indirizzi della memoria sono rappresentati come numeri binari: un indirizzo di M bit consente di indirizzare 2M celle; per 6 o 8 celle bastano 3 bit, per 12 celle ne servono 4; il numero di bit nellindirizzo determina il numero massimo di celle indirizzabili nella memoria ed è indipendente dal numero di bit per cella (una memoria con 212 celle richiede sempre 12 bit di indirizzo, quale che sia la dimensione di una cella). Una memoria può essere organizzata in diversi modi: con 96 bit possiamo avere 6 celle di 16 bit (6*16=96), o 8 celle di 12 bit (8*12=96) o 12 celle di 8 bit (12*8=96).

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 5 Il concetto di memoria virtuale Separare il concetto di spazio di indirizzamento e locazioni di memoria Spazio di indirizzamento = numero di parole indirizzabili Dipende esclusivamente dal numero di bit dellindirizzo e non dal numero di parole di memoria effettivamente disponibile Se la dimensione della memoria principale è minore dello spazio indirizzabile, prima dellesistenza della memoria virtuale una parte degli indirizzi non sarebbe ststa utilizzabile a causa della corrispondenza uno a uno tra indirizzi e locazioni di memoria.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 6 Spazio di indirizzamento Separazione tra spazio di indirizzamento e locazioni di memoria Esempio: 16 bit di indirizzo, memoria principale di 4K parole In ogni istante di tempo è possibile accedere a sole 4096 parole di memoria, ma non necessariamente corrispondenti agli indirizzi

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 7 Traduzione degli indirizzi Quando si accede allindirizzo 4096, questo viene automaticamente tradotto nellindirizzo 0 della memoria principale, 4097 nellindirizzo in 4095.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 8 Memoria virtuale Cosa succede se un programma chiede di saltare dallindirizzo 2500 allindirizzo 8190? Con il meccanismo di memoria virtuale: I contenuti della memoria principale vengono salvati su disco Le parole agli indirizzi da 4096 a 8191 vengono copiate in memoria principale tra gli indirizzi 0 e 4095 Lesecuzione del programma prosegue come se non fosse successo nulla Meccanismo di overlay automatico: paginazione

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 9 Paginazione Blocchi di dimensione fissa (es. 4K) trasferiti tra memoria principale e memoria secondaria: pagine Oggi: metodo più sofisticato per la traduzione dello spazio di indirizzamento sugli indirizzi di memoria reali

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 10 Memoria virtuale Indirizzi a cui fa riferimento il programma in esecuzione: indirizzi virtuali Indirizzi di memoria centrale: indirizzi fisici Meccanismo di traduzione automatico degli indirizzi virtuali in indirizzi fisici Con la memoria virtuale, la CPU produce un indirizzo virtuale, che viene tradotto da una combinazione di elementi hardware e software in un indirizzo fisico, che può essere utilizzato per accedere alla memoria principale: traduzione dellindirizzo( memory mapping)

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 11 Obiettivi della memoria virtuale consentire una condivisione efficiente della memoria da parte di più programmi rimuovere il carico di lavoro del programmatore provocato dalla limitata quantità di memoria disponibile La paginazione è trasparente al programmatore Il programmatore può scrivere i propri programmi pensando di avere a disposizione lintero spazio di indirizzamento virtuale indipendentemente dalle dimensioni effettive della memoria centrale

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 12 Rilocazione Meccanismo per la fase di caricamento di un programma prima dellesecuzione: gli indirizzi virtuali utilizzati dal programma vengono tradotti in indirizzi fisici diversi prima che possano essere utilizzati per accedere alla memoria. Questa traduzione consente il caricamento del programma in una qualsiasi locazione della memoria fisica.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 13 Rilocazione Tutti i meccanismi di gestione della memoria virtuale rilocano il programma come un insieme di blocchi di dimensione fissa (pagine), eliminando così la necessità di individuare un blocco di memoria contigua sufficientemente ampio da potervi caricare il programma; Il sistema operativo ha solo bisogno di trovare un numero sufficiente di pagine disponibili nella memoria fisica.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 14 Implementazione della paginazione Lo spazio di indirizzamento virtuale è suddiviso in un numero intero di pagine di dimensione fissa Dimensioni di pagina tipici: da 512 byte a 64 Kbyte Dimensione della pagina: sempre una potenza di 2.

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 15 Implementazione della paginazione Lo spazio di indirizzamento fisico (ossia della memoria centrale) viene suddiviso in un numero intero di pagine di uguale dimensione di quelle utilizzate per lo spazio di indirizzamento virtuale. Ogni pagina della memoria può quindi contenere esattamente una pagina dello spazio di indirizzamento virtuale. Pagina della memoria: page frame

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 16

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 17 Esempio Spazio di indirizzamento virtuale: indirizzi da 32 bit 232 indirizzi diversi Dimensione di pagina: 4K parole 212 indirizzi Numero di pagine dello spazio di indirizzamento virtuale = 232 / 212 = 220 pagine Spazio di indirizzamento fisico: 4M parole 222 indirizzi Numero di pagine dello spazio di indirizzamento fisico = 222 / 212 = 210 pagine

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 18 Traduzione dellindirizzo virtuale in indirizzo fisico

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 19 Memory Management Unit La traduzione del numero di pagina virtuale nel corrispondente numero di pagina fisica avviene mediante un dispositivo, la Memory Management Unit (MMU) Può essere posizionata nel chip della CPU, o in un chip separato

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 20 Tabella delle pagine La MMU contiene una tabella delle pagine, con una riga per ogni pagina dello spazio di indirizzamento virtuale Ogni riga è identificata dal numero di pagina virtuale e contiene due campi: 1 bit VALIDO che indica se la pagina corrispondente è presente/assente in memoria Il numero di pagina fisica corrispondente

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 21 Costruzione dellindirizzo fisico

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 22 Procedura di calcolo dellindirizzo fisico 1. MMU riceve lindirizzo virtuale da 32 bit 2. Separa i 12 bit meno significativi che rappresentano lo spiazzamento allinterno della pagina di 4K 3. I 20 bit più significativi rappresentano il numero di pagina virtuale 4. Il numero di pagina virtuale identifica la riga della tabella delle pagine

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 23 Procedura di calcolo dellindirizzo fisico 5. La MMU verifica se la pagina richiesta è presente in memoria centrale esaminando il bit di VALIDO. 6. Se il bit=1 la pagina è presente in memoria Legge il valore contenuto nella tabella che rappresenta il numero di pagina fisica e lo affianca come bit più significativi alloffset ottenendo lindirizzo fisico di memoria da cercare. 7. Else si verifica un errore di pagina (page fault)

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 24 Errore di pagina Si verifica quando il bit di validità per una pagina virtuale è = 0: il controllo deve essere passato al sistema operativo con il meccanismo delleccezione. Una volta che il sistema operativo ha ottenuto il controllo, deve rintracciare la pagina nel livello inferiore della gerarchia (di solito un disco magnetico) e decidere dove, nella memoria fisica, deve mettere la pagina richiesta. Per individuare la posizione della pagina sul disco è necessaria una struttura dati che ne registra la posizione

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 25 Errore di pagina Deve inserire la corrispondenza tra indirizzo di pagina virtuale e di pagina fisica nella tabella delle pagine Ripetere lesecuzione dellistruzione che aveva causato lerrore di pagina

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 26 Tabella delle pagine

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 27 Traduzione degli indirizzi V = {0, 1,..., n - 1} spazio indirizzi virtuali M = {0, 1,..., m - 1} spazio indirizzi fisici MAP: V --> M U {Ø} f. traduzione degli indirizzi n > m MAP(a) = a' se il dato allind. virtuale a è presente allind. fisico a' e a' in M = Ø se il dato allind. virtuale a non è presente in M

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 28

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 29

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 30

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 31

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 32

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 33

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 34

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 35

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 36

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 37

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 38

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 39

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 40

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 41

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 42

Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 43