что такое 1970 часов

Заблуждения программистов о Unix-времени

Вчера Дэнни поинтересовался любопытными фактами о Unix-времени, а я вспомнил, что иногда оно работает совершенно неинтуитивно.

Вот эти три факта кажутся в высшей степени разумными и логичными, не так ли?


Настольные часы 1770-х годов. Собрано Джоном Леру. Из коллекции Wellcome. Опубликовано под лицензией CC BY

У всех трёх заблуждений одна причина: високосные секунды. Если вы не знакомы с дополнительными секундами, вот краткая справка:

Время UTC определяется двумя факторами:

Когда два времени выпадают из синхрона, в UTC добавляется или удаляется секунда, чтобы вернуть синхронизацию. С 1972 года служба IERS (которая управляет этим делом) добавила 27 дополнительных секунд. В результате получилось 27 суток UTC продолжительностью в 86 401 секунду. Теоретически возможно появление суток продолжительностью 86 399 секунд (минус одна). Оба варианта противоречат фундаментальному предположению о Unix-времени.

Время Unix предполагает, что каждый день длится ровно 86 400 секунд (60 × 60 × 24 = 86 400), без всяких дополнительных секунд. Если происходит такой скачок, то время Unix либо перепрыгивает через секунду, либо отсчитывая две секунды за одну. По состоянию на 2019 год в нём отсутствует 27 високосных секунд.

Так что наши заблуждения нужно дополнить следующим образом:

До сих пор на практике секунды никогда не удалялись (и замедление вращения Земли означает, что это маловероятно), но если бы это когда-либо произошло, это означало бы, что день UTC стал на одну секунду короче. В этом случае последняя секунда UTC (23:59:59) отбрасывается.

В каждых сутках Unix одинаковое количество секунд, поэтому последняя Unix-секунда укороченного дня не будет соответствовать никакому времени UTC. Вот как это выглядит, в интервалах по четверти секунды:

Читайте также:  что значит буква е в спотифай

Это уже 27 раз произошло на практике. По окончании суток UTC добавляют дополнительную секунду 23:59:60. В сутках Unix одинаковое количество секунд, поэтому он не может добавить дополнительную секунду — вместо этого приходится повторять метки времени Unix для последней секунды. Вот как это выглядит, в интервалах по четверти секунды:

Если стартовать в 23:59:60.50 и подождать полсекунды, время Unix возвращается на полсекунды, а метка времени Unix 101 соответствует двум секундам UTC.

Вероятно, это не единственные странности времени Unix — только то, что я вчера вспомнил.

Источник

Android-пользователи «ВКонтакте» пожаловались на пустые сообщения из 1970 года

Пользователи официального приложения «ВКонтакте» для Android сообщают о возвращении пользователя null null и ошибки, приводящей к закрытию мобильного клиента. Всплеск жалоб наблюдается после обновления от 9 февраля 2015 года.

Ошибку вызывает появление пустого сообщения от пользователя null null в диалогах. Попытка открыть его приводит к завершению работы мобильного приложения. Некоторые пользователи социальной сети после экстренного завершения работы отмечают пропажу других диалогов.

Пользователи соцсети предположили вирусное происхождение ошибки, но это уже опроверг руководитель пресс-службы «ВКонтакте» Георгий Лобушкин. «Проблема возникает при обращении к серверу через медленный мобильный интернет. Исправление ошибки затруднено ее редкостью и тем, что ее почти невозможно воспроизвести. Но отдел разработки уже ищет решение», — сказал он.

Представитель соцсети добавил, что впервые столкнулся с такой ошибкой только сейчас. Однако поиск показал, что пользователи мобильной версии официального приложения «ВКонтакте» для Android уже жаловались на похожие симптомы осенью 2014 года. В конце января 2015-го об аналогичном поведении сообщили бета-тестировщики неофициального мобильного клиента Candy. В некоторых случаях сообщение от null null появлялось после удаления диалогов.

Читайте также:  что значит этническое происхождение

Ник null null является именем пользователя «по умолчанию», когда не введены ни имя, ни фамилия, а 1 января 1970 года — это дата, от которой ведется исчисление так называемого UNIX-времени, иногда также называется «компьютерным временем».

Источник

Строительный портал