aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/pt-br/articles/leap-seconds/_index.adoc
blob: 571e892063ee25460416059584d231f1c8b42b95 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
---
title: Suporte do FreeBSD a Leap Seconds
releaseinfo: "$FreeBSD$" 
---

= Suporte do FreeBSD a Leap Seconds
:doctype: article
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:source-highlighter: rouge
:experimental:
:toc-title: Índice
:part-signifier: Parte
:chapter-signifier: Capítulo
:appendix-caption: Apêndice
:table-caption: Tabela
:figure-caption: Figura
:example-caption: Exemplo

include::shared/pt-br/urls.adoc[]

'''

toc::[]

[[leapseconds-definition]]
== Introdução

Um _leap second_ é o ajuste de um segundo feito em momentos específicos do ano para sincronizar a escala atômica de tempo do UTC com a variação da rotação da terra. Esse artigo descreve como o FreeBSD interage com o leap seconds.

No momento em que este artigo está sendo escrito, a próxima ocorrência do leap second irá acontecer em 30 de junho de 2015 as 23:59:60 UTC. Esse leap second ira ocorrer durante um dia útil para as Américas do Norte e do Sul e a região da Ásia/Pacifico.

Leap Seconds são anunciados pelo http://datacenter.iers.org/[IERS] no http://datacenter.iers.org/web/guest/bulletins/-/somos/5Rgv/product/16[Bulletin C].

O comportamento padrão do leap Seconds é descrito na https://tools.ietf.org/html/rfc7164#section-3[RFC 7164]. Veja também em man:time2posix[3].

[[leapseconds-posix]]
== Manipulação padrão do leap seconds no FreeBSD

A maneira mais fácil de manipular o leap seconds é com a regra de tempo POSIX que é utilizada por padrão pelo FreeBSD, combinada com o link:{handbook}#network-ntp[NTP]. Quando o man:ntpd[8] está sendo executado e o tempo é sincronizado com os servidores NTP de upstream que gerenciam o leap seconds corretamente, o leap second causará a repetição do último segundo do dia de forma automática. Nenhum outro ajuste será necessário.

Se os servidores de NTP upstream não gerenciarem o leap seconds corretamente, o man:ntpd[8] irá avançar em um segundo após o servidor se corrigir.

Se o NTP não está sendo utilizado, será necessário um ajuste manual do relógio do sistema apois o leap seconds ter passado.

[[leapseconds-cautions]]
== Cuidados

Os Leap seconds são inseridos no mesmo instante em todo o mundo a meia noite UTC. No Japão será no meio da manhã e no Pacífico ao meio dia, nas Américas a tarde e na Europa à noite.

Nos acreditamos e esperamos que o FreeBSD, se provido de um serviço de NTP estável, irá funcionar como foi especificado durante o leap second, como aconteceu nos anteriores.

Enrtetanto, nós alertamos que praticamente nenhum aplicativo nunca questionou o kernel sobre leap seconds. Nossa experiência é que, como projetado, leap seconds são, essencialmente, a repetição do último segundo antes do leap second, e isso é uma surpresa para a maioria dos programadores.

Outros sistemas operacionais e computadores podem ou não manipular o leap seconds da mesma maneira que o FreeBSD e sistemas sem um serviço correto e estável de NTP não terão conhecimento algum sobre a ocorrência de leap seconds.

Não é inétido que os computadores travem por causa do leap seconds, e a experiência mostra que uma grande parte de todos os servidores públicos de NTP podem manipular e anunciar o leap seconds de forma incorreta.

Por favor, tente garantir que nada horrível acontecerá por causa do leap seconds.

[[leapseconds-testing]]
== Testando

É possível testar se um leap seconds será utilizado. Devido a natureza do NTP, o teste deve funcionar até 24 horas antes do lead seconds. Algumas da principais fontes de referência de tempo somente anunciam o leap seconds uma hora antes do evento. Consulte o daemon do NTP:

[source,shell]
....
% ntpq -c 'rv 0 leap'
....

Uma saída que inclua `leap_add_sec` indica o suporte adequado ao leap second. Antes de 24 horas até a ocorrência do leap second, ou depois dele já ter ocorrido, a saída do comando irá mostrar `leap_none`.

[[leapseconds-conclusion]]
== Conclusão

Na prática, o leap seconds não é um problema do FreeBSD. Esperamos que esta visão geral, ajude-o a esclarecer oque esperar e como tornar o evento de leap seconds o menos traumático possível.