Provided by: manpages-fr-dev_4.21.0-2_all bug

__ppc_get_timebase(3)                Manuel des fonctions de la bibliothèque               __ppc_get_timebase(3)

NOM

       __ppc_get_timebase, __ppc_get_timebase_freq - Récupérer la valeur courante et la fréquence du Registre de
       Base Temporelle sur l'architecture Power.

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <sys/platform/ppc.h>

       uint64_t __ppc_get_timebase(void);
       uint64_t __ppc_get_timebase_freq(void);

DESCRIPTION

       __ppc_get_timebase()  lit  et  renvoie  la  valeur  courante  du  Registre  de  Base Temporelle alors que
       __ppc_get_timebase_freq() renvoie la fréquence à laquelle le Registre de Base Temporelle est mis à jour.

       Le Registre de Base Temporelle est un registre de 64 bits disponibles sur les processeurs  d'architecture
       Power.  Il  stocke  une valeur incrémentée de façon monotone et mise à jour à une fréquence qui dépend du
       système et qui peut être différente de celle du processeur.

VALEUR RENVOYÉE

       __ppc_get_timebase() renvoie un entier non signé de 64 bits qui représente la valeur courante du Registre
       de Base Temporelle.

       __ppc_get_timebase_freq() renvoie un entier non signé de 64 bits qui représente la fréquence  à  laquelle
       le Registre de Base Temporelle est mis à jour.

VERSIONS

       La  prise  en  charge  par  la  bibliothèque  GNU C  de  __ppc_get_timebase()  date  de  la glibc 2.16 et
       __ppc_get_timebase_freq() est disponible depuis la glibc 2.17.

STANDARDS

       Ces fonctions sont des extensions GNU non standard.

EXEMPLES

       Le programme suivant calcule le temps en microsecondes passé entre deux appels à __ppc_get_timebase().

   Source du programme

       #include <inttypes.h>
       #include <stdint.h>
       #include <stdio.h>
       #include <stdlib.h>
       #include <sys/platform/ppc.h>

       /* Valeur maximale du Registre de Base Temporelle : 2^60 - 1.
          Source: POWER ISA. */
       #define MAX_TB 0xFFFFFFFFFFFFFFF

       int
       main(void)
       {
           uint64_t tb1, tb2, diff;
           uint64_t freq;

           freq = __ppc_get_timebase_freq();
           printf("Fréquence de la Base Temporelle = %"PRIu64" Hz\n", freq);

           tb1 = __ppc_get_timebase();

           // Faire quelque chose ...

           tb2 = __ppc_get_timebase();

           if (tb2 > tb1) {
               diff = tb2 - tb1;
           } else {
               /* Traiter le dépassement du Registre de Base Temporelle. */
               diff = (MAX_TB - tb2) + tb1;
           }

           printf("Temps écoulé = %1.2f usecs\n",
                   (double) diff * 1000000 / freq);

           exit(EXIT_SUCCESS);
       }

VOIR AUSSI

       time(2), usleep(3)

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>,    David     Prévot
       <david@tilapin.org> et Grégoire Scano <gregoire.scano@malloc.fr>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General Public License
       version 3 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.

Pages du manuel de Linux 6.03                    5 février 2023                            __ppc_get_timebase(3)