Ogni software, per essere eseguito, ha bisogno di RAM e ogni  hardware che consente l’esecuzione di software ne ha una certa quantità a disposizione.

La RAM (Random Access Memory) è una memoria volatile – che perde il contenuto quando le viene tolta l’alimentazione – utilizzata da qualsiasi software e sistema operativo per funzionare perché li si parcheggiano un sacco di dati relativi all’esecuzione stessa.

Ma perché non parcheggiare i dati sul mio Hard Disk? Perché uno dei grandi pregi della RAM è la velocità di lettura e scrittura nettamente superiore a quella dell’hard disk.

La dotazione di RAM dipende dall’hardware che abbiamo a disposizione, giusto per fare un esempio la buona parte dei pc che troviamo nella grande distribuzione, per uso generico, ad oggi ne possiede 8GB. Ma se ogni software in esecuzione sul nostro hardware ne consuma un pò, va da se che se ho troppi software che “girano” contemporaneamente…la RAM prima o poi finirà! E cosa succede? Si inchioda tutto! Il processore non riesce più ad eseguire il mio software perché le informazioni necessarie non sa più dove scriverle.

Per questo motivo ogni sistema operativo ha un’area apposta sulla propria unità di memorizzazione di massa (hard disk, SSD, microSD….dipende dall’hardware) che ci aiuta se e quando la RAM finisce. Windows ad esempio fa un file che si chiama “pagefile” e ne gestisce automaticamente la dimensione, linux ha una apposita partizione che si chiama “SWAP” che si battezza in fase di installazione del sistema operativo (anche se poi si può modificare successivamente) e così via.

Raspberry, uno dei più famosi SBC (Single Board Computer), sulla distribuzione “raspbian” che non è altro che un Linux/Debian modificato, usa anch’essa un file. Modificare lo swap nella Raspberry ci può tornare utile in caso ci siano software che saltuariamente andrebbero a finire ed oltrepassare il totale di RAM a disposizione che, fino alla versione 3 era di 1 misero GB, ora con la 4 abbiamo 1-2-4 GB che ci danno sicuramente più respiro.

Le impostazioni iniziali sono settate a 100MB e sono molto pochi, pertanto possiamo andare ad aumentare questo valore. Teniamo sempre in considerazione che quest’ultimo equivarrà a spazio fisico occupato sul supporto di memoria, dobbiamo pertanto sempre fare i conti con quanto ne abbiamo a disposizione.

NOTE BENE: ricorda che

  1. scrivere nello swap comunque rallenta enormemente le prestazioni
  2. nel caso di microSD bisogna anche fare i conti con i cicli di lettura e scrittura che sono limitati

Vediamo ora come si fa a modificare questo valore nella raspberry:

  1. collegarsi in terminale via SSH
  2. digitare: sudo nano /etc/dphys-swapfile
  3. modificare il valore alla riga CONF_SWAPSIZE portandolo al valore disiderato (ES: CONF_SWAPSIZE=1000 , che significa 1GB)
  4. salvare con CTRL+X , quindi y
  5. infine riavviare il servizio digitando: /etc/init.d/dphys-swapfile restart

Tutto qui, ora abbiamo a disposizione 1GB di cuscinetto per qualche applicazione particolarmente esosa.