GET_NPROCS(3)

NOM
get_nprocs, get_nprocs_conf - Obtenir le nombre de processeurs

SYNOPSIS
#include <sys/sysinfo.h>

int get_nprocs(void);
int get_nprocs_conf(void);

DESCRIPTION
La fonction get_nprocs_conf() renvoie le nombre de processeurs configurés.

La fonction get_nprocs() renvoie le nombre de processeurs actuellement disponibles sur le système. Cela peut être inférieur au nombre renvoyé par get_nprocs_conf() parce que des processeurs pourraient être hors-lignes (par exemple sur des systèmes permettant le branchement à chaud).

VALEUR RENVOYÉE
conforme à la DESCRIPTION.

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
get_nprocs(), get_nprocs_conf() | Sécurité des threads | MT-Safe

CONFORMITÉ
Ces fonctions sont des extensions GNU.

NOTES
L'implémentation actuelle de ces fonctions est plutôt coûteuse, puisqu'elles ouvrent et parcourent des fichiers du système de fichiers /sys à chaque fois qu'elles sont appelées.

Les appels sysconf(3) suivants utilisent les fonctions documentées sur cette page pour renvoyer les mêmes renseignements.

    np = sysconf(_SC_NPROCESSORS_CONF);     /* processors configured */
    np = sysconf(_SC_NPROCESSORS_ONLN);     /* processors available */

EXEMPLES
L'exemple suivant montre une façon d'utiliser get_nprocs() et get_nprocs_conf().

    #include <stdlib.h>
    #include <stdio.h>
    #include <sys/sysinfo.h>
    int
    main(int argc, char *argv[])
    {
        printf("This system has %d processors configured and "
                "%d processors available.\n",
                get_nprocs_conf(), get_nprocs());
        exit(EXIT_SUCCESS);
    }

VOIR AUSSI
nproc(1)

COLOPHON
Cette page fait partie de la publication 5.13 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org> et David Prévot <david@tilapin.org> Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.