URUU

 2016年もあと少しで、2017を迎えようとしています。
 ちょっと先の話ですが、今年の2017年の元旦は2016年12月31日よりも1秒だけ長くなるのをご存知でしょうか?
 そうです、2017年の元旦はうるう秒が入ります。

 NICT-情報通信研究機構によると、今年は平成29年(2017年)1月1日(日)午前8時59分59秒と午前9時00分00秒の間に「8時59分60秒」を挿入するということが決まっています。
 なぜ、このうるう秒が必要なのか説明します。
gensi

 現在の1秒の単位は原子の振動によって決めています。原子の振動は常に安定しているため、その振動を利用して1秒としていますが、一方、地球の自転速度は速くなったり遅くなったり一定ではないため、原子の振動と地球の自転の速度にズレが生じます。それを補うために
ずれが0.9秒を超えないように余分な1秒を挿入するのがうるう秒となるわけです。
 では、逆に1秒少なくすることはあり得るのでしょうか。結論から言うと、実際にあり得ることです。しかしなぜか今までこのうるう秒の反対である「1秒削除」は今まで行われたことはありません。
Earth

 うるう秒に対してもう一方のうるう年とは同じことなのでしょうか。実はうるう秒とうるう年とは大きく違います。
 うるう年は太陽暦からきています。太陽暦は1年365日となっていますが、実際は地球が太陽の周りを一周するには365日と1/4日かかります。この1/4を補うため、4年に一度「うるう年」がくるようになっています。

 さて話は戻り、この「うるう秒」によってデジタル世界でどんな問題が起きるのでしょうか。現在はこのうるう秒を想定したプログラムの開発が多くなり、昔みたいな混乱は起きなくなりましたが、それでも大きな問題が起こっています。
 過去には、ルーターの誤動作により、ネットワークが停止する問題もありました。これはルーターがサーバーとの時刻同期を取っているのでうが、この「うるう秒」が挿入され、ルーターが認識できなるなり、結果としてルーター機能が停止したということもあります。
 また、交通関係にも影響がでたことがあります。航空会社でこの「うるう秒」により、飛行機がフライトできないといったことがありました。交通関係が「秒単位」で運行を監視し、運用しています。そのため、システムが1秒でもくるうと、その後の運行すべてに支障が出るわけです。現在ではシステムの改善や、うるう秒前後に発着を行わないなどの方法で対応済となっているようです。
 
 あとは金融関係で毎回何かトラブルが起きています。やはり金融関係はミリ秒単位で取引を行っているため、「うるう秒」を挿入すると当然混乱は予想できます。

 身近なものでは端末がはフリーズするかもしれないということです。現在はほとんど対応済かと思いますが、時刻の同期はNTPサーバーで同期を取りますが、同期のタイミングは59秒から2回同期を取っています。本来でhあれば59秒の同期のあと、00秒の同期となりますが、うるう秒になると、59秒の同期のあと00秒の同期のはずがNTPサーバーから「60秒」と返ってくるためCPUが処理できず、CPUの使用率は100%になってしまうということです。

 これを回避するため、Googleでは提供しているGoogle Public NTPサーバーにおいて、前後10時間に0.0014パーセント遅いクロックを実行させ、合計20時間で1秒分をずらす方式を取るということになりました。つまりうるう秒をあえて「
0.0014秒」の遅れを使って補正していくということです。
 他のNTPサーバーは現在はうるう秒を入れる方式でいくようですが、いずれ各NTPサーバーはこの方式を取るかもしれません。
 今回のうるう秒は前回と違い、正月に行われるため、大きな混乱は少ないと予想されています。しかしこのたった「1秒」の挿入でシステムの混乱が起こってしまうのがyはり怖い気もします。