On Mon, May 05, 2003 at 06:17:20PM +0200, Gilles Stragier wrote: > total: used: free: shared: buffers: cached: > Mem: 527224832 515670016 11554816 0 56008704 120459264 > Swap: 246747136 128032768 118714368 > MemTotal: 514868 kB > MemFree: 11284 kB [...] > Cached: 108128 kB [...] > > Il semblerait qu'une bonne partie de ma memoire soit utilisée pour les > buffer et une cache. A quoi sert cette cache ? Sont-ce des valeurs > normales, et puis-je les changer ? (180 Mb inutilisables si c'est le > cas, c'est beaucoup !)
C'est normal, ça ne peut pas (facilement) se changer, et tu ne veux sans doute pas le changer non plus. Ces 180Mb ne sont pas inutilisables, ils sont utilisés par les applications que tu as utilisées récement. Linux "cache" quand il conserve en RAM des fichiers, au cas où l'application voudrait les réutiliser. Par exemple, si tu édites un fichier A, il est chargé en mémoire. Si ensuites tu édites un fichier B, l'éditeur typiquement "oublie" le fichier, mais Linux le conserve tout de même en mémoire. Si ensuite tu reviens au fichier A, il va s'ouvrir de suite car il est toujours en RAM. Par contre, si la RAM devient trop étroite pour les applications en cours, Linux "oubliera" le fichier A pour donner la RAM à ces application (c'est pourquoi gkrellm considère la mémoire "cache" comme "libre". Mais la mémoire "MemFree" indiquée dans /proc/meminfo est la RAM vraiment libre: sans aucune utilisation. Incidement, la RAM vraiment libre ne sert absolument à rien, c'est pour ça que Linux l'utilise pour le cache). C'est ainsi que tes applications se retrouvent dans le cache: Linux pense qu'il vaut mieux donner toute la RAM possible aux applications qui tournent en ce moment, plutôt que de conserver en RAM des applications qui n'ont pas été utilisées depuis longtemps. Avantage: les applications vont tourner plus vite (moins besoin d'accès aux disques); inconvénient: les applications qu'on n'utilise pas beaucoup vont être swappées, et il faudra les recharger plus tard. A demain, /Y -- On recherche: Chat de Schroedinger. Grosse récompense. Mort ou vif.