Подробное описание документа
Ковега Д. Н.
Использование системы LLVM при динамическом поиске состояний гонок в программах / Ковега Д. Н., Крищенко В. А. - DOI 10.18698/2308-6033-2013-2-549 // Инженерный журнал: наука и инновации. - 2013. - № 2. -
В многопоточных программах может возникать состояние гонок ввиду отсутствия синхронизации при доступе к памяти. Для сбора информации о событиях динамическими методами выявления таких гонок требуется либо виртуальная машина, либо инструментирование исполняемого кода. В работе предложен метод динамического поиска гонок, использующий отношение предшествования и ограничение истории обращений. Метод реализован для анализа программ на языке С, для инструментирования исходного кода на этапе трансляции используется система LLVM. Как показывают проведенные эксперименты, применение предложенного метода позволяет сохранить накладные расходы на поиск гонок на приемлемом уровне.
