Прыжок секунды в Windows
Недавно была добавлена дополнительная секунда 30 июня 2015 г. 23:59:60 UTC.
Как внедряются дополнительные секунды в Windows (особенно в Windows 7)?
5 ответов
Как служба Windows Time относится к високосной секунде
Служба времени Windows не указывает значение индикатора скачка, когда служба времени Windows получает пакет, содержащий високосную секунду. (Индикатор скачка указывает, следует ли вставлять или удалять предстоящую високосную секунду в последнюю минуту текущего дня.) Следовательно, после того, как происходит скачок секунды, клиент NTP, на котором запущена служба времени Windows, на одну секунду быстрее, чем фактическая время. Эта разница во времени разрешается при следующей синхронизации времени.
Windows обычно действует как NTP- клиент. Он просто будет своевременно обновляться во время следующего обновления с NTP-сервера, на котором явно есть методы обработки дополнительных секунд. Это произойдет, если ваша система настроена на синхронизацию времени через NTP. Если это не так, то ничего не произойдет, так как Windows 7 не имеет встроенных функций для решения дополнительных секунд
Они не реализованы.
Точно так же, как наручные часы, хронометраж ПК. Как уже упоминалось, Windows 7 использует NTP для синхронизации времени ПК с известным источником. Что эквивалентно тому, что вы время от времени настраиваете свои наручные часы.
Тем не менее, дополнительная секунда становится проблемой, если вы намереваетесь написать код, который включает в себя математику даты / времени, где важно количество секунд между двумя датами, И где эти вычисления должны совпадать с какой-либо внешней системой или данными, которые осведомлен о високосной секунде. Я изо всех сил пытаюсь думать о любых таких сценариях, но я предполагаю, что есть некоторые там.
Windows просто продолжает работать. В службе времени Windows не предусмотрены дополнительные секунды. Также важно отметить, что ни одна крупная операционная система не предоставляет резервных секунд.
На первый взгляд это может звучать странно. Если вы понимаете, для чего нужна дополнительная секунда и когда они добавляются, это становится очень просто.
Международная служба вращения Земли и системы отсчета контролирует вращение Земли на предмет нарушений. Некоторые факторы влияют на вращение Земли. К ним относятся приливное трение и таяние континентальных ледниковых щитов (изменения веса!). В совокупности земля замедляется очень немного.
Из Википедии:
Нисходящие секунды распределены неравномерно, потому что скорость вращения Земли изменяется неравномерно. Действительно, вращение Земли довольно непредсказуемо в долгосрочной перспективе, что объясняет, почему високосные секунды объявляются только за шесть месяцев.
Поскольку он является нерегулярным и объявляется по мере необходимости, все современные операционные системы используют протокол сетевого времени (NTP) для восстановления после високосной секунды. Это настолько распространенная и известная проблема без изящного решения, что азиатские рынки откладывали открытие на пять минут, чтобы дать компьютерам достаточно времени, чтобы проверить NTP для обновления времени в течение последней високосной секунды.
Microsoft не заботится о предоставлении сверхточного времени для клиентов Windows. Они срезали углы и не обрабатывали особых случаев, таких как високосные секунды для настольных клиентов. К счастью, NTP-серверы проводят лучшее время, поэтому просто продолжайте синхронизацию!
Служба W32Time не является полнофункциональным NTP-решением, которое отвечает потребностям приложения, зависящим от времени, и не поддерживается Microsoft как таковой.
Как указано в статье поддержки Windows, поддержка високосной секунды:
Windows Server 2019 и Windows 10 Обновление за октябрь 2018 поддерживают високосные секунды на платформе.
В статье поддержки также объясняется, как более ранние версии Windows НЕ поддерживают високосные секунды. В частности:
Обработка високосных секунд не обрабатывается отдельно операционной системой Windows (ОС). Например, информация о году, месяце, дате и времени в следующем формате не поддерживается ОС Windows:
гггг / мм / дд 08:59:60
Поэтому 2012/7/1 08:59:60 обрабатывается как 2012/7/1 09:00:00 в соответствии с форматом ISO 8601.