Il problema della frammentazione piò colpire anche

This preview shows page 5 - 7 out of 11 pages.

Il problema della frammentazione piò colpire anche la memoria ausiliaria con la differenza che lì la compattazione non può essere eseguita perchè il tempo di accesso alla memoria secondaria è troppo alto. Se gli inirizzi sono rilocati dinamicamente, la rilocazione richiede solamente lo spostamento del programma e dei dati e quindi la modifica del registro di rilocazione in modo che rifletta il nuovo indirizzo di base. Un’altra tecnica è quella di assegnare a un processo memoria non contigua. Document shared on Downloaded by: rodion-raskol-nikov ([email protected])
Image of page 5
PAGINAZIONE La paginazione è un metodo di gestione della memoria che permette che lo spazio degli indirizzi fisici di un processo non sia contiguo. La memoria fisica è suddivisa in blocchi di dimensione costante, detti anche frame o pagine fisiche , allo stesso modo anche la memoria logica è divisa in blocchi di uguale dimensione detti pagine. Quando un processo va eseguito si caricano le sue pagine nei frame disponibili, prendendole dalla memoria ausiliaria divisa in blocchi della stessa dimensione dei frame. Ogni indirizzo generato dalla CPU è diviso in due parti : numero di pagina (p) ed offset (d). Il numero di pagina serve come indice della tabella delle pagine che contiene l’indirizzo di base in memoria fisica di ogni pagina, a questo indirizzo si combina l’offset per definire l’indirizzo di memoria fisica. La paginazione può essere vista come una forma di rilocazione dinamica, a ogni indirizzo logico corrisponde un indirizzo fisico grazie alla TDP, la TDP è simile ad una tabella di registri base o di rilocazione per ogni frame. Con il metodo della paginazione si evita il problema della frammentazione esterna ma può comunque insorgere quello della frammentazione interna, per esempio quando lo spazio richiesto da un processo non è multiplo della dimensione di un frame. Se la dimensione del processo è indipendente da quella della pagina ci si deve aspettare una frammentazione interna di mezza pagina, quindi conviene utilizzare pagine di piccole dimensioni, nonostante ciò però una dimensione maggiore delle pagine riduce il carico di ogni elemento della tabella delle pagine, inoltre con un numero maggiore di dati da trasferire l’I/O risulta più efficiente. Quando un processo va eseguito, si esamina la sua dimensione espressa in pagine, se sono disponibili tutti i frame richiesti allora le pagine vengono caricate in memoria fisica e si inserisce il numero dei frame nella TDP. Il programma utente vede la memoria come un unico spazio contiguo che contiene solo il programma stesso, in realtà il programma utente è sparso in memoria fisica dove sono presenti anche altri programmi, la differenza tra memoria fisica e memoria vista dal programma utente è colmata dallo schema di traduzione degli indirizzi.
Image of page 6
Image of page 7

You've reached the end of your free preview.

Want to read all 11 pages?

  • Fall '19
  • Sistema operativo, memoria virtuale, Processore, Indirizzo di memoria

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

Stuck? We have tutors online 24/7 who can help you get unstuck.
A+ icon
Ask Expert Tutors You can ask You can ask You can ask (will expire )
Answers in as fast as 15 minutes