2036年問題
読み方:にせんさんじゅうろくねんもんだい
2036年問題とは、コンピュータの時刻を同期するためのプロトコルであるNTP(Network Time Protocol)が、西暦2036年に時間計測機能のオーバーフローを起こしてしまうことによって、NTPを利用しているコンピュータの時計機能が狂ってしまうという問題のことである。
NTPは、ネットワークを通じてサーバが計測している時刻情報を常に同期することにより各端末の時間を正確に保っている。NTPサーバは32桁の2進数によって時間を計測しているので、計測できる最大値(すべての桁が「1」となる値)となる「4294967295秒」を超えると桁あふれ(オーバーフロー)状態となってしまい、それ以上計測することができなくなる。NTPの時間計測の始点は1900年1月1日であるため、1900年のはじめから4294967295秒後を迎える2036年2月6日の00:54:54時点でオーバーフローが起こる。その時、NTPは値を0から改めて計測し始め、コンピュータの時間は1900年1月1日と認識され大混乱を招くのではないか、と予測されている。
コンピュータの時刻機能に関するトラブルとしては、西暦2000年の発生が危惧された「2000年問題」がある。これは、西暦を下2桁だけで表示するタイプのコンピュータが「00年」と表示されるべき「西暦2000年」を「西暦1900年」と誤認識してしまうのではないか、という問題であり、多少の騒動を引き起こしている。2000年問題になぞらえて、2036年問題を「NTPの2000年問題」(NTPs Millennium Problem)のように形容することもある。
また、2036年問題と同様にして、C言語の時間計測機能が西暦2038年にオーバーフローしてしまうことが分かっており、2038年問題と呼ばれている。
参照リンク
20XX年問題特集
|