2ch特化型サーバ・ロケーション構築作戦 Part19

このエントリーをはてなブックマークに追加
671root▲ ★
いろいろ調べ中。

結論からいうと、

FreeBSDでは、デフォルトでは閏秒はシステムに入っていない状態なので、
「デフォルト状態で」「NTPでUTCに対して時間を合わせている限り」、
今回の閏秒挿入に関して、何らかのアクションを起こす必要はない。
つまり、我々は何もする必要がない。

になります。

TAIに合わせている場合(例えばclockspeedとかを使っている場合など)は、
FreeBSDでは最初にそもそも対応が必要だったはずで、
その対応と同じことを、ファイルを更新したうえで、再度やる必要がある。

ことになるはず。
672root▲ ★:2005/12/28(水) 14:08:22 ID:???0 BE:1642436-
重要なFAQ:

ネットワ−クによる時刻情報提供サービス(NTPサ−ビス)のうるう秒対応
http://jjy.nict.go.jp/news/leaps.html#l4

NTPの取り扱う時刻は1900年1月1日を起点とした時系ですが、
過去のうるう秒を積算していません。積算秒数をお知らせします。
日本標準時で1月1日8時59分60秒(UTCでは12月31日23時59分60秒)と
9時0分0秒(UTCでは1月1日0時0分0秒)は9時0分0秒に相当する
同じ積算秒数をカウントします。

すなわち、60秒と0秒は、同じ時刻を2度カウントすることになります。
673root▲ ★:2005/12/28(水) 14:15:13 ID:???0 BE:3648285-
こんなページが。djbか。
ほんとに、同じ時刻を2度カウントするのね。すごいな。

http://cr.yp.to/proto/utctai.html

1997-06-30 23:59:59.7 UTC -> 867715199.7 xntpd
1997-06-30 23:59:59.8 UTC -> 867715199.8 xntpd
1997-06-30 23:59:59.9 UTC -> 867715199.9 xntpd
1997-06-30 23:59:60.0 UTC -> 867715200.0 xntpd
1997-06-30 23:59:60.1 UTC -> 867715200.1 xntpd
1997-06-30 23:59:60.2 UTC -> 867715200.2 xntpd
1997-06-30 23:59:60.3 UTC -> 867715200.3 xntpd
1997-06-30 23:59:60.4 UTC -> 867715200.4 xntpd
1997-06-30 23:59:60.5 UTC -> 867715200.5 xntpd
1997-06-30 23:59:60.6 UTC -> 867715200.6 xntpd
1997-06-30 23:59:60.7 UTC -> 867715200.7 xntpd
1997-06-30 23:59:60.8 UTC -> 867715200.8 xntpd
1997-06-30 23:59:60.9 UTC -> 867715200.9 xntpd
1997-07-01 00:00:00.0 UTC -> 867715200.0 xntpd
1997-07-01 00:00:00.1 UTC -> 867715200.1 xntpd
1997-07-01 00:00:00.2 UTC -> 867715200.2 xntpd
674root▲ ★:2005/12/28(水) 14:51:57 ID:???0 BE:1824454-
ということで、今回の件をまとめると、

0) NTPで時刻あわせをしているシステムでは、
今回何の対応もしなくてよい。
つまり、私もmaido3.comの中の人も、何も作業しなくてよい。

1) ntpdは増える閏秒が発生した場合、
同じ秒を2回繰り返すことにより、つじつま合わせをしている。

2) 結果として今回、1136073600 というUNIX timeな時間が、
2ちゃんねる内において1秒間ではなく、2秒間存在することになる。

3) その際のlocaltime()ライブラリによる時間表示は、
Sun Jan 1 09:00:00 JST 2006 となる。

4) つまり、2006/01/01(日) 08:59:60 という表示が
2ちゃんねるにおいて 投稿日: のところに現れることはなく、
2006/01/01(日) 09:00:00 という表示が、2秒間発生することになる。

ということになるのかなと。