Sanitizer. Алгоритм поиска deadlock.
Вам нужно реализовать Google TSan алгоритм поиска deadlock в многопоточном коде
с использование механизма LD_PRELOAD.
Алгоритм: Вершинами графа являются мьютексы. Строится граф в котором проводится направленное ребро в порядке захвата мьютексов. Если в графе существует цикл,
то значит в коде возможен потенциальный deadlock.
Необходимо выполнить три пункта:
1. Разработать разделяемую библиотеку sanitizer.so
2. Разработать как минимум три теста на которых показать что разработанный алгоритм работает. Тесты должны быть в отдельной директории со своим Makefile и
скриптами для запуска
3. Если в коде существует потенциальный deadlock, то должна быть выведена полезная информация, которая позволит понять где этот deadlock произошел
Могу прислать готовый пример. Код должен быть предельно задокументирован (чтобы я понял, что там происходит) и очень желательно отдельное текстовое описание с ответами на основные вопросы и описанием работы (для защиты программы у преподавателя)
Андрей
пгути
Спасибо большое!!! Очень хороший адекватный исполнитель, очень рекомендую!!!!!!
Александр
Московский Политех
хороший исполнитель, задания выполнены с подробным объяснением и досрочно
Антон
ИрНИТУ (бывш. ИрГТУ)
Решение внятное, выполнение заказа прошло настолько быстро, будто исполнитель решил его за...
Александр
МЭИ
Исполнитель молодец! Срок на выполнение ставил неделю, исполнитель справился за день. За к...