Swap (informatica): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
fix
 
(29 versioni intermedie di 23 utenti non mostrate)
Riga 1:
{{F|memorie informatiche|maggio 2012|Questa voce manca completamente di fonti}}
Con il termine '''swap''' si intende, in [[informatica]], l'estensione della capacità della memoria volatile complessiva del [[computer]], oltre il limite imposto dalla quantità di [[RAM]] installata, attraverso l'utilizzo di uno spazio su un altro supporto fisico, ad esempio il [[disco fisso]].
 
Con il termine '''swap''' si intende, in [[informatica]], l'estensione della capacità della [[memoria volatile]] complessiva del [[computer]], oltre il limite imposto dalla quantità di [[RAM]] installata, attraverso l'utilizzo di uno spazio di memoria su un altro supporto fisico di memorizzazione, ad esempio il [[disco fisso]]. L'uso dello swap è una delle tecniche impiegate dal [[sistema operativo]] per la gestione della [[memoria virtuale]].
A seconda del [[sistema operativo]] utilizzato è possibile avere '''[[file]] di swap''' (chiamato anche '[[Memoria virtuale]]'), residenti nel normale [[file system]] del sistema, oppure '''[[partizione (informatica)|partizioni]] di swap''', cioè sezioni di disco integralmente dedicate allo swap ed inizializzate con un proprio specifico tipo di file system. L'uso della partizione è generalmente migliore dal punto vista delle prestazioni, perché evita che lo swap vada soggetto alla [[Frammentazione (informatica)|frammentazione]] tipica di alcuni file system. Per contro, occupa una delle (poche) partizioni disponibili sul disco fisso.
 
== Descrizione ==
In pratica, quando la memoria RAM libera non è più sufficiente per contenere tutte le informazioni che servono ai programmi, il sistema operativo si fa carico di spostare una certa quantità di dati (quelli meno recentemente utilizzati) dalla [[RAM|memoria volatile]] a quella di [[hard_disk|massa]], liberando quindi una parte della RAM per permettere il corretto funzionamento dei programmi. È chiaro che nel momento in cui si rende necessaria tale operazione, le prestazioni del sistema crollano bruscamente, essendo la scrittura su hard disk molto più lenta di quella in RAM (oltre cento volte, al 2006).
=== Funzione ===
Lo swap viene utilizzato per liberare [[memoria RAM]]: il sistema operativo ne salva sul [[hard disk|disco]] una porzione della memoria allocata, che quindi può essere liberata e riallocata per i [[programma (informatica)|programmi]] che ne hanno bisogno. Questa porzione contiene i dati che hanno minore probabilità di essere richiesti nel futuro, e in genere sono quelli meno recentemente utilizzati. È chiaro che nel momento in cui si rende necessaria tale operazione, le prestazioni del sistema crollano bruscamente, essendo la scrittura su hard disk molto più lenta di quella in RAM (oltre cento volte inferiore).
 
Ad esempio, questa evenienza si verifica quando la memoria RAM libera non è più sufficiente per contenere tutte le informazioni che servono ai programmi. In realtà, in genere, il sistema operativo esegue lo swapping in maniera proattiva cioè ben prima dell'esaurimento della RAM, in modo da non restare mai a corto di memoria.
 
Alcune situazioni tipiche che possono provocare l'utilizzo intensivo del file di swap sono:
* Esecuzioni contemporanea di diverse [[applicazione (informatica)|applicazioni]], in quanto ognuna necessita di un certo quantitativo di RAM libera per funzionare, e nei normali PC questa risorsa si esaurisce molto in fretta.
* Fotoritocco di [[immagine digitale|immagini digitali]] ad alta [[risoluzione (grafica)|risoluzione]] con la funzione ''annulla'' attivata, perché ogni immagine intermedia deve essere salvata in memoria per poter annullare l'operazione appena eseguita sull'immagine principale.
 
Inoltre, lo swap viene usato per rimuovere dalla RAM zone di memoria, ad esempio quelle usate in fase di inizializzazione di un programma, che non saranno più lette.
In generale, quindi, ogni operazione che richiede l'elaborazione di una grande quantità di dati.
 
