TECNICA DELLE PARTIZIONI RILOCABILI

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

Memoria Virtuale in Linux
Gestione della Memoria
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
Presente e futuro della religiosità nel nord est DIFFERENZE TRA GENERAZIONI figli e padri italo de sandre 1ids.
MONITORAGGIO MATEMATICA V A Alunni 26 Presenti 23 Quesiti 44 Risposte totali 650 Risultato medio 28,3 media 64,2%
1 MeDeC - Centro Demoscopico Metropolitano Provincia di Bologna - per Valutazione su alcuni servizi erogati nel.
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.
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 del processore
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.
Realizzazione del file system
Memoria virtuale Memoria virtuale – separazione della memoria logica dell’utente dalla memoria fisica. Solo alcune parti di un programma devono trovarsi.
Gestione della memoria
Interfaccia del file system
Realizzazione del file system
Gestione della memoria
Associazione Nazionale Medici Cardiologi Ospedalieri
I MATEMATICI E IL MONDO DEL LAVORO
EIE 0607 III / 1 A B P a = 30 P b = 35 t = 2, tc = 1 Questo può essere un equilibrio? No! Politiche di un paese importatore: una tariffa allimportazione.
ELEZIONI REGIONALI 2010 PRIMI RISULTATI E SCENARI 14 aprile 2010.
Canale A. Prof.Ciapetti AA2003/04
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
Il linguaggio Fortran 90: 4. Array: Vettori e Matrici
Tabelle hash.
Master universitario di II livello in Ingegneria delle Infrastrutture e dei Sistemi Ferroviari Anno Accademico 2012/2013 Cultura dimpresa, valutazione.
La partita è molto combattuta perché le due squadre tentano di vincere fino all'ultimo minuto. Era l'ultima giornata del campionato e il risultato era.
MP/RU 1 Dicembre 2011 ALLEGATO TECNICO Evoluzioni organizzative: organico a tendere - ricollocazioni - Orari TSC.
memoria gestita staticamente:
Cos’è un problema?.
Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 1 Sommario: 1. Concetto di bit. 2. Indirizzi di memoria. 3. Ordinamento.
Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE.
Lezione 6 Encoder ottici
Gestione della memoria logica e fisica degli elaboratori x86
OO _60-59_ OI_53-54 _ OL _ OR_52-47_ OO= Orientamento allOBIETTIVO OI= Orientamento all'INNOVAZIONE OL= Orientamento alla LEADERSHIPOR= Orientamento.
CHARGE PUMP Principio di Funzionamento
Settimana: 3-7 marzo Orariolunedimartedi Mercoledi 5 Giovedi 6 Venerdi lezione intro alla fis mod DR lezione intro alla fis mod DR.
Esercitazione 1: Rispetto al test di ansia (Media=25; σ=5), calcolare:
Q UESTIONI ETICHE E BIOETICHE DELLA DIFESA DELLA VITA NELL AGIRE SANITARIO 1 Casa di Cura Villa San Giuseppe Ascoli Piceno 12 e 13 dicembre 2011.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
ISTITUTO COMPRENSIVO “G. BATTAGLINI” MARTINA FRANCA (TA)
La Gestione della Memoria
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
LE SAI LE TABELLINE? Mettiti alla prova!.
1 Questionario di soddisfazione del servizio scolastico Anno scolastico 2011/2012 Istogramma- risposte famiglie.
Un trucchetto di Moltiplicazione per il calcolo mentale
Esempi risolti mediante immagini (e con excel)
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Gestione della Memoria
NO WASTE Progetto continuità scuola primaria scuola secondaria Salorno a.s. 2013_
Numeri Interi senza segno
I chicchi di riso e la sfida al Bramino
Memoria La memoria è un vettore di stringhe di bit (word/parole) In memoria è allocato il Sistema Operativo. In memoria sono allocati i programmi per poter.
Il numero più grande Accademia dei Lincei
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
1 Gestione della Memoria. 2 Idealmente la memoria dovrebbe essere –grande –veloce –non volatile Gerarchia di memorie –Disco: capiente, lento, non volatile.
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
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
1 1. Introduzione alla gestione della memoria 2. Swapping 3. Memoria virtuale 4. Implementazione 5. Algoritmi di sostituzione Gestione della Memoria.
Transcript della presentazione:

