Понедельник, 4 ноября, 2024

24 октября 2021 ожидаются сбои в приложениях

Распространенный в ИТ-отрасли подход к использованию компонентов, которые добровольно поддерживаются одним человеком, может привести к массовому сбоя приложений. В компоненте Gpsd обнаружили баг с 2002 года, который проявит себя именно 24 октября 2021. Этот компонент используется в Android, Linux, macOS, других Unix-системах. Сайт gpsd сообщает, что этот компонент используется в автономных дроны, автомобилях, субмаринах, морской навигации, военных системах идентификации свой-чужой.

После пятницы 24 октября программы, которые полагаются на gpsd для обработки данных о времени, могут обнаружить, что они живут 19,6 лет в прошлом. Ошибка в gpsd возвращает часы на 1024 недели назад -в марте 2002.

О баг в программировании gpsd публично сообщили 24 июля 2021, и эту ошибку, которую написали два года назад, исправили. Но не каждая программа и устройство, использующее gpsd, установили исправления.

Сетевой протокол времени (NTP) позволяет устройствам и службам получать точное время с помощью иерархического набора серверов, имеющих рейтинг точности, а «казнь 0» представляет точные источники времени.

Gpsd — это служебный демон, преобразует данные из глобальной системы позиционирования (GPS), Глобальной навигационной спутниковой системы (GNSS) и Системы автоматической идентификации (AIS) в общий формат, пригодный для клиентских программ.

Этот формат используется для предоставления информации о часах точное время.

Gpsd широко используется. Он реализован в таких программах, как Kismet, GpsDrive, gpeGPS, roadmap, roadnav, navit, viking, tangogps, foxtrot, obdgpslogger, geohist, LiveGPS, geoclue, qlandkartegt, gpredict, OpenCPN, gpsd-navigator, gpsd-ais-viewer и Firefox

Он доступен в операционных системах Android, Linux, macOS и других Unix-подобных.

Спутники GPS отслеживают количество недель, прошедших с 5 января 1980 года. Они передают номер недели 10-разрядное целое число без знака, которое может представлять значения от 0 до 1023. Итак, каждые 1024 недели, или 19,6 года, система возвращается назад в прошлое.

Впервые это произошло в конце субботы, 21 августа 1999 года. Второй раз это случилось в конце субботы, 6 апреля 2019 Третье переноса недели GPS состоится не раньше субботы, 20 ноября 2038.

Но ошибка в gpsd, связанная с процедурой проверки целостности в ожидании будущей високосной секунды, сбросит номер недели GPS после завершения субботы и начала воскресенья.

Гэри Миллер, специалист службы gpsd, признал ошибку — простой просчет. Ошибку внесли в конце 2019 и она существует в версиях 3.20, 3.21 и 3.22. Последняя официальная версия с исправлением — 3.23.1 от 9 сентября 2021 года.

Старые версии программного обеспечения, 3.19 и ранее, должны быть нормальными, поскольку они не содержат этого багу. Поэтому производители, чьи гаджеты годами не получили обновлений не пострадают.

Сопровождающие различных дистрибутивов Linux, обеспокоены тем, что ошибка может привести к «настоящей панической события Y2K», и они применили исправления. Debian и Ubuntu выпустили исправления.

Миллер, уже на пенсии, в телефонном разговоре сказал The Register, что поддерживает gpsd, потому что это интереснее, чем играть в судоку. Тем не менее, он был бы рад поддержке проекта, в частности оборудованием GPS, которое он мог бы использовать для тестирования.

«Какой случайный парень, который отказывается выходить сам, несколько месяцев назад использовал свой фирменный симулятор GPS, чтобы найти эту ошибку, — сказал он. — Я бы очень хотел, чтобы у меня было такое оборудование. Но большинство производителей GNSS просто игнорируют gpsd. Даже когда мы находим ошибки в их материалах «.

Миллер не уверен, что сможет назвать всех, кто использует программное обеспечение, которое он обслуживает. «Я точно знаю, что это используют много военных, — сказал он. — Я знаю, что это по крайней мере в одной ракетной системе. Мне сказали, что это в цистернах, грузовых автомобилях и часах для дайверов».

Миллер предположил, что финансовые компании также могут столкнуться с проблемами. По закону, по его словам, каждая рыночная сделка должна быть точно обозначена временем.

Євген
Євген
Евгений пишет для TechToday с 2012 года. По образованию инженер,. Увлекается реставрацией старых автомобилей.

Vodafone

Залишайтеся з нами

10,052Фанитак
1,445Послідовникислідувати
105Абонентипідписуватися