=== File di swap ine Windowspartizione di swap ===
A seconda del [[sistema operativo]] utilizzato è possibile avere '''[[file]] di swap''' (chiamato anche '[[Memoria virtuale]]'), residentiche risiedono nel normale [[file system]] del sistema, oppure '''[[partizione (informatica)|partizioni]] di swap''', cioè sezioni didel disco integralmente dedicate allo swap ed inizializzate con un proprio specifico tipo di file system. L'uso della partizione è generalmente migliore dal punto vista delle prestazioni, perché evita che lo swap vada soggetto alla [[Frammentazione (informatica)|frammentazione]] tipica di alcuni file system. Per contro, occupa una delle (poche) partizioni disponibili sul disco fisso, ma il limite del numero delle partizioni è aggirabile mediante l'utilizzo di un [[Gestore logico dei volumi]].
Nei sistemi [[Windows]] la memoria virtuale è in genere gestita automaticamente dal sistema, anche se è consigliabile impostare una configurazione manuale (quantitativo minimo prefissato, massimo libero), per le migliori prestazioni.
 
==== File di swap in Windows ====
Nei sistemi [[Windows]] lo swap è chiamato anche ''memoria virtuale'', anche se questa corrispondenza è imprecisa, in quanto il nome ''memoria virtuale'' indica più correttamente lo spazio di memoria gestito dal sistema operativo, per come viene "visto" dai [[processo (informatica)|processi]].
 
NeiWindows sisteminon [[Windows]]usa lapartizioni memoriadi virtualeswap, èma solo file di swap. Lo swap viene in genere gestitagestito automaticamente dal sistema, anche se è consigliabile impostare una configurazione manuale (quantitativo minimo prefissato, massimo libero), per le miglioriavere prestazioni migliori.
 
Nei sistemi [[Windows 2000]] e [[Windows XP]] esistono due [[file]] di swap che sono [[file nascosto| nascosti]]:
* hiberfil.sys (usato solo in fase di "ibernazione" del sistema, il contenuto completo della [[RAM|memoria RAM]] viene copiato integralmente in questo file e alla ripresa del sistema ricaricato completamente)
* pagefile.sys (usato ogni qual volta la [[RAM|memoria RAM]] non sia sufficiente, viene anche chiamato "file di [[paging]]")
Presenti, generalmente nella radice del disco (esempio: C:\)
 
==== FilePartizione di swap in Linux ====
Nell'installazione di qualsiasi sistema [[UNIX]]-like, come [[Linux]], l'installatore dell'[[Sistema Operativo|OS]] raccomanda di creare almeno due partizioni, cioè una contenente la [[directory]] radice '''/''', e una partizione di swap, la cui grandezza in [[Megabyte]] o in [[Gigabyte]] può essere variabile. ÈLo comunquespazio consigliatoutilizzato fareper unala partizione di swap conpuò dimensionivariare dida 2pochi gb[[megabyte]] se la ram è inferiorefino a 2qualche gbgigabyte.
 
altrimenti basta ricorrere a riservare solo 1 gb.
èÈ utile ricordare che, se si intende utilizzare le funzionalità di sospensione e ibernazione del sistema operativo la partizione di swap deve avere dimensioni pari (meglio se leggermente superiori) della quantità di RAM in uso sulla macchina.
 
La creazione della partizione swap non è obbligatoria, ma molto consigliata.
 
== Voci correlate ==
* [[Memoria virtuale]] - caldamente consigliato per approfondimenti
* [[de:Paging]]
 
== Collegamenti esterni ==
[[Categoria:Gestione della memoria]]
* {{FOLDOC||swap}}
 
{{portale|informatica}}
[[ca:Paginació de memòria]]
 
[[cs:Stránkování]]
[[Categoria:Gestione della memoria]]
[[de:Paging]]
[[en:Swap space]]
[[es:Paginación de memoria]]
[[et:Lehekülgede saalimine]]
[[eu:Orrikatze]]
[[fr:Mémoire virtuelle#Mémoire virtuelle paginée]]
[[ja:ページング方式]]
[[ko:페이징]]
[[pl:Stronicowanie pamięci]]
[[pt:Memória paginada]]