Provided by: manpages-it_3.73-2_all bug

NAME

       adjtimex - regola l'orologio del kernel

SINTASSI

       #define _BSD_SOURCE      /* Vedi feature_test_macros(7) */
       #include <sys/timex.h>

       int adjtimex(struct timex *buf);

DESCRIZIONE

       Linux  usa  l'algoritmo  di correzione dell'orario di David L. Mill (vedere RFC 1305).  La
       chiamata di sistema adjtimex() legge e imposta opzionalmente i parametri di correzione per
       questo  algoritmo.   Accetta  un puntatore a una struttura timex, aggiorna i parametri del
       kernel in base ai valori dei campi e  restituisce  la  medesima  struttura  con  i  valori
       correnti del kernel.  La struttura è dichiarata nel seguento modo:

           struct timex {
               int modes;           /* selettore modalità  */
               long offset;         /* spostamento orario (usec) */
               long freq;           /* spostamento frequenza (scaled ppm) */
               long maxerror;       /* errore massimo (usec) */
               long esterror;       /* errore stimato (usec) */
               int status;          /* stato/comando orologio */
               long constant;       /* costante di tempo pll */
               long precision;      /* precisione orologio (usec) (sola lettura) */
               long tolerance;      /* tolleranza frequenza orologio (ppm)
                                       (sola lettura) */
               struct timeval time; /* orario attuale (sola lettura) */
               long tick;           /* usec tra i battiti dell'orologio */
           };

       Il  campo  modes  determina  quale  eventuale  parametro  impostare.   Può  contenere  una
       combinazione bitwise-or (OR bit-a-bit) di zero o più dei seguenti bit:

           #define ADJ_OFFSET            0x0001 /* spostamento orario */
           #define ADJ_FREQUENCY         0x0002 /* spostamento frequenza */
           #define ADJ_MAXERROR          0x0004 /* errore tempo massimo */
           #define ADJ_ESTERROR          0x0008 /* errore tempo stimato */
           #define ADJ_STATUS            0x0010 /* stato orologio */
           #define ADJ_TIMECONST         0x0020 /* costante di tempo pll */
           #define ADJ_TICK              0x4000 /* valore battito */
           #define ADJ_OFFSET_SINGLESHOT 0x8001 /* vecchio adjtime() */

       Gli utenti ordinari sono limitati al valore zero  per  modes.   Solo  il  superutente  può
       impostare qualunque parametro.

VALORE RESTITUITO

       In caso di successo, adjtimex() restituisce lo stato dell'orologio:

           #define TIME_OK   0 /* orologio sincronizzato */
           #define TIME_INS  1 /* inserire secondo intercalare */
           #define TIME_DEL  2 /* cancellare secondo intercalare */
           #define TIME_OOP  3 /* secondo intercalare in corso */
           #define TIME_WAIT 4 /* secondo intercalare avvenuto */
           #define TIME_BAD  5 /* orologio non sincronizzato */

       Se fallisce, adjtimex() restituisce -1 e imposta errno.

ERRORI

       EFAULT buf non punta ad una zona di memoria scrivibile.

       EINVAL Si  è  tentato di impostare buf.offset ad un valore fuori dall'intervallo -131071 e
              +131071, o di impostare buf.status ad un  valore  diverso  da  quelli  elencati  in
              precedenza,  o  di  impostare  buf.tick  ad  un  valore non incluso nell'intervallo
              900000/HZ e 1100000/HZ, dove HZ è la frequenza dell'interrupt del timer di sistema.

       EPERM  buf.modes non è zero e il chiamante non  ha  privilegi  sufficienti.   In  Linux  è
              richiesta l'abilitazione a CAP_SYS_TIME.

CONFORME A

       adjtimex()  è  specifico  di Linux e non dovrebbe essere usato in programmi pensati per la
       portabilità .  Vedere adjtime(3) per un maggiormente portabile, ma meno flessibile  metodo
       di correzione dell'orologio di sistema.

VEDERE ANCHE

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

COLOPHON

       Questa  pagina  fa  parte del rilascio 3.73 del progetto Linux man-pages.  Una descrizione
       del progetto, le istruzioni per la segnalazione  degli  errori,  e  l'ultima  versione  di
       questa pagina si trova su http://www.kernel.org/doc/man-pages/.

       La versione italiana fa parte del pacchetto man-pages-it v. 3.73, a cura di: ILDP "Italian
       Linux Documentation Project" http://www.pluto.it/ildp
       Per    la     traduzione     in     italiano     si     può     fare     riferimento     a
       http://www.pluto.it/ildp/collaborare/
       Segnalare eventuali errori di traduzione a ildp@pluto.it