На днях во всем мире вышли из строя многие GPS–навигаторы. И страшен, скорее, не сам сбой, а непредсказуемость последующих подобных ситуаций.
Берег Слоновой Кости (нынешний Кот–Д’Ивуар). 17 июля 1963 года. Африканское государство разрывает консульские отношения с Португалией. В это же время проходят безрезультатные попытки дипломатов КНР и СССР урегулировать идеологический советско–китайский раскол. Через несколько месяцев Ли Харви Освальд совершит убийство Джона Кеннеди.
Очевидцами всех этих событий, по мнению GPS–навигаторов, сегодня стали автомобилисты во всех странах мира. Из–за массового сбоя пользователей систем "раскидало" по прошлому веку. Многих пользователей России, в частности, перенесло как раз в июль 1963 года.
Назад в будущее
По словам игроков рынка, о грядущей проблеме было известно заранее — причем настолько заранее, что ее решение постоянно откладывалось. На подготовку к сбою у разработчиков было без малого 20 лет.
"В 1980 году, когда система GPS впервые начала отслеживать время, данные были представлены счетчиком, который мог отсчитывать максимум до 1024 недель, что составляет 19 лет и 8 месяцев. По истечении 1024 недель этот счетчик "сбрасывается" на ноль, и время GPS снова начинает отсчет", — еще в марте объяснили своим пользователям представители российского отделения производителя GPS–навигаторов Garmin.
Проблема же заключается в том, что в некоторых модулях попросту не был предусмотрен автоматический сброс счетчика недель.
Впервые подобный "ролловер" случился в августе 1999 года. Тогда он прошел почти безболезненно, поскольку пользователей GPS было значительно меньше. Следующий навигационный мини–коллапс пришелся на апрель 2019 года.
Это привело к различным сбоям: системы не только показывают неверное время, но и регулярно перезагружаются, на некоторых устройствах бесконтрольно повышается громкость.
Игроки рынка пока не берутся оценить ущерб или хотя бы масштаб произошедшего: некоторые из них сообщили, что в первые дни получили несколько тысяч обращений в техподдержку. Впрочем, другие представители отрасли подготовились к этому заранее, у них жалоб нет.
Чтобы переместить пользователей назад если не в будущее, то хотя бы в настоящее, разработчикам приходится придумывать своего рода припарки на ходу.
"В первую очередь для решения проблемы мы рекомендовали нашим пользователям отключить GPS–антенну от устройств, чтобы некорректно обработанные данные с GPS не мешали нормальному функционированию магнитол, — рассказывает генеральный директор "Пилот Навигатор" Олег Карпинский.
По его словам, компания направила запросы производителям GPS–чипов, но они пока остаются без ответа, поэтому приходится создавать патчи самостоятельно.
Недооцененные риски
Произошедшее уже сравнивают с ситуацией 2000 года, когда ожидалось, что из–за технических особенностей вслед за 1999 годом в компьютерах "наступит" 1900 год. Это привело бы к массовому сбою всех цифровых систем.
Проблему решили с помощью специальных обновлений. Их разработка, к слову, принесла создателям немалую прибыль. Но при этом говорят, что ни один компьютер в мире, где об обновлениях даже не слышали, тоже не пострадал.
В недалеком будущем программисты ждут "проблему 2038". На 32–битных компьютерных системах отсчет времени ведется от начала 1970 года, а его максимальное значение — примерно 2,1 млрд секунд. Еще через секунду все системы якобы снова выйдут из строя. Решать эту проблему придется очередными обновлениями.
Шутки шутками, но за подобными ограничениями кроется серьезная проблема, о которой пока говорят нечасто. Многие современные программные коды пишутся на базе так называемых "первокодов" из прошлого века. Тогда разработчики не учитывали специфику использования тех же GPS–модулей, не знали, насколько они станут распространенными и стратегически важными. Для сравнения: в том же 1999 году, по официальной статистике, мировой объем рынка GPS достигал $6 млрд. В 2017 году, по оценкам Grand View Research, он уже превысил $37,9 млрд, а к 2025–му увеличится до $146,4 млрд.
По мнению экспертов, во многих программных кодах могут быть ошибки и особенности, заложенные первыми разработчиками. Поэтому создателям условных космических ракет придется также быть программистами, чтобы держать ситуацию под контролем.
В этом контексте полезно вспомнить две авиакатастрофы, которые произошли подряд менее чем за полгода. В октябре 2018 года Boeing 737 MAX разбился в Индонезии. В марте 2019 года такой же самолет упал в Эфиопии. Президент США Дональд Трамп тут же временно запретил использовать эти самолеты. Точные причины аварий пока неизвестны, но предварительно эксперты полагают, что катастрофы связаны с ошибками в программном обеспечении.
И что характерно: по данным китайских СМИ, нескольким самолетам Boeing 787 запретили вылет, поскольку на них также сбились дата и время.
"А теперь представьте, что на автостраде среди обычных автомобилей едет множество беспилотников, которые так же в самый неподходящий момент выйдут из строя, — размышляет член–корреспондент Российской академии космонавтики Андрей Ионин. — Мы говорим о том, что нам нужно развивать цифровую экономику, но никто не думает о возрастающих при этом рисках того же сбоя программного обеспечения".