Google помогла устранить более тысячи проблем в исходном коде проекта FFmpeg

Google помогла устранить множество проблем в исходном коде проекта FFmpeg

Корпорация Google поделилась деталями проекта, связанного с поиском и устранением ошибок в открытом мультимедиа пакете FFmpeg, который, как оказалось, активно используется внутри корпорации и в её продуктах, включая YouTube и Google Chrome.

В течение последних двух лет для процесса тестирования кодовой базы были задействованы 500 компьютерных ядер, а также исходный мультимедиа материал, собранный со всего интернета, включая файлы из самого проекта, находящиеся на сайте samples.mplayerhq.hu и собственный набор для тестирования регрессий проекта FFmpeg под названием FATE.

Тестирование заключалось в изменении исходных файлов и добавлении разнообразного случайного мусора с тем, чтобы выявить проблемы в функциях, занятых обработкой исходного материала для кодирования и декодирования - в компьютерной среде этот способ обыкновенно называется fuzzing. Другой способ тестирования - это прямой вызов функций библиотеки с не совсем корректными данными, чтобы проверить надёжность обработки подобной информации. Впоследствии, проект был расширен до 2000 ядер, а методы мутации исходных материалов были сделаны более разнообразными, пишет opennet.ru.

В ходе работы над проектом было выявлено более 1120 ошибок, которые уже устранены. Найденные ошибки можно разделить на следующие классы:

  • Разыменование NULL-указателей;
  • Неверные вычисления указателей, приводящие к SIGSEGV из-за использования "чужой" памяти;
  • Чтение и запись за пределы стека, кучи и массивов;
  • Неверные вызовы free(), а также двойное освобождение указателей;
  • Ошибки деления;
  • Ошибки assert();
  • Использование неинициализированной памяти.

Google таким же образом помогла форку FFmpeg, libav, в котором было устранено 413 ошибок.

Подпишитесь на новости

Гособлако недогрузили на 2,7 млрд рублей, Минцифры объяснило причины

На ресурсы «Гособлака», не достигавшие целевой загрузки, потратили 2,7 млрд рублей. Такой вывод сделала Счётная палата после проверки работы платформы в 2023-2026 годах. В отдельных случаях мощности были загружены менее чем наполовину.

Как пишут «Ведомости», ознакомившиеся с отчётом аудиторов, один из примеров — виртуальная оперативная память в тестовой среде Социального фонда.

Её загрузка большую часть исследованного периода оставалась ниже установленного порога в 80%.

Минцифры возражает: низкая загрузка ещё не означает, что ресурсы бесполезны. Мощности резервируют для отказоустойчивости, нагрузка меняется из-за сезонности и разработки систем. Убрать запас — значит рисковать сбоями при её резком росте.

В отчёте есть и другая претензия: Минцифры предъявило «Ростелекому» неустойки на 1,35 млрд рублей. Замечания касались доступности систем, сведений о соисполнителях и отчётности об использовании ресурсов. Поставщик от комментариев отказался.

При этом аудиторы зафиксировали экономию: управление ресурсами позволило сократить первоначально запланированные заказы на 16,6 млрд рублей, или 30,2%.

RSS: Новости на портале Anti-Malware.ru