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