TECNICA DELLE PARTIZIONI RILOCABILI RILOCAZIONE DINAMICA MEDIANTE UNA COPPIA DI REGISTRI: REGISTRO BASE RB E REGISTRO LIMITE RL Y = F(X) Y = X + RB

TECNICA DELLE PARTIZIONI RILOCABILI MEMORIA RL RB indirizzo virtuale indirizzo fisico < + violazione di indirizzo

TECNICA DELLE PARTIZIONI RILOCABILI STRATEGIE DI ALLOCAZIONE (allocazione dinamica) STESSE STRATEGIE DI ALLOCAZIONE DELLE PARTIZIONI VARIABILI SWAP-IN E SWAP-OUT STRATEGIA DI COMPATTAMENTO PER ELIMINARE LA FRAMMENTAZIONE

TECNICA DELLE PARTIZIONI RILOCABILI NECESSITA` DI DUE COPPIE DI REGISTRI BASE/LIMITE PER CONSENTIRE LA CONDIVISIONE DI CODICE TRA PROCESSI CODICE CONDIVISO DATI1 DATI2 RB1 RL1 RB2 RL2 RB2 RL2 PROCESSO A PROCESSO B

TECNICA DELLE PARTIZIONI RILOCABILI UNO SPAZIO VIRTUALE (CONTIGUO) RICHIEDE UNO SPAZIO CONTIGUO DI MEMORIA FISICA ¯ FRAMMENTAZIONE NECESSITA` DI COMPATTAMENTO NOTEVOLE OVERHEAD

ALLOCAZIONE DELLA MEMORIA IN SISTEMI CON RILOCAZIONE DINAMICA TECNICA DELLA PAGINAZIONE MECCANISMO DI RILOCAZIONE DINAMICA CHE CONSENTE DI ALLOCARE UNO SPAZIO VIRTUALE CONTIGUO IN AREE DI MEMORIA FISICA NON NECESSARIAMENTE CONTIGUE. CIO` SI OTTIENE SUDDIVIDENDO SIA LO SPAZIO VIRTUALE CHE LO SPAZIO FISICO IN PARTI (PAGINE) DI DIMENSIONI FISSE ED ALLOCANDO AD OGNI PROCESSO UN NUMERO DI PAGINE FISICHE ESATTAMENTE UGUALE AL NUMERO DI PAGINE VIRTUALI DEL PROCESSO.

TECNICA DELLA PAGINAZIONE SPAZIO VIRTUALE 10 ESEMPIO: DIMENSIONE DELLA PAGINA = 2 = 1024 BYTE PAGINE VIRTUALI: 0 1 2 3 4 5 1024 2048 3072 4096 5120 1023 2047 3071 4095 5119 INDIRIZZI VIRTUALI

TECNICA DELLA PAGINAZIONE SPAZIO VIRTUALE 10 ESEMPIO: DIMENSIONE DELLA PAGINA = 2 = 1024 BYTE PAGINA VIRTUALE N. 2 2048 2049 2050 3071

TECNICA DELLA PAGINAZIONE INDIRIZZO VIRTUALE INDIRIZZO VIRTUALE X = COPPIA ( P, O) DOVE: P = PAGINA A CUI APPARTIENE X, O = OFFSET DI X NELL’AMBITO DELLA PAGINA ESEMPIO X = 2051: P = PARTE INTERA DI 2050 : 1024 = 2 O = RESTO DI 2051 : 1024 = 3

TECNICA DELLA PAGINAZIONE INDIRIZZO VIRTUALE PAGINA = 2 OFFSET = 3 1 1 1 11 2 = 2048 + 2 + 1 = 2051

TECNICA DELLA PAGINAZIONE ALLOCAZIONE PAGINATA INDIRIZZI VIRTUALI INDIRIZZI FISICI 0 - 1K 0 - 1K 1 - 2K 1 - 2K 2 - 3K 2 - 3K 3 - 4K 3 - 4K 4 - 5K 4 - 5K 5 - 6K 5 - 6K 6 - 7K

TECNICA DELLA PAGINAZIONE TRADUZIONE DEGLI INDIRIZZI SAPENDO CHE LA PAGINA LOGICA N. 2 E` STATA CARICATA NELLA PAGINA FISICA N. 5: L’INDIRIZZO VIRTUALE: X = 2051 = (P:2 , O:3) CORRISPONDE ALL’INDIRIZZO FISICO: Y = (P:5 , O:3) = 5*1024 + 3 = 5123

