time(2) System Calls Manual time(2) BEZEICHNUNG time - Zeit in Sekunden abfragen BIBLIOTHEK Standard-C-Bibliothek (libc, -lc) UBERSICHT #include time_t time(time_t *_Nullable tloc); BESCHREIBUNG time() gibt die Zeit als Anzahl der Sekunden seit dem Beginn der Unixzeit am 1.1.1970, 00:00:00 +0000 (UTC) an. Falls tloc nicht NULL ist, wird der Ruckgabewert auch im Speicher an der Stelle abgelegt, auf die tloc zeigt. RUCKGABEWERT Bei Erfolg wird die Zeit seit Beginn der Unixzeit in Sekunden zuruckgegeben. Tritt ein Fehler auf, wird ((time_t) -1) zuruckgegeben und errno gesetzt, um den Fehler anzuzeigen. FEHLER EOVERFLOW Die Zeit kann nicht als ein time_t-Wert dargestellt werden. Dies kann passieren, wenn ein Programm mit einem 32 bit time_t auf einem 64-bit-Kernel ausgefuhrt wird, wenn die Zeit 2038-01-19 03:14:08 UTC oder spater ist. Ist die Systemzeit in anderen Situationen ausserhalb des Bereichs von time_t ist das Verhalten allerdings undefiniert. EFAULT tloc zeigt ausserhalb Ihres verfugbaren Adressbereichs (siehe aber auch FEHLER). Auf Systemen, auf denen die C-Bibliothek-time()-Wrapper-Funktion eine von vdso(7) bereitgestellte Implementierung aufruft (so dass es keine Verbindung in den Kernel gibt), kann eine ungultige Adresse stattdessen ein SIGSEGV-Signal auslosen. VERSIONEN POSIX.1 definiert die Sekunden seit Anfang der Unixzeit mittels einer Formel, die die Anzahl der Sekunden zwischen einem bestimmten Zeitpunkt und dem Anfang der >>Unixzeit<< abschatzt. Diese Formel berucksichtigt die Tatsache, dass alle durch vier ohne Rest teilbaren Jahre Schaltjahre sind. Alle durch 100 ohne Rest teilbaren Jahre sind keine Schaltjahre, es sei denn, sie sind gleichzeitig durch 400 ohne Rest teilbar, dann sind es wiederum Schaltjahre. Dieser Wert entspricht nicht der tatsachlichen Anzahl an Sekunden zwischen dem angegebenen Zeitpunkt und dem Anfang der >>Unixzeit<<, weil Schaltsekunden nicht berucksichtigt werden und es nicht erforderlich ist, dass Systemuhren mit einer Standardreferenz synchronisiert werden. Linux-System folgen normalerweise der POSIX-Anforderung, dass dieser Wert Schaltsekunden ignoriert, so dass standardgerechte Systeme ihn konsistent interpretieren; siehe POSIX.1-2018 Rationale A.4.16. Anwendungen, die nach 2038 laufen sollen, sollten ABIs mit time_t breiter als 32 bit verwenden, siehe time_t(3type). Unterschiede C-Bibliothek/Kernel Auf einigen Architekturen wird eine Implementierung von time() in einem vdso(7) bereitgestellt. STANDARDS C11, POSIX.1-2008. GESCHICHTE SVr4, 4.3BSD, C89, POSIX.1-2001. FEHLER Fehler, die von diesem Systemaufruf zuruckgegeben werden, sind nicht von erfolgreichen Berichten, dass die Zeit ein paar Sekunden vor der Unixzeit liegt, zu unterscheiden. Daher kann die C-Bibliothek-Wrapper-Funktion errno nie als Ergebnis dieses Aufrufs setzen. Das Argument tloc ist veraltet und sollte in neuem Code immer NULL sein. Wenn tloc NULL ist, kann der Aufruf nicht fehlschlagen. SIEHE AUCH date(1), gettimeofday(2), ctime(3), ftime(3), time(7), vdso(7) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Michael Haardt , Ralf Demmer , Chris Leick und Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 11. November 2023 time(2)