Unix Epoch объяснен
Почему Unix timestamp начинаются с 1 января 1970 года? Этот, казалось бы, произвольный выбор имеет интересную историю и практическое обоснование. Понимание epoch помогает вам работать с timestamp более эффективно.
Почему 1 января 1970?
Epoch — 1 января 1970 года, 00:00:00 UTC — был выбран во время раннего развития Unix в конце 1960-х и начале 1970-х годов. Это был не произвольный выбор, а практическое решение, основанное на нескольких факторах. Первая версия Unix была разработана в 1969 году, и выбор 1 января 1970 года как точки отсчета времени был удобным "началом новой эры" в вычислениях. Это был круглый год, близкий к началу системы. 32-битные системы могли представлять timestamp как подписанные целые числа. С epoch в 1970 году положительные числа покрывают будущее, в то время как отрицательные числа могут представлять прошлое, если необходимо. Это обеспечивало гибкость для исторических дат, сохраняя при этом простые положительные числа для обычного использования. Выбор 1 января был логичным началом года. UTC (00:00:00) обеспечивал одну универсальную точку отсчета времени без двусмысленности временных зон. Ранние Unix системы имели 32-битные timestamp, обеспечивающие диапазон от 13 декабря 1901 года до 19 января 2038 года. Epoch в 1970 году максимизировал полезный будущий диапазон, оставаясь при этом полезным для прошлых дат до 1901 года. Выбор стал стандартом и теперь используется повсеместно в вычислениях, даже на системах без связи с Unix. Изменение его разрушило бы совместимость с десятилетиями систем и данных.
Попробовать инструмент
Конвертер Timestamp