うるう秒は当分存続らしい
某新聞で記事を見かけたが,このブログでは基本的に日本の新聞記事にリンクは張らない方針なので Facebook に愚痴だけ書いて済ませていたが, INTERNET Watch で詳しい記事を見つけたので,これをベースにグダグダ書いてみる。
うるう秒をどうするかという議論は今に始まった議論ではない。
最近の議論では
という状況だったそうだ。
うるう秒に関する障害については以前にまとめた。
うるう秒に関する障害には大きく2つある。
- NTP の Leap Indicator による時刻の巻き戻し(うるう秒を挿入する場合)
- タイムスタンプの問題
このうちひとつめの方は NTP を SLEW モードにすればよい。 SLEW モードなら時刻を巻き戻すことなく,また Leap Indicator をセットしないので他のサービスを巻き添えにすることもない(サービスが独自の時刻処理を持っている場合は別)。
問題はタイムスタンプのほう。 うるう秒で時刻調整している間は機器間で時刻同期できないし,うるう秒を挿入する場合(過去のうるう秒は全てこれ)は「2015年6月30日 23:59:60 UTC」といったタイムスタンプを処理できない場合がある。 タイムスタンプは,特に電子署名においては中核技術のひとつであるため(「否認防止(non-repudiation)」には正しい時刻が必要),処理できない場合があるとなると影響が大きい。 ただし,実際にはうるう秒が挿入される前後で時刻および関連するサービスへのアクセスを停止することで問題を回避できている。 可用性(availability)への影響は最小限に抑えられるわけだ。
UTC は原子時系の一種だが,恒星時系の一種である UT1 と連動している。 UTC が UT と連動しなくなれば日常の暦象に大きく影響する。 「100年に1分程度」ではなく「100年に1分も」ギャップがあっては困るのである。
そもそもコンピュータの時刻系を UTC にするからこのようなことが起こるのであって,1秒の進み遅れが問題になるなら UTC を使ってはいけない。 それならむしろ TAI(国際原子時)と同期させるべきだ。 たとえば GPS は $\mathrm{TAI} - 19\,\mathrm{sec}$ で運用されている。 もちろんうるう秒はない2。
UTC は人の日常生活に寄せた時刻系であってコンピュータ向きではない。 だからといって UTC のほうを弄るのは全く筋の悪いやりかたで,(恐らく政治的な思惑もあるのだろうが)なんでこんなに議論が紛糾するのかわからない。
最後に Linux 開発者の発言を紹介しておこう。
ちなみに実際の UNIX Time は UTC のある時刻から1970年初の時刻を単に差し引いただけのもので,うるう秒を考慮していない。
ブックマーク
- うるう秒、2035年までに廃止へ - ZDNet Japan : 正式決定らしい