Forum Programmation.shell utilisation swap

Posté par  .
Étiquettes : aucune
0
24
jan.
2006
Bonjour,

Je cherche à récupérer quels processus sont actuellement en swap. J'ai essayé ps et top mais sans succès. Je suis sous un noyau 2.6 si ça influence quelque chose.


Merci.
  • # Pourtant avec top...

    Posté par  . Évalué à 2.

    On peut. Il suffit d'ajouter le champ SWAP, en tapant 'f', 'p' et 'entrée'.

    'h' pour avoir l'aide.
  • # Re: utilisation swap

    Posté par  . Évalué à 2.

    Un process est rarement complètement swappé, généralement seule une partie plus ou moins importante de sa mémoire est transférée sur disque.

    Pour ps: l'option 'l' (L minuscule) donne 2 informations pour chaque process:
    VSZ : Virtual size = taille mémoire virtuelle totale du process
    RSS : Resident Set Size = portion de la mémoire résidente en mémoire
    Tu obtiens la portion de mémoire swappée de chaque process = VSZ-RSS

    top donne les mêmes informations nommées:
    VIRT équivalent à VSZ de ps
    RES équivalent à RSS de ps
    • [^] # Re: utilisation swap

      Posté par  . Évalué à 2.

      Attention !!! c'est faux dans beaucoup de cas, en voici un:

      Typiquement les appli qui font des mallocs et qui ne les touchent pas sont légion.
      VSZ ou VIRT c'est la taille de l'espace virtuel alloué sauf qu'il n'est pas nécessairement "touché".

      vi malloc.c

      #include <malloc.h>
      main()
      {
      int *a;
      a=(int*)malloc(sizeof(int)*300000000);
      while(1) {
      sleep(1);
      }
      }

      swapoff -a
      gcc malloc.c -o malloc

      /tmp/malloc &

      ps auxww

      15145 0.0 0.0 1174292 344 pts/1 S 10:01 0:00 /tmp/malloc


      Ici mon Virt vaut 1174292 mon résident vaut 344 et mon swap est à 0.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.