TECNICA DELLA PAGINAZIONE TABELLA DELLE PAGINE PAGINA LOGICA INDICE DELLA PAGINA FISICA 2 1 2 5 3 1 4 3 5 6

TECNICA DELLA PAGINAZIONE TRADUZIONE DEGLI INDIRIZZI indirizzo virtuale indirizzo fisico P O P O tabella pagine f P P f

TECNICA DELLA PAGINAZIONE DEMAND PAGING CARICAMENTO PARZIALE DELLE PAGINE DI UN PROCESSO; MECCANISMO DI TRADUZIONE DEGLI INDIRIZZI CHE GENERA UNA INTERRUZIONE SE L’INDIRIZZO VIRTUALE DA TRADURRE CORRISPONDE AD UNA PAGINA NON ALLOCATA IN MEMORIA; GESTIONE DELLA INTERRUZIONE PER CARICARE DA DISCO LA PAGINA RICHIESTA.

TECNICA DELLA PAGINAZIONE DEMAND PAGING: INTERRUZIONI DI PAGE-FAULT PAGINA LOGICA INDICE DELLA PAGINA FISICA BIT DI PRESENZA 2 1 1 1 2 -- 3 1 1 4 -- 5 6 1

TECNICA DELLA PAGINAZIONE DEMAND PAGING: INTERRUZIONI DI PAGE-FAULT PAGE-FAULT TABELLA PAGINE 3 1 SWAP DEVICE CALL X 2 6 5 4 MEMORIA

TECNICA DELLA PAGINAZIONE CARATTERISTICHE TABELLA DELLA MEMORIA: TABELLA CON TANTE ENTRATE QUANTE SONO LE PAGINE FISICHE. OGNI ENTRATA INDICA SE LA CORRISPONDENTE PAGINA E` LIBERA O OCCUPATA E, IN QUESTO CASO, DA CHI; NEL DESCRITTORE DI UN PROCESSO VIENE RIPORTATO L’INDIRIZZO DELLA SUA TABELLA DELLE PAGINE E DELLA TABELLA CONTENENTE GLI INDIRIZZI DELLE PAGINE SU DISCO.

TECNICA DELLA PAGINAZIONE CARATTERISTICHE NECESSITA` DI GESTIRE LE INTERRUZIONI DI PAGE-FAULT; QUANDO SI VERIFICA UNA COMMUTAZIONE DI CONTESTO DEVE ESSERE COMMUTATA ANCHE LA TABELLA DELLE PAGINE CON CUI EFFETTUARE LA TRADUZIONE DEGLI INDIRIZZI.

TECNICA DELLA PAGINAZIONE CARATTERISTICHE Registro Puntatore Tabella Pagine tabella del processo in esecuzione

TECNICA DELLA PAGINAZIONE PROCEDURA DI PAGE-FAULT - INTERRUZIONE DI PAGE-FAULT -> INGRESSO NELL NUCLEO; - SALVATAGGIO DELLO STATO DEL PROCESSO; - INDIVIDUAZIONE DEL NUMERO DELLA PAGINA RICHIESTA; - VERIFICA SE ESISTE UNA PAGINA FISICA LIBERA, SE NO SCELTA DI UNA PAGINA DA RIMPIAZZARE;

