Comment la base de données tzdata est-elle utilisée exactement?


10

Différents systèmes d'exploitation semblent gérer l'heure d'été (DST) différemment. J'aime vraiment l'approche Cisco IOS qui est très simple et permet de changer la date et l'heure de début et de fin de l'heure d'été. Par exemple:

clock summer-time EDT recurring 2 Sun Mar 2:00 1 Sun Nov 2:00 60

..sets horloge 60 minutes d'avance le dimanche de la deuxième semaine de mars à 2h00 et décale l'horloge de 60 minutes le premier dimanche de novembre à 2h00. Comment Linux gère-t-il l'heure d'été? Je sais qu'il existe un tzdatapackage qui contient des fichiers de données de fuseau horaire et ces fichiers sont installés dans le /usr/share/zoneinfo/répertoire. Comment et par quels utilitaires ces fichiers sont-ils utilisés? Je peux voir le changement de noms UTC (2) et de fuseau horaire (EET et EEST) dans le fichier:

T60:~# strings /usr/share/zoneinfo/posix/Europe/Helsinki
TZif2
    HMT
EEST
TZif2
EEST
EET-2EEST,M3.5.0/3,M10.5.0/4
T60:~# 

De plus, M3est probablement le troisième mois et M10est un dixième mois? En outre, le décalage doit également être spécifié quelque part. Par exemple, dans IOS, on peut configurer qu'une fois que l'heure d'été se produit, l'horloge se décale par exemple de 90 ou 120 minutes au lieu de 60.

Réponses:


4

Si vous jetez un œil à la page Wikipedia concernant la base de données TZ :

extrait

Formats de fichier

La base de données tz est publiée sous la forme d'un ensemble de fichiers texte répertoriant les règles et les transitions de zone dans un format lisible par l'homme. Pour être utilisés, ces fichiers texte sont compilés en un ensemble de fichiers binaires indépendants de la plate-forme, un par fuseau horaire. Le code source de référence comprend un tel compilateur appelé zic (compilateur d'informations de zone), ainsi que du code pour lire ces fichiers et les utiliser dans des API standard telles que localtime () et mktime ().

Une recherche supplémentaire a révélé cette Q&R sur stackoverflow, intitulée: Question sur le format de fichier de la base de données du fuseau horaire , qui contenait des informations supplémentaires sur le format de fichier.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.