Provided by: manpages-nl-dev_4.15.0-9_all bug

NAAM

       gettimeofday, settimeofday - verkrijg / zet tijd

SAMENVATTING

       #include <sys/time.h>

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

   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.

VOLDOET AAN

       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.

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).

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

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

   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.

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)

COLOFON

       Deze   pagina  is  onderdeel  van  release  5.13  van  het  Linux  man-pages-project.  Een
       beschrijving van het project, informatie over het melden van bugs en  de  nieuwste  versie
       van deze pagina zijn op https://www.kernel.org/doc/man-pages/ te vinden.

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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.