TECNICA DELLA PAGINAZIONE PROCEDURA DI PAGE-FAULT - SE LA PAGINA DA RIMPIAZZARE E` STATA MODIFICATA SALVARLA SU DISCO; - CARICARE LA PAGINA RICHIESTA NELLA PAGINA FISICA SCELTA; - SOSPENDERE IL PROCESSO IN ATTESA DELLA FINE DEL TRASFERIMENTO;

TECNICA DELLA PAGINAZIONE PROCEDURA DI PAGE-FAULT - ALL’ARRIVO DELL’INTERRUZIONE DI FINE CARICAMENTO, AGGIORNARE LE TABELLE DELLE PAGINE; - AGGIORNARE IL VALORE DEL REGISTRO PUNTATORE ALL’ISTRUZIONE CORRENTE NEL DESCRITTORE DEL PROCESSO PER POTER RIESEGUIRE L’ISTRUZIONE CHE HA GENERATO PAGE-FAULT; 0-SUCCESSIVAMENTE IL PROCESSO PUO` ESSERE RIATTIVATO.

TECNICA DELLA PAGINAZIONE ASPETTI CRITICI NECESSITA` DI MINIMIZZARE IL TEMPO NECESSARIO PER LA TRADUZIONE DEGLI INDIRIZZI NECESSITA` DI RISOLVERE IL PROBLEMA DELLA ALLOCAZIONE IN MEMORIA DELLE TABELLE DELLE PAGINE NECESSITA` DI REALIZZARE UN ALGORITMO DI RIMPIAZZAMENTO DELLE PAGINE TALE DA MINIMIZZARE IL NUMERO DEI PAGE-FAULT (PROBLEMA DEL “TRASHING”)

TECNICA DELLA PAGINAZIONE GESTIONE DELLE TABELLE DELLE PAGINE TABELLE DELLE PAGINE A PIU` LIVELLI 10 BIT 10 BIT 12 BIT PAG1 PAG2 OFFSET PAGINA DI 4096 INDIRIZZI TABELLE DI 1024 ENTRATE

TECNICA DELLA PAGINAZIONE TABELLE DELLE PAGINE A PIU` LIVELLI PAG1 PAG2 O Pf Pf O

TECNICA DELLA PAGINAZIONE FRAMMENTAZIONE INTERNA NORMALMENTE UN PROCESSO NON OCCUPA ESATTAMENTE UN NUMERO INTERO DI PAGINE VIRTUALI; L’ULTIMA PAGINA VIRTUALE E`, MEDIAMENTE, OCCUPATA PER META`; FRAMMENTAZIONE INTERNA = PARTE INUTILIZZATA DELLA PAGINA FISICA ALLOCATA ALL’ULTIMA PAGINA VIRTUALE.

TECNICA DELLA PAGINAZIONE TABELLA DELLA MEMORIA STRUTTURA DATI NECESSARIA PER MANTENERE AGGIORNATO LO STATO DI OGNI PAGINA FISICA DELLA MEMORIA; E` NORMALMENTE COSTITUITA DA UN ARRAY CON UN NUMERO DI ELEMENTI PARI AL NUMERO DI PAGINE FISICHE; OGNI ELEMENTO CONTIENE LO STATO DI ALLOCAZIONE DELLA CORRISPONDENTE PAGINA FISICA E ALTRE INFORMAZIONI UTILI PER REALIZZARE L’ALGORITMO DI RIMPIAZZAMENTO.

TECNICA DELLA PAGINAZIONE TABELLA DELLA MEMORIA IN TRANSITO STATO LOCK 1 2 3 P - 1 f

TECNICA DELLA PAGINAZIONE PAGINE CONDIVISE SPAZIO VIRTUALE DEL PROCESSO A TABELLA DELLE PAGINE DI A 2 TESTO-1 5 TESTO-2 3 6 TESTO-3 DATI-A

TECNICA DELLA PAGINAZIONE PAGINE CONDIVISE SPAZIO VIRTUALE DEL PROCESSO B TABELLA DELLE PAGINE DI B 2 TESTO-1 5 TESTO-2 3 1 TESTO-3 DATI-B

TECNICA DELLA PAGINAZIONE PAGINE CONDIVISE TABELLA DELLE PAGINE DI A MEMORIA FISICA TABELLA DELLE PAGINE DI A DATI-B 2 2 5 5 TESTO-1 3 3 TESTO-3 6 1 TESTO-2 DATI-A

