В наши дни для, например, разработки игр уже нет нужды самостоятельно с нуля реализовывать физику объектов, так как для этого существует большое число библиотек. Bullet в свое время активно использовался во многих ААА играх, проектах виртуальной реальности, различных симуляциях и машинном обучении. Да и используется до сих пор, являясь, например, одним из движков Red Dead Redemption и Red Dead Redemption 2. Так что почему бы не проверить Bullet с помощью PVS-Studio, чтобы посмотреть, какие ошибки сможет выявить статический анализ в таком масштабном проекте, связанном с симуляцией физики.
Читать полностью »
Рубрика «open source» - 81
PVS-Studio заглянул в движок Red Dead Redemption — Bullet
2019-07-30 в 7:18, admin, рубрики: c++, Gamedev, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, разработка игрБиблиотеки Electronic Arts почти хорошего качества
2019-07-29 в 6:35, admin, рубрики: C, c++, ea games, Electronic Arts, open source, pvs-studio, static analysis, Блог компании PVS-Studio, разработка игрНаше внимание привлёк репозиторий Electronic Arts на GitHub. Он очень маленький и из двадцати трёх проектов нас заинтересовали только несколько C++ библиотек: EASTL, EAStdC, EABase, EAThread, EATest, EAMain и EAAssert. Проекты оказались тоже очень маленькими (около 10 файлов), поэтому мы нашли ошибки только в «самом большом» из 20 файлов :D Но нашли, и интересные! Пока писалась заметка, мы с коллегами также бурно обсудили игры компании EA и её стратегию :D
Часть 5-2 корп. 1: Перекрёсток проспекта RocketChip и скользкой дорожки инструментации
2019-07-28 в 9:54, admin, рубрики: C, eBPF, fpga, open source, risc-v, rocc, rocketchip, scala, инструментация, ненормальное программированиеВ предыдущих четырёх частях велась подготовка к экспериментам с RISC-V ядром RocketChip, а именно, портирование этого ядра на «нестандартную» для него плату с ПЛИС фирмы Altera (теперь уже Intel). Наконец, в прошлой части на этой плате получилось запустить Linux. Знаете, что меня во всём этом забавляло? То, что одновременно приходилось работать с ассемблером RISC-V, C и Scala, и из всех них Scala была самым низкоуровневым языком (потому что именно на ней написан процессор).
Давайте в этой статье сделаем так, чтобы C тоже не было обидно. Более того, если связка Scala+Chisel использовалась лишь как domain-specific language для явного описания аппаратуры, то сегодня мы научимся «затягивать» простенькие функции на C в процессор в виде инструкций.
Конечная же цель — тривиальная реализация тривиальных AFL-like инструментаций по аналогии с QInst, а реализация отдельностоящих инструкций — лишь побочный продукт.
ОС для контейнеров Fedora CoreOS продолжит развитие Fedora Atomic и Container Linux
2019-07-27 в 8:13, admin, рубрики: coreos, Fedora, linux, open source, red hat, Блог компании Флант, контейнеры, Настройка Linux, системное администрированиеНа этой неделе состоялся анонс первой предварительной версии Fedora CoreOS — специальной редакции Linux-дистрибутива Fedora, предназначенной для запуска приложений в контейнерах. По факту новая система продолжила развитие двух других проектов: Fedora Atomic Host и CoreOS Container Linux.
Лучшие Copy-Paste алгоритмы для C и C++. Сборник рецептов Haiku OS
2019-07-26 в 16:38, admin, рубрики: C, c++, Haiku, open source, pvs-studio, Блог компании PVS-Studio, СофтМногочисленные опечатки и Copy-Paste код стали темой для дополнительной статьи о проверке кода Haiku анализатором PVS-Studio. Впрочем, будут ошибки, связанные не сколько с опечатками, а скорее с невнимательностью и неудачным рефакторингом. Найденные примеры ошибок демонстрируют, насколько силён человеческий фактор в разработке программного обеспечения.
Microsoft блокирует аккаунты иранцев по национальному признаку
2019-07-26 в 16:13, admin, рубрики: github, open source, Законодательство в IT, правилатакиеправилаО курьёзах американского права вновь. Из-за санкций США против Ирана GitHub заблокировал все аккаунты иранских разработчиков без возможности скачать свои данные после ограничение доступа к репозиториям. Причём блокировка происходит не по IP, а по национальному признаку. Об этом свидетельствует иранский разработчик из Финляндии:
Балансировка нагрузки в Openstack
2019-07-26 в 13:30, admin, рубрики: open source, openstack, watcher, балансировка нагрузки, Блог компании Ростелеком, Ростелеком, ТиониксВ крупных облачных системах особенно остро стоит вопрос автоматической балансировки или выравнивания нагрузки на вычислительные ресурсы. Озаботились данным вопросом и в Тиониксе (разработчик и оператор облачных услуг, входим в группу компаний Ростелекома).
И, поскольку нашей основной платформой разработки является Openstack, а мы, как и все люди, ленивы, то было решено подобрать какой-то готовый модуль, что уже есть в составе платформы. Наш выбор пал на Watcher, который мы и решили использовать для своих нужд.
Для начала разберемся с терминами и определениями.
Читать полностью »
Мой второй день с Haiku: восхищен, но пока не готов перейти
2019-07-26 в 8:37, admin, рубрики: bug reports, Haiku, linux, open source, testing, Блог компании Southbridge, системное администрирование, Софт
TL;DR: я восхищен Haiku, но доработать есть что
Вчера я изучал Haiku — операционную систему, которая меня приятно удивила. День второй. Поймите правильно: я все еще восхищен тем, насколько легко она делает то, что тяжело дается на рабочих окружениях для Linux. Горю желанием узнать, как она работает, а также полон энтузиазма использовать ее ежедневно. Правда, день для полного перехода еще не наступил: страдать не хочется.
Как выстрелить себе в ногу в C и C++. Сборник рецептов Haiku OS
2019-07-25 в 6:13, admin, рубрики: C, c++, Haiku, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, СофтИстория встречи статического анализатора PVS-Studio с кодом операционной системы Haiku уходит в далёкий 2015-й год. Это был интереснейший эксперимент и полезный опыт для команд обоих проектов. Почему эксперимент? Анализатора для Linux тогда не было и не будет ещё полтора года. Но труды энтузиастов нашей команды были вознаграждены: мы познакомились с разработчиками Haiku и повысили качество кода, пополнили базу редкими ошибками программистов и доработали анализатор. Сейчас проверить код Haiku на наличие ошибок можно легко и быстро.
How to shoot yourself in the foot in C and C++. Haiku OS Cookbook
2019-07-25 в 6:09, admin, рубрики: C, c++, Haiku, open source, pvs-studio, static code analysis, Блог компании PVS-StudioThe story of how the PVS-Studio static analyzer and the Haiku OS code met goes back to the year 2015. It was an exciting experiment and useful experience for teams of both projects. Why the experiment? At that moment, we didn't have the analyzer for Linux and we wouldn't have it for another year and a half. Anyway, efforts of enthusiasts from our team have been rewarded: we got acquainted with Haiku developers and increased the code quality, widened our error base with rare bugs made by developers and refined the analyzer. Now you can check the Haiku code for errors easily and quickly.