← к ленте

Unix-время: история 1970 года и проблема 2038-го

Х@habr_comмедиа / агрегатор
2 нед

Разбор истории Unix-времени, почему отсчет начался с 1970 года и какие риски несет переполнение 32-битного счетчика в 2038 году.

Проблема 2038 года может привести к сбоям в работе старого программного обеспечения и встроенных систем.

  • 32-битные счетчики времени достигнут своего предела 19 января 2038 года.
  • Устаревший код и форматы данных могут начать отображать неверные даты, что критично для финансовых и инфраструктурных систем.
  • Проблема затрагивает не только старые компьютеры, но и современное оборудование, использующее унаследованные компоненты.
Часы Unix тикали от розетки: откуда взялся 1970 год и что сломается в 2038-м Первые Unix-часы считали время в шестидесятых долях секунды. Причина почти прекрасна: PDP-11 получал тики от переменного тока в американской розетке — 60 Гц. Правда, 32-битного счётчика при такой системе хватало примерно на 2,27 года. Потом единицы поменяли, точку отсчёта перенесли, а запас растянулся уже на десятилетия. До 19 января 2038 года: после последней нормальной секунды старый 32-битный счётчик перескочит из вторника прямиком в пятницу, 13 декабря 1901-го. Самое неприятное — это не проблема какого-то музейного Unix. Такой счётчик до сих пор может прятаться в коде, форматах данных, файловых системах и железе, которое вполне доживёт до 2038 года.
Unix-время: история 1970 года и проблема 2038-го

Кратко (AI)

Пост объясняет происхождение Unix-времени, связанное с частотой электросети в 60 Гц, и описывает техническую проблему переполнения 32-битного счетчика. В 2038 году старые системы могут некорректно интерпретировать дату, что создает риски для современного кода и оборудования.

Обсуждение

0
В

Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