TECNICA DELLA PAGINAZIONE PROTEZIONE LA PROTEZIONE DELLO SPAZIO FISICO ALLOCATO AD UN PROCESSO E` GARANTITA AUTOMATICAMENTE DAL MECCANISMO DI RILOCAZIONE; EVENTUALI ATTRIBUTI DI PROTEZIONE ASSOCIATI ALLE PAGINE: - DISTINZIONE TRA PAGINE READ-ONLY E READ-WRITE; - POSSIBILE ESTENSIONE A UN NUMERO MAGGIORE DI DIRITTI DI ACCESSO (EXECUTE-ONLY).

TECNICA DELLA PAGINAZIONE DIMENSIONI DELLE PAGINE LA FRAMMENTAZIONE ESTERNA AUMENTA AUMENTANDO LA DIMENSIONE DELLE PAGINE; LA DIMENSIONE DELLA TABELLA DELLE PAGINE AUMENTA DIMINUENDO LA DIMENSIONE DELLE PAGINE; VALORI TIPICI DELLA DIMENSIONE DELLE PAGINE IN SISTEMI COMMERCIALI SONO COMPRESI TRA 512 E 4K.

TECNICA DELLA PAGINAZIONE CONTIGUITA` DELLO SPAZIO VIRTUALE MECCANISMO DELLA PAGINAZIONE COMPLETAMENTE TRASPARENTE AL PROGRAMMATORE; LO SPAZIO VIRTUALE PAGINATO E` COSTITUITO DA UN UNICO SPAZIO CONTIGUO DI INDIRIZI VIRTUALI CHE PARTONO DA ZERO; LA CORRISPONDENZA TRA LO SPAZIO VIRTUALE CONTIGUO E LO SPAZIO FISICO NON CONTIGUO E` GARANTITA DAL MECCANISMO DI RILOCAZIONE.

TECNICA DELLA PAGINAZIONE INCONVENIENTI DI UNO SPAZIO VIRTUALE CONTIGUO STRUTTURE DATI VARIABILI CODICE DATI1 DATI2 STACK ® ® ¬ N

TECNICA DELLA PAGINAZIONE INCONVENIENTI DI UNO SPAZIO VIRTUALE CONTIGUO PROTEZIONE PAGINE 1 2 3 4 5 6 7 CODICE EXECUTE-ONLY DATI READ-ONLY STACK READ-WRITE

TECNICA DELLA PAGINAZIONE INCONVENIENTI DI UNO SPAZIO VIRTUALE CONTIGUO CONDIVISIONE PAGINE 1 2 3 4 5 6 7 CODICE CONDIVISO DATI PRIVATI STACK PRIVATO

TECNICA DELLA SEGMENTAZIONE IL MODO PIU` NATURALE DI CONCEPIRE LA MEMORIA DA PARTE DEL PROGRAMMATORE NON E` QUELLO CORRISPONDENTE ALLA MEMORIA FISICA, UN VETTORE CONTIGUO DI LOCAZIONI, MA QUELLO CHE DERIVA DIRETTAMENTE DAL MODO CON CUI UN PROGRAMMA VIENE STRUTTURATO E CIOE` UN INSIEME DI SPAZI VIRTUALI (SEGMENTI) INDIPENDENTI UNO DALL’ALTRO E OGNUNO DEI QUALI DESTINATO A CONTENERE UN COMPONENTE LOGICO DEL PROGRAMMA: PROCEDURE, FUNZIONI, STRUTTURE DATI, STACK, ECC.

TECNICA DELLA SEGMENTAZIONE SPAZIO VIRTUALE SEGMENTATO MAIN PROGRAM STRUTTURA DATI STACK FUNZIONE

TECNICA DELLA SEGMENTAZIONE SPAZIO VIRTUALE SEGMENTATO OGNI SEGMENTO E` UN SOTTOSPAZIO LINEARE CONTIGUO DI LOCAZIONI COMPRESE TRA ZERO ED UN VALORE MASSIMO; OGNI SEGMENTO E` INDIPENDENTE DAGLI ALTRI; DIFFERENTI SEGMENTI POSSONO AVERE DIVERSE LUNGHEZZE; UN SEGMENTO PUO` EVERE DIMENSIONI VARIABILI DINAMICAMENTE ENTRO LE SUE DIMENSIONI MASSIME.

