Provided by: manpages-fr-extra_20151231_all bug

NOM

       OPENSSL_instrument_bus, OPENSSL_instrument_bus2 - Instrumenter les références au bus
       mémoire

SYNOPSIS

        #ifdef OPENSSL_CPUID_OBJ
        size_t OPENSSL_instrument_bus (int *vector, size_t num);
        size_t OPENSSL_instrument_bus2(int *vector, size_t num, size_t max);
        #endif

DESCRIPTION

       De façon empirique, les délais de références à la mémoire primaire sont soumis à des
       variations irrégulières, apparemment non déterministes. Les sous-routines en question
       instrumentent ces références dans le but de rassembler de l’entropie pour le générateur de
       nombres aléatoires. De façon à la lier au bus, une instruction « flush cache line » est
       utilisée entre les mesures. De plus, des mesures sont ajoutées aux éléments vector de
       façon atomique ou imbriquée, ce qui devrait contribuer à ajouter du bruit aux systèmes
       multiprocesseurs. Cela signifie également que vector[num] devrait être vidée lors de
       l’appel (si le but est de récupérer les véritables valeurs de mesure).

       OPENSSL_instrument_bus() réalise num mesures et enregistre le nombre de cycles
       oscillatoires pris par chaque mesure.

       OPENSSL_instrument_bus2() de son côté accumule les mesures consécutives qui ont la même
       valeur, c’est-à-dire de façon à enregistrer la durée des périodes quand les valeurs de
       mesure semblent déterministes. La sous-routine réalise au plus max mesures en essayant de
       remplir le vector[num], avec la valeur max à 0 signifiant « autant que nécessaire ».

VALEUR DE RETOUR

       Une valeur de retour nulle indique que le processeur n’est pas capable de réaliser la
       comparaison, parce que le compteur d’oscillations ou « flush cache line » ne sont pas
       disponibles sur la plate-forme actuelle. Pour référence, sur x86, « flush cache line » a
       été introduit avec les extensions SSE2.

       Sinon, le nombre de valeurs enregistrées est renvoyé.

TRADUCTION

       La traduction de cette page de manuel est maintenue par les membres de la liste
       <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de
       traduction par un rapport de bogue sur le paquet manpages-fr-extra.