12 points par winterjung 2022-11-26 | 4 commentaires | Partager sur WhatsApp
  • Cela ne veut pas dire que l’UTC (temps universel coordonné) est mauvais
  • La Conférence générale des poids et mesures a décidé de supprimer les secondes intercalaires de l’UTC après 2035
  • Les secondes intercalaires sont liées à la rotation de la Terre, qui est irrégulière et imprévisible
  • En dehors de l’UTC, l’un des principaux standards temporels est le TAI (temps atomique international), qui n’a pas de secondes intercalaires
  • Comme l’UTC n’est pas principalement utilisé pour l’ingénierie, il peut avoir des secondes intercalaires, mais le temps Unix, à cause de celles-ci, n’est plus linéaire et cela a provoqué beaucoup de confusion

Temps Unix TAI

  • Le temps Unix TAI, qui commence le 1er janvier 1970 à 0 h 0 min 10 s, augmente linéairement et possède des propriétés mathématiques utiles, mais il n’est pas populaire
  • Il est différent du temps Unix et ne peut pas le remplacer directement
  • Par rapport au temps Unix
    • Comme il est linéaire, il est très facile de calculer quand auront lieu t + 1 seconde ou t + 100000000 secondes. Avec le temps Unix, on ne peut pas le calculer car on ne sait pas quand surviendront les futures secondes intercalaires ; on ne peut que le prédire
    • Il est facile de calculer la différence entre deux horodatages
    • Calculer une date ou une heure est difficile. En général, nous voulons connaître l’heure UTC, pas l’heure TAI, il faut donc tenir compte des secondes intercalaires
    • Il n’est pas ambigu et ne renvoie que des valeurs valides

Passer au temps Unix TAI sans incident majeur

  • Il est proposé dans le standard POSIX de diviser le temps en trois catégories : temps Unix, temps Unix TAI+C et temps Unix hérité
  • Le temps Unix hérité renverrait le temps Unix actuel avant un certain moment, puis le temps Unix TAI+C après celui-ci
  • Les secondes intercalaires dépendent de ressources en ligne ; il est donc raisonnable d’effectuer la transition en 2035, date à laquelle elles seront supprimées

4 commentaires

 
galadbran 2022-12-01

J’ai pensé qu’il fallait que je lise ça un peu plus en détail, alors j’en ai fait une traduction un peu à l’arrache !

https://weblog2.wafe.kr/posts/translation-unix-time-bad/

 
galadbran 2022-11-26

On parle simplement du temps Unix, c’est-à-dire du unix timestamp couramment utilisé, n’est-ce pas ?
Comme on l’utilise tout le temps, je n’y avais jamais vraiment réfléchi, mais dans ce cas cela veut dire que des OS comme Linux fournissent des timestamps qui reflètent les secondes intercalaires passées ? C’était quelque chose d’énorme...

 
tribela 2022-11-27

C’est l’inverse. Une seconde intercalaire revient plutôt à faire d’une seconde réelle un instant qui n’a pas existé ; ainsi, pour un OS calé sur l’UTC, il suffit de calculer à partir des timestamps pour obtenir le temps Unix, et à l’inverse il faut ajouter les secondes intercalaires réellement survenues pour obtenir une valeur TAI.

 
winterjung 2022-11-26