Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       adjtimex - Régler l'horloge du noyau (kernel clock)

SYNOPSIS

       #include <sys/timex.h>

       int adjtimex(struct timex *buf);

DESCRIPTION

       Linux  utilise  l'algorithme  d'ajustement d'horloge de David L. Mills (RFC 1305). L'appel
       système adjtimex() lit, et écrit  éventuellement  les  paramètres  d'ajustement  pour  cet
       algorithme.  Il  utilise  un  pointeur  sur  une  structure  timex  pour mettre à jour les
       paramètres du noyau avec les valeurs de ses champs, et renvoyer la même structure avec les
       valeurs actuelles du noyau. La structure est déclarée comme suit :

           struct timex {
               int modes;           /* choix du mode */
               long offset;         /* décalage temporel (usec) */
               long freq;           /* différence de fréquence (scaled ppm) */
               long maxerror;       /* erreur maximale (usec) */
               long esterror;       /* erreur estimée (usec) */
               int status;          /* commande/état de l'horloge */
               long constant;       /* constante de temps pll */
               long precision;      /* précision de l'horloge (usec)
                                       (lecture seule) */
               long tolerance;      /* tolérance sur la fréquence de
                                       l'horloge (ppm) (lecture seule)
               struct timeval time; /* heure actuelle (lecture seule) */
               long tick;           /* microsecondes entre les tops
                                       de l'horloge */
           };

       Le  champ  modes  détermine  les  paramètres éventuels à écrire. Il contient un OU binaire
       « | » entre les valeurs suivantes :

           #define ADJ_OFFSET            0x0001 /* décalage d'heure */
           #define ADJ_FREQUENCY         0x0002 /* décalage de fréquence */
           #define ADJ_MAXERROR          0x0004 /* erreur temporelle maximale */
           #define ADJ_ESTERROR          0x0008 /* erreur temporelle estimée */
           #define ADJ_STATUS            0x0010 /* état de l'horloge */
           #define ADJ_TIMECONST         0x0020 /* constante de temps pll */
           #define ADJ_TICK              0x4000 /* valeur du top */
           #define ADJ_OFFSET_SINGLESHOT 0x8001 /* ancien adjtime() */

       Les utilisateurs normaux sont limités à une valeur de mode nulle, seul le superutilisateur
       peut écrire les paramètres.

VALEUR RENVOYÉE

       S'il réussit, adjtimex() renvoie l'état de l'horloge :

           #define TIME_OK   0 /* horloge synchronisée */
           #define TIME_INS  1 /* ajout d'une seconde */
           #define TIME_DEL  2 /* suppression d'une seconde */
           #define TIME_OOP  3 /* seconde d'ajustement en cours */
           #define TIME_WAIT 4 /* seconde d'ajustement terminée */
           #define TIME_BAD  5 /* horloge non synchronisée */

       En cas d'échec adjtimex() renvoie -1 et remplit errno.

ERREURS

       EFAULT buf pointe en dehors de l'espace d'adressage accessible en écriture.

       EINVAL Une  tentative  est faite de remplir buf.offset en dehors de l'intervalle -131071 à
              +131071, ou de mettre buf.status a une valeur autre que celles  listées  ci‐dessus,
              ou  buf.tick  en  dehors  de  l'intervalle  900000/HZ  à  1100000/HZ,  où HZ est la
              fréquence d'interruption de l'horloge système.

       EPERM  buf.mode est non nul, et l'appelant n'a pas suffisamment de privilèges. Sous Linux,
              la capacité CAP_SYS_TIME est nécessaire.

CONFORMITÉ

       adjtimex()  est  spécifique  à  Linux,  et  ne  doit  pas être employé dans des programmes
       destinés à être portés sur d'autres systèmes. Consultez adjtime(3) pour une  méthode  plus
       portable, mais moins flexible, de configurer l'horloge système.

VOIR AUSSI

       settimeofday(2), adjtime(3), capabilities(7), time(7), adjtimex(8)

COLOPHON

       Cette  page  fait partie de la publication 3.65 du projet man-pages Linux. Une description
       du projet et des  instructions  pour  signaler  des  anomalies  peuvent  être  trouvées  à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis    2010,    cette   traduction   est   maintenue   à   l'aide   de   l'outil   po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du  projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe    Blaess    <http://www.blaess.fr/christophe/>   (1996-2003),   Alain   Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>  ou  par  un  rapport  de  bogue   sur   le   paquet
       manpages-fr.

       Vous  pouvez  toujours  avoir  accès  à la version anglaise de ce document en utilisant la
       commande « man -L C <section> <page_de_man> ».