.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "fr::crypto::OPENSSL_instrument_bus 3SSL" .TH fr::crypto::OPENSSL_instrument_bus 3SSL "2015-12-31" "1.0.2a 1.0.2c" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NOM" .IX Header "NOM" OPENSSL_instrument_bus, OPENSSL_instrument_bus2 \- Instrumenter les références au bus mémoire .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fB #ifdef \s-1OPENSSL_CPUID_OBJ\s0\fR \fBsize_t OPENSSL_instrument_bus (int *\fR\fIvector\fR\fB, size_t\fR \fInum\fR\fB);\fR \fBsize_t OPENSSL_instrument_bus2(int *\fR\fIvector\fR\fB, size_t\fR \fInum\fR\fB, size_t\fR \fImax\fR\fB);\fR \fB#endif\fR .SH "DESCRIPTION" .IX Header "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 \fIvector\fR de façon atomique ou imbriquée, ce qui devrait contribuer à ajouter du bruit aux systèmes multiprocesseurs. Cela signifie également que \&\fIvector\fR\fB[\fR\fInum\fR\fB]\fR devrait être vidée lors de l’appel (si le but est de récupérer les véritables valeurs de mesure). .PP \&\fBOPENSSL_instrument_bus\fR() réalise \fInum\fR mesures et enregistre le nombre de cycles oscillatoires pris par chaque mesure. .PP \&\fBOPENSSL_instrument_bus2\fR() de son côté \fBaccumule\fR 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 \fImax\fR mesures en essayant de remplir le \&\fIvector\fR\fB[\fR\fInum\fR\fB]\fR, avec la valeur \fImax\fR à \fB0\fR signifiant « autant que nécessaire ». .SH "VALEUR DE RETOUR" .IX Header "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 \&\s-1SSE2.\s0 .PP Sinon, le nombre de valeurs enregistrées est renvoyé. .SH "TRADUCTION" .IX Header "TRADUCTION" La traduction de cette page de manuel est maintenue par les membres de la liste . Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.