• # FreeBSD & NetBSD

    Posté par  (site web personnel) . Évalué à 4.

    Avec (Free|Net|Open)BSD : « sysctl -n hw.ncpu » (testé de première main sous les deux OS du sujet, marche d'après la page de man sous Open). C'est probablement la même méthode que sous Mac, MacOS X ayant des racines dans ces deux systèmes.
  • # SNMP

    Posté par  . Évalué à 1.

    A part SNMP, je ne pense pas qu'il existe de méthode portable :
    $ snmpwalk -v 1 -c public \<host\> hrProcessorTable | wc -l
    • [^] # Re: SNMP

      Posté par  (site web personnel) . Évalué à 2.

      facter [http://reductivelabs.com/products/facter/] est fait pour ce genre de choses. Mais il faut l'installer...

      $ facter | grep processor
      physicalprocessorcount => 1
      processor0 => Intel(R) Atom(TM) CPU 230 @ 1.60GHz
      processor1 => Intel(R) Atom(TM) CPU 230 @ 1.60GHz
      processorcount => 2
      $ facter physicalprocessorcount
      1
    • [^] # Re: SNMP

      Posté par  (site web personnel) . Évalué à 2.

      snmpwalk n'a pas l'air d'etre un truc installe en standard.
      Il me faut quelque chose de plus standard que ca,
      qui est toujours la par defaut quoi.
  • # Rosetta

    Posté par  . Évalué à 1.

    tu trouvera sûrement ton bonheur ici :

    http://bhami.com/rosetta.html
  • # Generique

    Posté par  (site web personnel) . Évalué à 4.

    En C j'aurais fait sysconf (_SC_NPROCESSORS_ONLN), ca semble fonctionner au moins sous Linux, MacOS X, FreeBSD, AIX, OSF/1, Solaris, Cygwin et Haiku.

    En shell (sous Linux du moins, je ne sais pas si cette commande est standard) ça donne getconf _NPROCESSORS_ONLN
    • [^] # Re: Generique

      Posté par  . Évalué à 1.

      Moi qui cherchais justement comment le faire en C, merci.
    • [^] # Re: Generique

      Posté par  (site web personnel) . Évalué à 1.

      Merci,

      As-tu teste sous toutes les plateformes que tu dis ou est-ce
      que tu dis ca a cause de la doc?

      Sur le Net, pas mal de gens ne comprennent pas la doc, qui
      dit que sysconf est bien un appel systeme qui marche partout.
      Le probleme pour nous est en fait que la variable SC_NPROCESSORS_ONLN
      n'est, elle, pas du tout presente partout.

      Tu peux tester avec tous ces systemes, si tu les as sous la main
      en une ligne de Python:

      python -c "import os ; print str(os.sysconf(\"SC_NPROCESSORS_ONLN\"))"

      Merci de me confirmer si ca marche sur tant de plateformes que ca.
      Une amie m'a confirme que ca ne marche pas sous Mac OS X, car
      Mac OS ne connait pas cette variable.

      Merci,
      F.

Suivre le flux des commentaires

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