(´・ω・`)ショボーン

いろいろと…

2003/01/27

2004-10-29 | LostG
以前、2000年問題で鉄道会社・航空会社が運行を見合わせるという事態が起こりましたが、それはさしてたいした問題ではなかったそうです。しかし、近々2038年にとんでもない問題が発生するという事です。身近にある時計を使用した機械の全てが狂ってしまうというものです。

現在のコンピューター機器の時計のプログラムは、time_t変数という符号あり32bit整数に宣言されているそうです。32bit整数というのはコンピューターのメモリーに確保できる領域をあらわしていて、これが2,147,483,647秒までしか領域がないそうです。つまりこの秒数以上経過してしまうとオーバーフローになってしまい、コンピューターが正常に機能しなくなります。世界のコンピューターのほとんどが1970年1月1日から時を刻むように設定されています。簡単に言うと、そこから時が1秒ずつ経過するにつれてメモリー領域を1つずつ消費していくと考えてください。2,147,483,647秒が領域の限界ですから、この時刻より1秒でも多くなると、一度リセットされてしまい最初の0から再スタートしてしまうのです。2,147,483,647秒まで時が刻まれていたものが、突然0に戻ってしまうのですから、当然日付が1970年1月1日に戻ってしまうことになります。その2,147,483,647秒経過した月日が2038年1月18日ということだそうです。

時計機能が混乱してしまうと、色々な事に不具合が起こり始めます。例えば、時間管理されている航空便のダイヤグラムも狂いますし、発電所から電気の供給がストップしてしまうことにもなりかねません。とにかくコンピューターによって制御されている業務全てに支障がでることになります。

この問題を解決するには修正パッチで解決するのは不可能に近いらしく、OSのプログラムソースを書き直して、再度コンパイルしなければいけないとか。。。そうなると、今出回っているOSの全てが使えなくなる、買い換えなければならなくなるという事になります。マイクロソフトはこの問題にどう対処するのか今から見ものです。今出回っているOSは全て2038年までの寿命という事ですね。その頃には2038年問題対応OSが発売されることでしょう。っていうか、その頃まで古いOS使ってないだろうけど。でも、時計機能が内蔵されている機器全てだからビデオとかテレビとか買い換えるのは大変なことですよね。。。