TECNICA DELLA SEGMENTAZIONE SPAZIO VIRTUALE SEGMENTATO UNA MEMORIA VIRTUALE SEGMENTATA E` UNA MEMORIA IN CUI OGNI INDIRIZZO E` COMPOSTO DA DUE COMPONENTI: IL SEGMENTO E LO SCOSTAMENTO NELL’AMBITO DEL SEGMENTO; L’ULTIMIO INDIRIZZO DI UN SEGMENTO NON E` CONSECUTIVO AL PRIMO DEL SEGMENTO SUCCESSIVO; PER OGNI SEGMENTO POSSONO ESSERE SPECIFICATI ATTRIBUTI DI PROTEZIONE E DI CONDIVISIBILITA` .

TECNICA DELLA SEGMENTAZIONE SPAZIO VIRTUALE SEGMENTATO IN UN SISTEMA SEGMENTATO LO SPAZIO VIRTUALE E` ANCORA CREATO IN FASE DI COMPILAZIONE E DI COLLEGAMENTO (LINK); IL COMPILATORE CREA UN SEGMENTO SEPARATO PER OGNI COMPONENTE DEL PROGRAMMA: MAIN , VARIABILI GLOBALI, CODICE DI FUNZIONI, STACK, ECC. IL LIKER ASSEGNA UN DIVERSO VALORE NUMERICO AD OGNI SEGMENTO (A PARTIRE DA ZERO) ED EFFETTUA IL COLLEGAMENTO TRADUCENDO I RIFERIMENTI INTERSEGMENTO.

TECNICA DELLA SEGMENTAZIONE ALLOCAZIONE IN MEMORIA LA RILOCAZIONE IN MEMORIA DI OGNI SEGMENTO DI UNO SPAZIO VIRTUALE AVVIENE CON LA STESSA TECNICA DELLE PARTIZIONI RILOCABILI: MEDIANTE UNA COPPIA DI REGISTRI BASE - LIMITE PER OGNI SEGMENTO; L’INSIEME DI TUTTE LE COPPIE DI REGISTRI DI UNO SPAZIO VIRTUALE COSTITUISCE UN VETTORE NOTO CON IL NOME DI TABELLA DEI SEGMENTI DEL PROCESSO;

TECNICA DELLA SEGMENTAZIONE TABELLA DEI SEGMENTI S MEMORIA LIMITE BASE indirizzo virtuale: (S , O) indirizzo fisico SI < + NO violazione di indirizzo

TECNICA DELLA SEGMENTAZIONE ESEMPIO STRUTTURA DATI MAIN PROGRAM SEGMENTO 2 5K SEGMENTO STACK FUNZIONE SEGMENTO 3 10K SEGMENTO 1 3K 1K

TECNICA DELLA SEGMENTAZIONE ESEMPIO TABELLA DEI SEGMENTI LIMITE BASE 10K 50K 1 1K 100K 2 5K 70K 3 3K 30K

TECNICA DELLA SEGMENTAZIONE ESEMPIO SISTEMA OPERATIVO 3 2 1 30K 33K 50K 60K 70K 75K 100K 101K

TECNICA DELLA SEGMENTAZIONE CARATTERISTICHE OGNI ELEMENTO DELLA TABELLA DEI SEGMENTI (COPPIA BASE - LIMITE) E` NOTA CON IL NOME DI DESCRITTORE DEL SEGMENTO; DUE O PIU` PROCESSI POSSONO CONDIVIDERE UN SEGMENTO DI CODICE RIENTRANTE: I DESCRITTORI DI QUESTO SEGMENTO NELLE RISPETTIVE TABELLE CONTENGONO GLI STESSI VALORI BASE - LIMITE;

TECNICA DELLA SEGMENTAZIONE DESCRITTORE DI SEGMENTO BIT DI PRESENZA LIMITE BASE PROTEZIONE

TECNICA DELLA SEGMENTAZIONE SEGMENTAZIONE SU DOMANDA USO DI REGISTRI ASSOCIATIVI PER RIDURRE IL TEMPO DI TRADUZIONE DA INDIRIZZO VIRTUALE A INDIRIZZO REALE ; DISPONIBILITA` DI BIT DI USO E DI MODIFICA PER SEMPLIFICARE L’ALGORITMO DI RIMPIAZZAMERNTO DEI SEGMENTI; ESECUZIONE DI ALGORITMI DI COMPATTAMENTO PER RIDURRE IL FENOMENO DELLA FRAMMENTAZIONE ESTERNA.

