Tutto quello che c’è da sapere sulla SWAP dei sistemi Linux

postato in: Linux | 1

Per SWAP si indica “…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 di memorizzazione…”.    L’uso di sistemi di swap è la tecnica più utilizzata, in un sistema operativo, per gestire della memoria virtuale.

A seconda del sistema operativo utilizzato è possibile avere file di swap, che risiedono nel normale file system del sistema (come ad esempio fanno i sistemi Microsoft), oppure partizioni di swap (come fanno i sistemi UNIX-like), cioè sezioni del disco con un proprio specifico tipo di file system.

Questa seconda soluzione garantisce prestazioni migliori, in quanto evita che lo swap sia soggetto alla frammentazione del file system.
Nell’installazione di un sistema operativo Linux si raccomanda di creare almeno due partizioni, una contenente la directory radice / e una partizione di swap.

Il mio pc ha 2 GB di RAM quanto devo impostare come SWAP?

una volta si impostava lo SWAP con una dimensione doppia rispetto alla RAM… ma è ancora così?

In questo primo articolo andremo ad analizzare questo aspetto e cercheremo di dare una risposta a questa domanda.

La dimensione  dell’area di SWAP come di qualsiasi altro parametro della macchina va deciso a seconda di molti aspetti:

  • che tipo di ram si utilizza e quali son le caratteristiche della scheda madre;
  • quali sono le prestazioni in lettura scrittura sul disco;
  • che utilizzo facciamo della macchina.

Detto così sembra che sia un casino incredibile ma vediamo meglio la questione.

Intanto partirei dalle indicazioni che un sistema enterprice come RedHat da sulla questione che indicaSWAP-dimensione-REDHAT come nn sempre corretta l’impostazione di dimensionare l’area di SWAP doppia rispetto alla RAM. e fa una chiara distinzione se la macchina deve supportare l’ibernazione o meno.

Noi solitamente ci occupiamo di server e quindi questa distinzione nn la facciamo ma in sostanza funziona così…quando un pc entra in ibernazione scrive tutto quello che ha in RAM in quel momento nella partizione di SWAP o se nn ha spazione nel file system vero e proprio.

Per quel che riguarda i server, Red Hat, indica che la partizione di  SWAP va dimensionata secondo la tabella… ma son dimensioni tassative?

In realtà anche i dati della tabella proposti, come indica la stessa RedHat sono soggetti a delle variazioni e possono essere cambiati a seconda dei parametri della macchina e dell’utilizzo che questa deve fare.  Ad esempio avere un sistema con una RAM sovradimensionata per il carico di lavoro che deve fare la macchina potrebbe portarci viceversa ad avere un’area di SWAP piccola.

Se ho dei dischi con un’area di storage molto molto lenta allora dare molto spazio alla SWAP potrebbe non portare a nessun beneficio, mentre avre uno storage ad esempio con delle performance da SSD mi può indirizzare a creare un’area di SWAP più grande dell’indicato per poter caricare maggiormente la macchina.

In ogni caso quello che posso consigliare, qualora non sia noto a priori il carico della macchina o la funzione finale di questa di seguire le linee guida indicate e tenere una zona di storage libera da partizionamento che potrebbo andare a configurare in un secondo momento in base alle analisi sulle performance che posso essere fatte quando la macchina è in uso.

Intanto come vedremmo in un prossimo articolo la modifica dello spazio di SWAP è possibile.

 

 

È 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.

Una risposta

  1. […] spiegato precedentemente nel’articolo “Tutto quello che c’è da sapere sulla SWAP dei sistemi Linux” l’area di SWAP estende la capacità della memoria volatile (RAM)  complessiva del […]

Lascia un commento