Provided by: manpages-nl-dev_4.27.0-1_all bug

NAAM

       gettimeofday, settimeofday - verkrijg / zet tijd

BIBLIOTHEEK

       Standard C bibliotheek  (libc, -lc)

SAMENVATTING

       #include <sys/time.h>

       int gettimeofday(struct timeval *restrict tv,
                        struct timezone *restrict tz);
       int settimeofday(const struct timeval *tv,
                        const struct timezone *_NULL_baartz);

   Feature Test Macro´s eisen in  glibc (zie feature_test_macros(7)):

       settimeofday()
           Vanaf glibc 2.19:
               _DEFAULT_SOURCE
           Glibc 2.19 en eerder:
               _BSD_SOURCE

BESCHRIJVING

       De functies gettimeofday() en settimeofday() kunnen zowel de tijd als de tijdzone zetten en inspecteren.

       Het tv argument is een timeval "struct" zoals bepaald in <sys/time.h>):

           struct timeval {
               time_t      tv_sec;     /* seconden */
               suseconds_t tv_usec;    /* microseconden */
           };

       en geeft het aantal seconden en microseconden sinds de Epoch (zie time(2)).

       Het tz argument is een struct tijdzone:

           struct timezone {
               int tz_minuteswest;     /* minuten west van Greenwich */
               int tz_dsttime;         /* type zomertijd (dst) correctie */
           };

       Als  óf  tv  óf  tz NULL is, dan wordt de corresponderende structure niet gezet of teruggegeven. (Echter,
       compilatie waarschuwingen zullen optreden als tv NULL is.)

       Het gebruik van de tijdzone structuur is verouderd; het tz argument moet normaliter opgegeven worden  als
       NULL. (Zie OPMERKINGEN hieronder.)

       Onder  Linux  is  er  een  eigenaardige `warp clock' semantiek geassocieerd met de settimeofday() systeem
       aanroep als tijdens de allereerste aanroep (na opstarten van het systeem) die een niet-NULL  tz  argument
       heeft,  het tv argument NULL is en het tz_minuteswest niet-nul is.  (Het tz_dsttime veld moet nul zijn in
       dit geval.) In zo'n geval wordt aangenomen dat de CMOS klok op  lokale  tijd  staat,  en  dat  daar  deze
       hoeveelheid  bij  moet  worden opgeteld om de UTC systeem tijd te krijgen. Ongetwijfeld is het een slecht
       idee dit te gebruiken.

EIND WAARDE

       gettimeofday() en settimeofday() retourneren 0 bij succes, of -1 voor falen (in welk geval errno  op  die
       manier wordt gezet).

FOUTEN

       EFAULT Een van tv of tz wijst buiten uw toegankelijke adres ruimte.

       EINVAL (settimeofday()): timezone is ongeldig.

       EINVAL (settimeofday()): tv.tv_sec is negatief of tv.tv_usec is buiten het bereik [0..999,999].

       EINVAL (sinds Linux 4.3)
              (settimeofday()):  Een poging werd ondernomen om de tijd op een waarde in te stellen die eerder is
              dan de huidige waarde van de CLOCK_MONOTONIC klok (zie clock_gettime(2)).

       EPERM  Het huidige proces heeft onvoldoende rechten om settimeofday() aan te roepen; onder  Linux  is  de
              CAP_SYS_TIME capaciteit vereist.

VERSIES

   C library/kernel verschillen
       Op sommige architecturen wordt voorzien in een implementatie van gettimeofday() in de vdso(7).

       De  kernel  accepteert  NULL  voor zowel  tv and tz.  Het tijdzone argument wordt genegeerd door glibc en
       musl, en niet doorgegeven naar/van de kernel. De bionic van Android geeft het tijdzone argument  naar/van
       de  kernel  door,  maar  Android past het tijdzone in de kernel niet aan op basis van de tijdzone van het
       apparaat in Instellingen, daarom is de tijdzone van de kernel typisch UTC.

VOLDOET AAN

       gettimeofday()
              POSIX.1-2008 (verouderd).

       settimeofday()
              Geen.

GESCHIEDENIS

       SVr4, 4.3BSD.  POSIX.1-2001 beschrijven gettimeofday()  maar niet settimeofday().  POSIX.1-2008  markeert
       gettimeofday()  als verouderd, en beveelt het gebruik van clock_gettime(2)  in plaats daarvan aan.

       Traditioneel waren de velden van struct timeval van het type long.

   Het tz_dsttime veld
       In  een niet-Linux kernel, met glibc, wordt het tz_dsttime veld van struct timezone gezet op een niet-nul
       waarde door gettimeofday() als op de huidige tijdzone een regel ooit toegepast is of ooit zal worden.  Op
       deze  manier spiegelt het precies de betekenis van daylight(3) voor de huidige zone. Op Linux, met glibc,
       is de instelling van het tz_dsttime veld van  struct  timezone  nooit  gebruikt  door  settimeofday()  of
       gettimeofday(). Daarom is het volgende puur uit historische interesse.

       Op  oude  systemen  bevat  het  tz_dsttime  veld  een symbolische constante (waarden staan hieronder) dat
       aangeeft in welk deel van het jaar zomertijd van kracht is. (Let op: deze waarde  is  constant  gedurende
       het  jaar: het geeft niet aan dat de zomertijd van kracht is, het selecteert een algoritme.) De zomertijd
       algoritmes zijn als volgt gedefinieerd:

           DST_NONE     /* geen zomertijd */
           DST_USA      /* USA stijl zomertijd */
           DST_AUST     /* Australische stijl zomertijd */
           DST_WET      /* West Europese zomertijd */
           DST_MET      /* Midden Europese zomertijd */
           DST_EET      /* Oost Europese zomertijd */
           DST_CAN      /* Canada */
           DST_GB       /* Groot Britannië en Ierland */
           DST_RUM      /* Roemenië */
           DST_TUR      /* Turkije */
           DST_AUSTALT  /* Australische stijl met verschuiving in 1986 */

       Natuurlijk bleek dat de periode waarin zomertijd geld niet met een eenvoudig algorithme per land  bepaald
       kan  worden.  Inderdaad: deze periode wordt bepaald door onvoorspelbare politieke beslissingen. Daarom is
       deze methode van tijdzone representatie afgeschaft.

OPMERKINGEN

       De tijd teruggegeven door gettimeofday() wordt beïnvloed door niet continue sprongen in de  systeem  tijd
       (b.v.  als  de  systeem beheerder handmatig de systeem tijd verandert). Als u een monotoon oplopende klok
       nodig heeft, zie dan clock_gettime(2).

       Macros voor het gebruik van timeval structuren zijn beschreven in timeradd(3).

ZIE OOK

       date(1),  adjtimex(2),  clock_gettime(2),  time(2),  ctime(3),  ftime(3),  timeradd(3),  capabilities(7),
       time(7), vdso(7), hwclock(8)

VERTALING

       De  Nederlandse  vertaling  van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Joost
       van Baal  <joostv-manpages-nl-2398@mdcc.cx>,  Mario  Blättermann  <mario.blaettermann@gmail.com>  en  Luc
       Castermans <luc.castermans@gmail.com>

       Deze  vertaling  is  vrije  documentatie;  lees  de GNU General Public License Version 3 of later over de
       Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

       Indien U fouten in de vertaling van deze handleiding zou  vinden,  stuur  een  e-mail  naar  debian-l10n-
       dutch@lists.debian.org.

Linux man-pagina's 6.9.1                           2 mei 2024                                    gettimeofday(2)