Почему 1/1/1970 «время эпохи»?

Почему

1 января 1970 года 00:00:00

считается эпохой ?

    Ранние версии unix измеряли системное время с интервалом 1/60 с. Это означало, что 32-разрядное целое число без знака может представлять только промежуток времени менее 829 дней. По этой причине время, представленное числом 0 (называемое эпохой ), должно было быть установлено в самом недавнем прошлом. Как это было в начале 1970-х годов, эпоха была установлена ​​в 1971-1-1.

    Позже системное время было изменено на инкремент каждую секунду, что увеличило промежуток времени, который может быть представлен 32-разрядным целым без знака примерно до 136 лет. Поскольку уже не так важно выжимать каждую секунду из прилавка, эпоха округлялась до ближайшего десятилетия, становясь, таким образом, 1970-1-1. Нужно предположить, что это считалось немного более аккуратным, чем 1971-1-1.

    Обратите внимание, что 32-разрядное целое число со знаком с использованием 1970-1-1 как его эпоха может представлять даты до 2038-1-19 , после чего оно будет округлено до 1901-12-13.

    История .

    Самые ранние версии Unix-времени имели 32-битное целое число, увеличивающееся со скоростью 60 Гц, это была скорость системных часов на аппаратных средствах ранних Unix-систем. В результате в некоторых программных интерфейсах по-прежнему появляется значение 60 Гц. Эпоха также отличалась от текущей. Первое издание Unix Programmer’s Manual от 3 ноября 1971 года определяет время Unix как «время с 00:00:00, 1 января 1971 года, измеренное в шестидесятые секунды».

    http://en.wikipedia.org/wiki/Unix_time#History немного объясняет происхождение Unix-времени и выбранной эпохи. Определение времени unix и даты эпохи прошло через пару изменений, прежде чем стабилизировать то, что сейчас.

    Но он не говорит, почему именно 1/1/1970 был выбран в конце.

    Заметные выдержки со страницы Википедии:

    Первое издание Unix Programmer’s Manual от 3 ноября 1971 года определяет время Unix как «время с 00:00:00, 1 января 1971 года , измеренное в шестидесятые секунды».

    Из-за ограниченного диапазона, эпоха была переопределена более одного раза , прежде чем скорость была изменена на 1 Гц, а эпоха была установлена ​​на ее нынешнюю величину.

    Несколько более поздних проблем, включая сложность настоящего определения, являются результатом времени Unix, которое было определено постепенно с использованием, а не полностью определено для начала.

    Короткий ответ: Почему бы и нет?

    Более длительный ответ: само время не имеет значения, если все, кто его использует, согласны с его стоимостью. Поскольку 1/1/70 используется так долго, использование этого кода сделает ваш код максимально понятным для как можно большего числа людей.

    Нет никакой большой заслуги в выборе произвольной эпохи, чтобы быть другой.