Page cache in Linux

Analizziamo adesso la page cache in Linux (qui). In Linux la page cache è unica per tutti i trasferimenti tra disco e memoria, compresi quelli dovuti alla gestione della memoria virtuale (una sorte di page buffering) Questa permette due vantaggi:

  • condensare le scritture
  • sfruttare la località dei riferimenti (si risparmiano accessi a disco)

Con questa si scrive su disco quando:

  • è rimasta poca memoria → una parte della page cache è ridestinata ad un uso diretto dei processi (si può allargare e restringere in base alle richieste)
  • quando l’età delle pagine “sporche” va sopra una certa soglia

Non è inoltre presente una politica separata di replacement: è infatti la stessa usata per il rimpiazzo delle pagine (la page cache è paginata, e le sue pagine sono rimpiazzate con l’algoritmo visto per la gestione della memoria)