2009-09-10 8 views
2

J'ai un double processeur Linux (SUSE 10) 64 bits. Quand j'exécute mon processus, il utilise environ 4 G de mémoire virtuelle. Seule la 3G est la mémoire résidente. Reste autour de la mémoire 9G est libre. Comment charger ce 1 G également en RAM? Pourquoi est-il encore dans l'espace de swap pourquoi le noyau ne peut pas charger ceci en RAM quand toute la RAM est disponible.Échange d'espace sous Linux 64 bits

Rahul

Répondre

1

Le noyau peut charger les données dans la mémoire. Cependant, quand ils ne sont pas utilisés, il choisit de les écrire dans le fichier d'échange.

Si vous voulez absolument les données en mémoire, vous devez soit désactiver tous les fichiers d'échange (en utilisant swapoff (8)), ou verrouiller les pages spécifiques en mémoire, en utilisant mlock ou mlockall.

Questions connexes