Provided by: manpages-de-dev_4.26.0-1_all 

BEZEICHNUNG
adjtime - Die Zeit zur Synchronisierung der Systemuhr korrigieren
BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT
#include <sys/time.h>
int adjtime(const struct timeval *Delta, struct timeval *Altesdelta);
Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):
adjtime():
Seit Glibc 2.19:
_DEFAULT_SOURCE
Glibc 2.19 und älter:
_BSD_SOURCE
BESCHREIBUNG
Die Funktion adjtime() passt die Systemuhr (wie mittels gettimeofday(2) zurückgeliefert) graduell an. Der
Zeitumfang, mit dem die Uhr angepasst werden soll, wird in der Struktur festgelegt, auf die Delta zeigt.
Diese Struktur hat die folgende Form:
struct timeval {
time_t tv_sec; /* Sekunden */
suseconds_t tv_usec; /* Mikrosekunden */
};
Falls die Anpassung in Delta positiv ist, dann wird die Systemuhr nur um einen kleinen Prozentsatz (d.h.
jede Sekunde durch Hinzufügen einer kleinen Zeiteinheit zum Uhrenwert) beschleunigt, bis die Anpassung
abgeschlossen ist. Falls die Anpassung in Delta negativ ist, wird die Uhr auf eine ähnliche Art
verlangsamt.
Falls eine Uhranpassung von einem früherern Aufruf von adjtime() breits zum Zeitpunkt eines späteren
Aufrufs von adjtime() in Arbeit ist und Delta beim späteren Aufruf nicht NULL ist, dann wird die frühere
Anpassung gestoppt, aber der bereits durchgeführte Anteil der Anpassung wird nicht zurückgenommen.
Falls Altesdelta nicht NULL ist, dann wird der Puffer, auf den es zeigt, zur Rückgabe der Zeitmenge
verwandt, die von vorhergehenden, noch nicht abgeschlossenen Anpassungen verbleibt.
RÜCKGABEWERT
Bei Erfolg gibt die Funktion adjtime() 0 zurück. Bei einem Fehler wird -1 zurückgegeben und errno
gesetzt, um den Fehler anzuzeigen.
FEHLER
EINVAL Die Anpassung in Delta ist außerhalb des erlaubten Bereichs.
EPERM Der Aufrufende hat keine ausreichenden Privilegien zur Zeitanpassung. Unter Linux wird die
Capability CAP_SYS_TIME benötigt.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
┌───────────────────────────────────────────────────────────────────┬───────────────────────┬───────────┐
│ Schnittstelle │ Attribut │ Wert │
├───────────────────────────────────────────────────────────────────┼───────────────────────┼───────────┤
│ adjtime() │ Multithread-Fähigkeit │ MT-Sicher │
└───────────────────────────────────────────────────────────────────┴───────────────────────┴───────────┘
STANDARDS
Keine.
GESCHICHTE
4.3BSD, System V.
ANMERKUNGEN
Die von adjtime() vorgenommenen Anpassungen der Uhr werden so ausgeführt, dass die Uhr immer monoton
fortschreitet. Mit der Zeitanpassung durch adjtime() werden für bestimmte Anwendungen (z.B. make(1))
Probleme vermieden, die durch plötzliche positive oder negative Sprünge der Systemzeit hervorgerufen
werden könnten.
adjtime() ist zur Durchführung kleiner Anpassungen der Systemzeit gedacht. Die meisten Systeme
beschränken die in Delta mögliche Anpassung. In der Glibc-Implementierung muss Delta kleiner oder gleich
(INT_MAX / 1000000 - 2) und größer oder gleich (INT_MIN / 1000000 + 2) (2145 bzw. -2145 Sekunden auf
I386) sein.
FEHLER
Lange existierte ein Fehler, der bei der Angabe von Delta als NULL dazu führte, dass keine gültigen
Informationen über die ausstehenden Uhranpassungen in Altesdelta zurückgeliefert wurden. (In diesem Fall
soll adjtime() die ausstehende Uhranpassung ohne sie zu ändern zurückliefern.) Dieser Fehler wurde in
Systemen mit Glibc 2.8 oder neuer und Linux-Kernel 2.6.26 oder neuer behoben.
SIEHE AUCH
adjtimex(2), gettimeofday(2), time(7)
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
Mailingliste der Übersetzer.
Linux man-pages 6.9.1 2. Mai 2024 adjtime(3)