avr 14

Ce n’est pas l’habitude de ce blog, mais lors d’une install party nous avons découvert un bug assez gênant dans Htop. Celui-ci est en effet incapable de définir correctement le nombre de processus en cours, les données affichées sont totalement incohérentes. Il est assez simple de s’en rendre compte :

  • Lancez Htop et regardez le nombre de processus lancés.
  • Ensuite, lancez simplement top.
  • Pour finir, faites un simple ps -e | wc -l dans votre terminal.

Comme vous pouvez le voir, les valeurs renvoyés par top et la commande ps -e | wc -l sont équivalentes, ce qui n’est pas le cas de Htop !

Au moment où j’ecris ces lignes le resultat sont les suivant sur mon desktop :

  • htop : 121
  • top : 90
  • ps -e | wc -l : 90

htop

Le bug a été reproduit sous Archlinux, Debian, Ubuntu et Slitaz

Bien sur ce bug est déjà signalé, je profite donc simplement de ce billet pour faire un appel à l’aide.  Si par chance une personne compétente peut contribuer à la résolution de ce bug, ce serait une très bonne chose ! Surtout que cet utilitaire est utilisé par beaucoup …

Liens :

écrit par David Lopes Ferreira

14 commentaires à “Htop se mélange les pinceaux !”

  1. Tuxargon Dit:

    Chez moi c’est le contraire (htop affiche moins que top) :
    htop : 60
    top : 74

  2. Ricard Dit:

    Ha, chez moi j’ai respectivement 56, 32 et 10 sous ArchLinux. :)

  3. WeedFast Dit:

    @Ricard : Bizarre que top et ps -e | wc -l donnent des valeurs aussi éloignées l’une de l’autre. 82 et 83 à l’instant, les commandes étant lancées à la suite dans le mếme terminal.

  4. Ricard Dit:

    Y a un bug apparement avec ps:
    « Warning: bad ps syntax, perhaps a bogus ‘-’? See http://procps.sf.net/faq.html »
    Je regarde ça de plus près.

  5. ianux Dit:

    Je suis rassuré de ne pas être le seul. Htop me renvoie plus de 60(!) instances de console-kit-daemon sous Archlinux. Ça pollue un peu l’affichage…

  6. WeedFast Dit:

    @Ricard : Un simple man ps suffira je pense. Car apparemment ps utilise différentes syntaxes d’options selon le système utilisé.

    Si une personne peut préciser d’avantage… :)

    En lisant vos commentaires, j’ai l’impression que 90% de mes lecteurs sont sous ArchLinux…

  7. mr_pouit Dit:

    À mon avis, ce n’est pas un bug. Pour obtenir la même chose que top, il suffit de cacher les threads, sauf ceux du kernel :
    * jouer avec ‘H’ et ‘K’ dans l’interface
    * ou ajouter hide_threads=1, hide_kernel_threads=0 et hide_userland_threads=1 dans le .htoprc.

  8. Spip Dit:

    Je pense que Mr Puit a raison.

    sur mandriva cooker
    top > 111
    htop > 111 avec userland thread coché et kernel décoché
    ps aux (ou ps -e) > 114

  9. WeedFast Dit:

    @mr_pouit : En effet cela fonctionne mais alors pourquoi tant de doublons dans l’affichage des processus ?

    Et il est dommage de devoir modifier un fichier de configuration juste pour avoir des résultats similaires à ps.

  10. mr_pouit Dit:

    Parce que par défaut il compte les « processus légers » (threads). Tu peux les voir dans /proc//task/*.

  11. mr_pouit Dit:

    /proc/<pid>/task/* pardon

  12. Ricard Dit:

    @Weedfast: Non, ce n’était pas un problème d’options de PS (sous Arch, on installe depuis les sources)
    C’était juste un problème d’alias dans mon .zshrc (ps=ps -x).

  13. Faelar Dit:

    mr_prouit à raison, c’est juste une histoire de configuration.

  14. Liens en vrac #6 | Pressenux Dit:

    [...] Htop se mélange les pinceaux : un bug assez gênant découvert sur Htop. [...]

Laisser une Réponse