• [^] # Re: Vive les timestamp

    Posté par . En réponse au journal Le premier journal du vendredi de l'année (Le Zune plante). Évalué à 3.

    eureusement que dans le monde UNIX, on gère le temps en comptant les secondes depuis le 1er janvier 1970... comme ça, les changement d'années sont complètement anodins.
    Sauf que sous UNIX beaucoup de timestamp se base sur ce temps depuis le 1er janvier 1970 (CLOCK_REALTIME).
    Or cette horloge peut être amenée à faire des sauts si l'utilisateur change la date, mais pas mal d'appli gère très mal les voyages dans le temps (ou alors ça oblige à avoir un code assez compliqué)...
    Idem quand on sort d'une mise en veille, les applis font un saut brutal dans le futur.

    Posix définit bien une horloge monotone (CLOCK_MONOTONIC) (souvent le temps depuis le boot), mais peu d'API permette de l'utiliser (par exemple les timestamp clavier du noyau Linux sont basé sur la clock realtime)....


    PS : oui ntp est censé éviter les changements brutaux d'horloge, mais par exemple dans le cas d'un système embarqué sans rtc (ie l'horloge n'est pas conservée dans le système est éteint), tous un tas d'applis seront lancées avant que la date réelle soit mise à jour.