Вышла версия 2.5.15 библиотеки DUMA (Detect Unintended Memory Access), распространяемой в рамках лицензии GPL и предназначенной для обнаружения проблем с выделением памяти в C/C++ программах.
Библиотека обладает следующими возможностями:
* "Перегружает" стандартные функции выделения/освобождения памяти, такие как malloc(), calloc(), memalign(), strdup(), new, new[], free(), delete, delete[];
* Обнаруживает несоответствия функций выделения/освобождения памяти, например выделение памяти с помощью malloc() и освобождение с помощью delete;
* Обнаруживает утечки памяти;
* Обнаруживает попытки доступа к освобождённой памяти;
* Останавливает выполнение программы на той команде, которая вызывает ошибку доступа к защищенной странице памяти. Это позволяет затем с помощью отладчика найти соответствующую этой операции строку в исходном коде программы;
* Предварительная загрузка библиотеки на Linux системах позволяет провести тесты без изменения исходного кода программы и перекомпиляции.
В директории "comparisons" архива с исходными кодами приведено сравнение библиотеки с аналогами, а также примеры, с помощью которых можно осуществить тестирование инструментов для обнаружения проблем с выделением памяти.
Комментариев нет:
Отправить комментарий