対応が難しい「2038年問題」、人気OSSでも対策はまだという不安な実態
2024.12.13 日経コンピュータ
協定世界時(UTC)で2038年1月19日午前3時14分08秒になると、プログラムがエラーを起こす「2038年問題」。
この問題への対応は難しく、インターネットで公開されている人気のオープンソースソフトウエア(OSS)であっても課題が多く残っていることが、立命館大学の研究チームによる調査で明らかになった。
2038年問題は、1970年1月1日0時0分0秒からの経過時間で時刻を表現する「UNIX時間」を採用するシステムで、経過上限の約21億秒を超えることで発生するトラブルである。
https://xtech.nikkei.com/atcl/nxt/column/18/00989/121000165/
引用元: ・UNIX系のOS。2038年1月19日午前3時14分08秒になると暴走することが判明 [896590257]
UNIX時間を32ビットの符号付き整数で定義している場合、上限値を超えると時刻データの最初のビットが負の数を表す「1」となるため、時刻が1970年1月1日0時0分0秒から約21億秒巻き戻った1901年12月13日20時45分52秒になる。時刻がおかしくなることで、プログラムにエラーが発生して異常終了したり、表示がおかしくなったりする不具合が発生する。
UNIX時間は、商用UNIXやLinuxなど様々なUNIX系のOSに加えて、もともとはUNIX用のプログラミング言語として開発されたC言語で使われている。1970年代にUNIXをベースにしたOS規格である「POSIX(Portable Operating System Interface for UNIX)」が米国の標準となり、米国政府が調達するシステムに採用されるようになったことから、UNIX時間は幅広い分野で使われている。
↓
コメント