Что такое проблема 2038 года и как она уничтожит Linux
В Linux некоторые даты хранятся в UNIX-формате. Формат представляет собой число секунд, прошедших с 1 января 1970 года. Под хранение этих данных выделено 32 бита, причем один бит зачем-то отдан на знак (тип signed int). Получается, что сначала счетчик дойдет до 2 147 483 647, а потом время станет отрицательным, компьютеры сойдут с ума и перебьют всех человеков.

До Армагеддона еще больше 20 лет, а лучшие умы современности уже заняты поисками решения. А чего бы и не поискать, если вспомнить, сколько удалось распилить на другой смертельной угрозе — Y2K Bug. Пользователям объяснили, смена 1999 года на 2000-й при хранении только 2 последних чисел года приведет о обнулению даты, электростанции взорвутся, в тюрьмах сами откроются ворота и зэки изнасилуют всё, что осталось более-менее живым после ядерной катастрофы. А чтобы избежать этого неприятного сценария достаточно купить новую версию программы. Новой в ней только 4 разряда под хранение года и красочная наклейка Y2K-compatible. Кто-то на таких наклейках сделал состояние.
Предложено сразу два решения проблемы 2038 года. Во-первых, можно сделать знаковый тип беззнаковым. Всего один бит подарит еще десятилетия отсрочки. А можно сделать переменную 64-битной и тогда проблема вернется только через 292 миллиарда лет.