TECNICA DELLA SEGMENTAZIONE ESEMPIO INTEL 286: DESCRITTORE DI SEGMENTO 15 8 7 CONTROLLO: - BIT DI PRESENZA, - BIT DI PROTEZIONE, - ECC. 1 LIMITE 0-15 3 BASE 2 0-15 5 BASE CONTROLLO 4 16-23 7 NON USATI 6

TECNICA DELLA SEGMENTAZIONE ESEMPIO INTEL 286: ALLOCAZIONE TABELLA DEI SEGMENTI RAM LIMITE SEGMENTO ALLOCATO IN MEMORIA BASE BASE

TECNICA DELLA SEGMENTAZIONE ESEMPIO INTEL 286: MECCANISMO DI TRADUZIONE indirizzo virtuale segmento s offset o segmento + dato RAM tabella dei segmenti

TECNICA DELLA SEGMENTAZIONE ESEMPIO INTEL 286: INDIRIZZO VIRTUALE 16384 (214 ) SEGMENTI DI DIMENSIONI VARIABILI FINO AD UN MASSIMO DI 64K (216). LO SPAZIO VIRTUALE PUO` QUINDI CONTENERE FINO AD UN MASSIMO DI UN GIGABYTE (230) DI LOCAZIONI. I 16384 SEGMENTI SONO SUDDIVISI IN DUE GRUPPI DI 8192 CIASCUNO. IL PRIMO SOTTOGRUPPO RAPPRESENTA I SEGMENTI GLOBALI A TUTTI I PROCESSI (SOTTOSPAZIO DI SISTEMA), IL SECONDO I SEGMENTI PROPRI DI OGNI PROCESSO (SOTTOSPAZIO LOCALE).

TECNICA DELLA SEGMENTAZIONE ESEMPIO INTEL 286: REGISTRI DI SEGMENTO 16 BIT 48 BIT PARTE NASCOSTA SELETTORE CS DS ES SS 63 48 47 40 39 16 15 DIRITTI BASE LIMITE DI ACCESSO

SEGMENTAZIONE PAGINATA LA TECNICA PIU` SOFISTICATA DI GESTIONE DELLA MEMORIA E` COSTITUITA DALL’UNIONE DELLE DUE TECNICHE DELLA SEGMENTAZIONE E DELLA PAGINAZIONE; LA SEGMENTAZIONE CONSENTE DI OTTENERE TUTTI I VANTAGGI DI UNA MEMORIA VIRTUALE NON CONTIGUA; LA PAGINAZIONE VIENE ULTERIORMENTE APPLICATA AD OGNI SEGMENTO PER ELIMINARE LA FRAMMENTAZIONE DELLA MEMORIA FISICA.

SEGMENTAZIONE PAGINATA indirizzo virtuale s d d p o tabella segmenti tabella pagine tabella pagine limite + f f o indirizzo fisico

SEGMENTAZIONE PAGINATA ESEMPIO INTEL 386: DESCRITTORE DI SEGMENTO ANALOGO A QUELLO VISTO NEL CASO DEL 286 ANCHE SE CAMBIA LEGGERMENTE IL FORMATO. LA MAGGIORE DIFFERENZA CONSISTE NELLA DIMENSIONE DEI SEGMENTI CHE POSSONO CONTENERE FINO A 4 GIGABYTE (232).

SEGMENTAZIONE PAGINATA ESEMPIO INTEL 386: SEGMENTAZIONE INDIRIZZO VIRTUALE S D BASE + LIMITE CONTROLLO INDIRIZZO LINEARE A 32 BIT DESCRITTORE DI SEGMENTO

SEGMENTAZIONE PAGINATA ESEMPIO INTEL 386: PAGINAZIONE A 2 LIVELLI INDIRIZZO LINEARE 22 12 DIR. PAGINA OFFSET RAM DATO PAGE DIRECTORY PAGE TABLE

UNIX NELLE PRIME VERSIONI DI UNIX LA MEMORIA ERA GESTITA SENZA PAGINAZIONE; LA MEMORIA ERA ALLOCATA DINAMICAMENTE MEDIANTE LA TECNICA DELLO SWAPPING FRA MEMORIA PRINCIPALE E SWAP AREA; UN PROCESSO ERA O IN MEMORIA OPRINCIPALE O COMPLETAMENTE SU DISCO; SIA LA MEMORIA PRINCIPALE CHE LO SPAZIO FISICO SULLO SWAP DEVICE ERANO GESTITI CON LA STARTEGIA FIRST-FIT;

UNIX LA STRATEGIA DI SWAP VIENE REALIZZATA DAL PROCESSO NUMERO 0, NOTO COME PROCESSO SWAPPER; LO SWAPPER VIENE ATTIVATO OGNI 4 SECONDI PER VERIFICARE SE CI SONO PROCESSI DA SCARICARE SI DISCO O DA CARICARE IN MEMORIA; UN PROCESSO VIENE RIMOSSO QUANDO E` NECESSARIO FAR SPAZIO PER ALTRI PROCESSI;

