Provided by: manpages-de-dev_0.5-4.1ubuntu1_all bug

NAME

       adjtimex - Einstellen der Kerneluhr

ÜBERSICHT

       #include <sys/timex.h>

       int adjtimex(struct timex *buf);

BESCHREIBUNG

       Linux  verwendet  David Mills Algorithmus zur Justierung der Systemuhr.
       adjtimex liest und setzt auf Wunsch  Einstellungsparameter  für  diesen
       Algorithmus.

       adjtimex  nimmt  einen  Zeiger  auf  eine  Struktur timex, aktualisiert
       Kernelparameter aus den Feldwerten, und gibt die gleiche  Struktur  mit
       aktuellen Werten zurück.  Diese Struktur ist wie folgt deklariert:

              struct timex
              {
                  int mode;            /* mode selector */
                  long offset;         /* Zeitoffset (usek) */
                  long frequency;      /* Frequenzoffset (skalierte ppm) */
                  long maxerror;       /* maximaler Fehler (usek) */
                  long esterror;       /* geschätzter Fehler (usek) */
                  int status;          /* Uhrkommando/-status */
                  long time_constant;  /* pll Zeitkonstante */
                  long precision;      /* Uhrpräzision (usec) (nur lesbar) */
                  long tolerance;      /* Uhrfrequenztoleranz (ppm) (nur lesbar) */
                  struct timeval time; /* (nur lesbar) */
                  long tick;           /* usek zwischen Uhrticks */
              };

       Das  Feld  mode  bestimmt, welche Parameter, falls vorhanden, zu setzen
       sind.  Es darf eine bitweise Oderverknüpfung von  Null  oder  mehr  der
       folgenden Bits enthalten:

              #define ADJ_OFFSET            0x0001 /* Zeitoffset */
              #define ADJ_FREQUENCY         0x0002 /* Frequenzoffset */
              #define ADJ_MAXERROR          0x0004 /* maximaler Zeitfehler */
              #define ADJ_ESTERROR          0x0008 /* geschätzter Zeitfehler */
              #define ADJ_STATUS            0x0010 /* Uhrstatus */
              #define ADJ_TIMECONST         0x0020 /* pll Zeitkonstante */
              #define ADJ_TICK              0x4000 /* Tickwert */
              #define ADJ_OFFSET_SINGLESHOT 0x8001 /* altmodisches adjtime */

       Gewöhnliche  Benutzer  sind  eingeschränkt auf einen Nullwert für mode.
       Nur der Superuser darf Parameter setzen.

RÜCKGABEWERT

       Bei Erfolg gibt adjtimex den Wert von buf.status zurück:

              #define TIME_OK  0 /* Uhr synchronisiert */
              #define TIME_INS 1 /* füge Schaltsekunde ein */
              #define TIME_DEL 2 /* lösche Schaltsekunde */
              #define TIME_OOP 3 /* Schaltsekunde in Betrieb */
              #define TIME_BAD 4 /* Uhr nicht synchronisiert */

       Im Fehlerfall gibt adjtimex -1 zurück und setzt errno.

FEHLER

       EFAULT buf zeigt nicht auf beschreibbaren Speicher.

       EPERM  buf.mode  ist  nicht  Null  und  der  Benutzer  ist  nicht   der
              Superuser.

       EINVAL Ein  Versuch  wurde  unternommen  buf.offset zu setzen auf einen
              Wert außerhalb  des  Bereichs  von  -131071  bis  +131071,  oder
              buf.status  auf  einen Wert zu setzen, der nicht oben aufgeführt
              ist, oder buf.tick auf einen Wert  außerhalb  des  Bereichs  von
              900000/HZ    bis    1100000/HZ   zu   setzen,   wobei   HZ   die
              Systemtimerinterupfrequenz ist.

SIEHE AUCH

       settimeofday(2).