adjtime(3) Library Functions Manual adjtime(3) NOM adjtime - Ajuster le temps pour synchroniser l'horloge systeme BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include int adjtime(const struct timeval *delta, struct timeval *olddelta); Exigences de macros de test de fonctionnalites pour la glibc (consulter feature_test_macros(7)) : adjtime() : Depuis la glibc 2.19 : _DEFAULT_SOURCE glibc 2.19 et anterieures : _BSD_SOURCE DESCRIPTION La fonction adjtime() ajuste graduellement l'horloge systeme (comme renvoyee par gettimeofday(2)). La quantite de temps avec laquelle l'horloge systeme doit etre ajustee est specifiee par la structure pointee par delta. Cette structure a la forme suivante : struct timeval { time_t tv_sec; /* secondes */ suseconds_t tv_usec; /* microsecondes */ }; Si l'ajustement dans delta est positif, alors l'horloge systeme est acceleree d'un faible pourcentage (par exemple, en ajoutant une petite quantite de temps a chaque seconde de l'horloge) jusqu'a ce que l'ajustement soit realise. Si l'ajustement dans delta est negatif, l'horloge est ralentie selon le meme procede. Si un ajustement d'horloge d'un precedent appel a adjtime() est deja en cours au moment du dernier appel a adjtime() et si delta n'est pas NULL lors de ce dernier appel, alors le precedent ajustement est arrete, mais aucune partie deja complete de cet ajustement n'est defait. Si olddelta n'est pas NULL, alors le tampon pointe est utilise pour renvoyer la quantite de temps restant depuis l'ajustement precedent qui n'a pas ete complete. VALEUR RENVOYEE En cas de reussite, adjtime() renvoie 0. En cas d'erreur, -1 est renvoye et errno est definie. ERREURS EINVAL L'ajustement delta est hors de l'intervalle autorise. EPERM L'appelant n'a pas les privileges suffisants pour ajuster le temps. Sous Linux, la capacite CAP_SYS_TIME est necessaire. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------------------+--------------------------+---------+ |Interface | Attribut | Valeur | +---------------------------------+--------------------------+---------+ |adjtime() | Securite des threads | MT-Safe | +---------------------------------+--------------------------+---------+ STANDARDS Aucun. HISTORIQUE BSD 4.3, System V. NOTES L'ajustement realise par adjtime() sur l'horloge est execute afin que l'horloge soit toujours incrementee de facon monotone. Utiliser adjtime() pour ajuster le temps previent les problemes qui pourraient se poser avec certaines applications (par exemple, make(1)) lors de sauts temporels abrupts positifs ou negatifs de l'horloge systeme. adjtime() est prevue pour faire de petit ajustement de l'horloge systeme. La plupart des systemes impose une limite a l'ajustement qui peut etre specifie dans delta. Dans l'implementation de la glibc, delta doit etre inferieur ou egal a (INT_MAX / 1000000 - 2) et superieur ou egal (INT_MIN / 1000000 + 2) (respectivement, 2145 et -2145 secondes sur i386). BOGUES Un bogue de longue date faisait que si delta valait NULL, aucune information valide sur l'ajustement en cours de l'horloge n'etait renvoye dans olddelta. (Dans cette circonstance, adjtime() devrait renvoyer l'ajustement en cours de l'horloge, sans la modifier.) Ce bogue a ete corrige sur les systemes disposant de la glibc 2.8 ou suivantes et le noyau Linux 2.6.26 ou suivants. VOIR AUSSI adjtimex(2), gettimeofday(2), time(7) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot et Jean-Pierre Giraud Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 28 janvier 2024 adjtime(3)