UNIX UN PROCESSO E` CANDIDATO AD ESSERE SCARICATIO SE E` SOSPESO O SE E` IN MEMORIA DA MOLTO TEMPO O SE E` DI NOTEVOLI DIMENSIONI; UN PROCESSO E` PRIVILEGIATO PER ESSERE RICARICATO SE E` RIMASTO SU DISCO PER LUNGO TEMPO O SE RICHIEDE POCO SPAZIO; PER EVITARE IL FENOMENO DEL TRASHING UN PROCESSO NON PUO` ESSERE SCARICATO PRIMA DI AVER PASSATO IN MEMORIA UN CERTO TEMPO MINIMO.

UNIX NELLE VERSIONI PIU` RECENTI DI UNIX LA MEMORIA VIENE ALLOCATA CON LA TECNICA DELLA PAGINAZIONE SU DOMANDA; IL SISTEMA MANTIENE AGGIORNATA LA TABELLA DELLA MEMORIA (CORE MAP) IN CUI LE PAGINE FISICHE LIBERE SONO MANTENUTE CONCATENATE IN UNA LISTA; UN PROCESSO DI SISTEMA (IL PROCESO NUMERO 2 CHIAMATO PAGE DEAMON) VIENE ATTIVATO PERIODICAMENTE PER VERIFICARE CHE NELLA LISTA DELLE PAGINE LIBERE VI SIA UN NUMERO MINIMO (lotsfree) DI PAGINE;

UNIX SE LE PAGINE FISICHE LIBERE DIMINUISCONO IL PAGE DEAMON EFFETTUA IL RIMPIAZZAMENTO CON LA STRATEGIA DEL CLOCK ALGORITHM; SE UNA PAGINA RESA LIBERA VIENE RICHIESTA PRIMA DI ESSERE SOVRASCRITTA DA UN’ALTRA PUO` ESSERE RIUSATA IMMEDIATAMENTE; QUANDO IL PROCESSO 0 (SWAPPER) VERIFICA UNA SITUAZIONE DI SOVRACCARICO UN PROCESSO PUO` ANCORA ESSERE COMPLETAMENTE SCARICATO (SWAP-OUT).

UNIX SWAP-OUT SWAP-IN 1 EXIT USER KERNEL RUNNING RUNNING FORK 7 ZOMBIE 2 ZOMBIE 4 3 6 ASLEEP CREATED READY 5 8 ` SWAP-OUT SWAP-IN ASLEEP READY SWAPPED ASLEEP SWAPPED 5