Como exatamente o banco de dados tzdata é usado?

9

Diferentes sistemas operacionais parecem lidar com o horário de verão (DST) de maneira diferente. Eu realmente gosto da abordagem do Cisco IOS, que é muito simples e permite alterar a data e a hora em que o horário de verão começa e termina. Por exemplo:

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

.. ajusta o relógio 60 minutos à frente no domingo da segunda semana de março às 2:00 e muda o relógio 60 minutos atrás no primeiro domingo de novembro às 2:00. Como o Linux lida com o DST? Eu sei que existe um pacote tzdata que contém arquivos de dados de fuso horário e esses arquivos são instalados no diretório /usr/share/zoneinfo/ . Como e por quais utilitários esses arquivos são usados? Eu posso ver o deslocamento de UTC (2) e nomes de fuso horário (EET e EEST) no arquivo:

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

Além disso, M3 é provavelmente o terceiro mês e M10 é um décimo mês? Além disso, o deslocamento também deve ser especificado em algum lugar. Por exemplo, no IOS, é possível configurar que, uma vez que o horário de verão acontece, o relógio muda por exemplo 90 ou 120 minutos, em vez de 60.

    
por Martin 30.10.2013 / 00:40

1 resposta

4

Se você der uma olhada na página da Wikipedia sobre o banco de dados TZ :

trecho

File formats

The tz database is published as a set of text files which list the rules and zone transitions in a human-readable format. For use, these text files are compiled into a set of platform-independent binary files—one per time zone. The reference source code includes such a compiler called zic (zone information compiler), as well as code to read those files and use them in standard APIs such as localtime() and mktime().

Pesquisas adicionais mostraram este Q & A em stackoverflow, intitulado: Pergunta sobre formato de arquivo de banco de dados de fuso horário , que tinha informações adicionais sobre o formato do arquivo.

    
por 30.10.2013 / 01:28

Tags