| Hauptindex | Abschnitt 2 | Optionen |
int adjtimex(struct timex *buf);
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.
#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.
| 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. |
| 6. Oktober 1996 | ADJTIMEX (2) | Linux 1.2.4 |
| Hauptindex | Abschnitt 2 | Optionen |
Bitte richten Sie Ihre Kommentare zu diesem Handbuch Seite Service, Ben Bullock. Privacy policy.