概要
コンピュータープログラムが2038年の特定の時間を迎えると、誤作動する可能性があるとされる年問題。
コンピューターおよびソフトウェアの時刻表現にかつて広く用いられていた32ビット整数型のUNIX時間が2038年1月19日午前3時14分7秒(UTC±0)を過ぎると内部でオーバーフローを起こすことによる。
2000年問題と違うのは、2000年問題は仮に問題があるコードがプログラムに含まれていてもプログラム単位で修正してしまえばそれでおしまいなのだが、2038年問題の場合C言語処理系やOSのAPIというシステムの深い部分にまで関わってくるため、影響範囲が読みにくい点にある。APIは複数のプログラムが使用するものであり、そのAPIを使用する全プログラムを修正しないとプログラムが誤作動を起こしたり、そもそも動かなくなったりするからである。
近年のプログラムについては64ビットの処理系を使って構築されており、2038年問題について心配する必要は無いとされる。なので2038年問題を心配する必要があるのは32ビットの処理系に依存した古いシステムである。なお、Windowsの32ビット版であるWin32 APIの場合は内部時刻を64ビットで表現しているため2038年問題は基本的に発生しないが、古いバージョンの開発環境を使って開発されたソフトウェアの場合は2038年問題を抱えていることもある。