Differenza tra paginazione e scambio nel sistema operativo

Autore: Laura McKinney
Data Della Creazione: 2 Aprile 2021
Data Di Aggiornamento: 5 Maggio 2024
Anonim
SO - 09 - Gestione della Memoria
Video: SO - 09 - Gestione della Memoria

Contenuto


Il paging e lo scambio sono due strategie di gestione della memoria. Per l'esecuzione, è necessario posizionare ciascun processo nella memoria principale. Lo scambio e il paging mettono entrambi il processo nella memoria principale per l'esecuzione. Swapping potrebbe essere aggiunto a qualsiasi algoritmo di pianificazione della CPU in cui i processi vengono scambiati dalla memoria principale al back store e scambiati dal backup alla memoria principale. paging consente di essere lo spazio degli indirizzi fisici di un processo non contigui. Discutiamo le differenze tra paginazione e scambio con l'aiuto della tabella di confronto mostrata di seguito.

  1. Tabella di comparazione
  2. Definizione
  3. Differenze chiave
  4. Conclusione

Tabella di comparazione

Base di confrontopagingSwapping
Di baseIl paging consente allo spazio degli indirizzi di memoria di un processo di essere non contiguo.Lo scambio consente l'esecuzione simultanea di più programmi nel sistema operativo.
FlessibilitàIl paging è più flessibile poiché vengono spostate solo le pagine di un processo.Lo scambio è meno flessibile poiché sposta l'intero processo avanti e indietro tra la memoria principale e il back store.
multiprogrammazioneIl paging consente a più processi di risiedere nella memoria principaleRispetto allo scambio di paging consente a meno processi di risiedere nella memoria principale.


Definizione di Paging

Il paging è uno schema di gestione della memoria, che assegna a spazio degli indirizzi non contiguo a un processo. Ora, quando l'indirizzo fisico di un processo può essere non contiguo al problema frammentazione esterna non sorgerebbe.

Il paging viene implementato rompendo il memoria principale in blocchi di dimensioni fisse che vengono chiamati montatura. Il memoria logica di un processo viene suddiviso negli stessi blocchi di dimensioni fisse chiamati pagine. La dimensione della pagina e la dimensione del frame sono definite dall'hardware. Come sappiamo, il processo deve essere inserito nella memoria principale per l'esecuzione. Pertanto, quando si deve eseguire un processo, le pagine del processo dalla sorgente, ad esempio il back store, vengono caricate in tutti i frame disponibili nella memoria principale.


Ora parliamo dell'implementazione del paging. La CPU genera l'indirizzo logico per un processo costituito da due parti che lo sono numero di pagina e il offset di pagina. Il numero di pagina viene utilizzato come un indice nel tabella delle pagine.

La tabella delle pagine contiene il file indirizzo di base di ogni pagina caricata nella memoria principale. Questo indirizzo di base è combinato con l'offset della pagina per generare l'indirizzo della pagina nella memoria principale.

Ogni sistema operativo ha il suo modo di memorizzare la tabella delle pagine. La maggior parte del sistema operativo ha una tabella di pagine separata per ogni processo.

Definizione di Scambio

Per l'esecuzione, ogni processo deve essere inserito nella memoria principale. Quando abbiamo bisogno di eseguire un processo e la memoria principale è completamente piena, allora il gestore della memoria swap un processo dalla memoria principale al backing store, evacuando il luogo per l'esecuzione degli altri processi. Il gestore della memoria scambia i processi così frequentemente che c'è sempre un processo nella memoria principale pronto per l'esecuzione.

A causa di indirizzo vincolante metodi, il processo che viene scambiato dalla memoria principale occupa lo stesso spazio di indirizzi quando viene ricambiato nella memoria principale se l'associazione viene eseguita in fase di assemblaggio o di caricamento. Se l'associazione viene eseguita al momento dell'esecuzione, il processo può occupare qualsiasi spazio degli indirizzi disponibile nella memoria principale poiché gli indirizzi vengono calcolati al momento dell'esecuzione.

Sebbene le prestazioni siano influenzate dallo scambio, aiuta a funzionare più processi in parallelo.

  1. La differenza di base tra il paging e lo scambio è che il paging evita frammentazione esterna consentendo allo spazio di indirizzamento fisico di un processo di essere non contiguo, mentre lo scambio consente multiprogrammazione.
  2. Il paging trasferisce le pagine di un processo avanti e indietro tra la memoria principale e la memoria secondaria, pertanto il paging è flessibile. Tuttavia, lo scambio scambia l'intero processo avanti e indietro tra la memoria principale e secondaria e quindi lo scambio è meno flessibile.
  3. Il paging può consentire a più processi di essere nella memoria principale rispetto allo scambio.

Conclusione:

Il paging evita la frammentazione esterna in quanto utilizza gli spazi degli indirizzi non contigui nella memoria principale. Lo scambio potrebbe essere aggiunto all'algoritmo di pianificazione della CPU in cui il processo deve essere frequentemente dentro e fuori dalla memoria principale.