Обнаружение тупиков на мьютексах в многопоточных приложениях
Опубликовано: 15.10.2013
Авторы: Белоус В.С., Крищенко В.А., Рязанова Н.Ю.
Опубликовано в выпуске: #6(18)/2013
DOI: 10.18698/2308-6033-2013-6-771
Раздел: Информационные технологии
Статья посвящена разработке метода обнаружения тупиков при использовании в приложениях мьютексов, реализованных по стандарту POSIX. В рамках теории тупиков проанализирован и реализован способ получения информации о блокированных на мьютексах процессах. Показано, что обнаружение замкнутой цепи блокировок соответствует обнаружению цикла в графе запросов - распределений. Описан механизм включения в ядро средств перехвата функции ядра, которая управляет захватом и освобождением потоков на мьютексах. Предложен алгоритм обнаружения тупика на основе полученной информации.
Литература
[1] Хьюз Л., Хьюз Т. Параллельное и распределенное программирование на С++. Москва, Издательский дом "Вильямс", 2004, 672 с.
[2] Шоу А. Логическое проектирование операционных систем. Москва, Мир, 1981, 288 с.