Provided by: manpages-fr_3.32d0.2p4-1_all bug

NOM

       time - Panorama des fonctions liees au temps et aux temporisations

DESCRIPTION

   Temps r'eel et temps processus
       Le  temps  r'eel  est  defini  comme le temps mesure a partir d'un point
       fixe, soit un point standard dans  le  passe  (voir  la  definition  de
       l'epoque  et  du  temps calendaire ci-dessous), soit un point (p.ex. le
       demarrage) dans la vie d'un processus (temps 'ecoul'e).

       Le temps processus est  defini  comme  le  temps  CPU  utilise  par  un
       processus.  Il  est  parfois divise entre une partie utilisateur et une
       partie syst`eme. Le temps CPU utilisateur est le temps passe a  executer
       du  code  en  mode utilisateur. Le temps CPU systeme est le temps passe
       par le noyau en mode systeme  pour  le  processus  (p.ex.  pendant  des
       appels systeme). La commande time(1) peut etre utilisee pour determiner
       le temps CPU utilise pendant l'execution  du  programme.  Un  programme
       peut  determiner  le  temps  CPU  qu'il  a  utilise  avec les fonctions
       times(2), getrusage(2) et clock(3).

   L'horloge mat'erielle
       La plupart des ordinateurs ont une horloge  materielle  (alimentee  par
       une  pile)  que  le  noyau lit au demarrage du systeme pour initialiser
       l'horloge  logicielle.  Pour  plus  de  details,  consultez  rtc(4)  et
       hwclock(8).

   L'horloge logicielle, HZ, et les Jiffies
       La  precision  de divers appels systeme qui definissent des delais (par
       exemple select(2), sigtimedwait(2)) ou qui mesurent le temps processeur
       (par  exemple  getrusage(2)) est limitee par la resolution de l'horloge
       logicielle, une horloge maintenue par le noyau qui mesure le  temps  en
       jiffies.  La  duree  d'un  jiffy  est  determinee  par  la valeur de la
       constante noyau HZ.

       La precision de nombreux appels systeme et horodatages est limitee  par
       la  resolution  de  l'horloge  logicielle, une horloge maintenue par le
       noyau qui mesure  le  temps  en  jiffies.  La  taille  d'un  jiffy  est
       determinee  par  la valeur de la constante du noyau HZ. La valeur de HZ
       varie d'une version du noyau et d'une architecture  a  une  autre.  Sur
       i386,  la  situation  est  la  suivante : pour les noyaux jusqu'a 2.4.x
       inclus,  HZ  vaut  100,  ce  qui  donne  une   valeur   de   jiffy   de
       10 millisecondes ;  a  partir de 2.6.0, HZ a ete augmente a 1000, ainsi
       un jiffy etait equivalent a 1 milliseconde. Depuis le noyau 2.6.13,  la
       valeur de HZ est un parametre de configuration du noyau, et peut valoir
       100, 250 (la valeur par defaut), ou 1000, donnant des valeurs de 10,  4
       et   1 millisecondes,   respectivement,   pour   un  jiffy.  Depuis  le
       noyau 2.6.20, il est aussi possible d'utiliser 300 ; cette  valeur  est
       divisible par les frequences des formats videos les plus courants (PAL,
       25 Hz ; NTSC, 30 Hz).

       L'appel systeme times(2) est un cas particulier. Il  renvoie  le  temps
       avec  une  granularite  definie  par la constante du noyau USER_HZ. Les
       applications utilisateur peuvent obtenir la valeur de  cette  constante
       avec sysconf(_SC_CLK_TCK).

   Temporisations haute r'esolution
       Avant   Linux 2.6.21,  la  precision  des  appels  systeme  gerant  les
       temporisations et les sommeils (voir plus loin) etait  limitee  par  la
       taille du << jiffy >>.

       Depuis   la   version 2.6.21,   Linux  gere  les  temporisations  haute
       resolution (HRT : high-resolution timers)  de  maniere  optionnelle  en
       configurant   CONFIG_HIGH_RES_TIMERS.   Sur  les  systemes  gerant  les
       temporisations haute resolution, la precision des appels systeme gerant
       les   temporisations   et  les  sommeils  n'est  plus  limitee  par  le
       << jiffy >> et peut etre aussi fine que le systeme ne le permette  (une
       precision  d'une  microseconde  est typique sur les materiels actuels).
       Vous pouvez savoir si les temporisations haute resolution  sont  gerees
       en verifiant la precision renvoyee par un appel a clock_getres(2) ou en
       regardant les entrees << resolution >> du fichier /proc/timer_list.

       Les temporisations haute resolution ne sont pas gerees par  toutes  les
       architectures materielles. Cette gestion est disponible sur x86, arm et
       powerpc parmi d'autres.

   L''epoque (Epoch)
       Les systemes UNIX representent le temps depuis  l'epoque  (Epoch),  qui
       est le 1er janvier 1970 a 00:00:00 (UTC).

       Un  programme peut determiner le temps calendaire avec gettimeofday(2),
       qui renvoie le temps  (en  secondes  et  microsecondes)  ecoule  depuis
       l'epoque ;  time(2)  fournit  une  information similaire, mais avec une
       precision d'une seconde.  Le  temps  systeme  peut  etre  modifie  avec
       settimeofday(2).

   Temps d'ecompos'e
       Certaines  fonctions de bibliotheque utilisent une structure de type tm
       pour representer le temps d'ecompos'e, qui stocke le temps  decompose  en
       composantes  distinctes  (annee,  mois,  jour,  heure, minute, seconde,
       etc.). Cette structure est decrite dans ctime(3), qui decrit  egalement
       les  fonctions  qui  font la conversion entre temps calendaire et temps
       decompose.  Les  fonctions  permettant  les  conversions  entre   temps
       decompose  et  representation  sous  forme  de chaine de caractere sont
       decrites dans ctime(3), strftime(3) et strptime(3).

   Dormir et placer des temporisations
       Divers appels  systeme  et  fonctions  permettent  a  un  programme  de
       s'endormir   (suspendre   son  execution)  pour  une  duree  specifiee.
       Consultez nanosleep(2), clock_nanosleep(2) et sleep(3).

       Divers  appels  systeme  permettent  a  un  processus  de  placer   une
       temporisation  qui  expirera  a  un  point  donne  dans  le  futur,  et
       eventuellement  a  des   intervalles   repetes.   Consultez   alarm(2),
       getitimer(2), timerfd_create(2) et timer_create(2).

VOIR AUSSI

       date(1),     time(1),    adjtimex(2),    alarm(2),    clock_gettime(2),
       clock_nanosleep(2),    getitimer(2),    getrlimit(2),     getrusage(2),
       gettimeofday(2),   nanosleep(2),   stat(2),  time(2),  timer_create(2),
       timerfd_create(2),   times(2),    utime(2),    adjtime(3),    clock(3),
       clock_getcpuclockid(3),  ctime(3),  pthread_getcpuclockid(3), sleep(3),
       strftime(3), strptime(3), timeradd(3), usleep(3), rtc(4), hwclock(8)

COLOPHON

       Cette page fait partie de  la  publication  3.32  du  projet  man-pages
       Linux.  Une description du projet et des instructions pour signaler des
       anomalies      peuvent      etre       trouvees       a       l'adresse
       <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis  2010,  cette  traduction est maintenue a l'aide de l'outil po4a
       <URL:http://po4a.alioth.debian.org/>   par   l'equipe   de   traduction
       francophone        au        sein        du       projet       perkamon
       <URL:http://perkamon.alioth.debian.org/>.

       Julien   Cristau   et   l'equipe   francophone   de    traduction    de
       Debian (2006-2009).

       Veuillez   signaler   toute   erreur   de   traduction  en  ecrivant  a
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir acces a la version anglaise de ce document
       en utilisant la commande << man -L C <section> <page_de_man> >>.

Linux                           25 fevrier 2010                        TIME(7)