ПОДХОД К РЕШЕНИЮ ПРОБЛЕМЫ ВЗАИМНЫХ БЛОКИРОВОК В МНОГОПОТОЧНОМ ПРОГРАММНОМ ОБЕСПЕЧЕНИИ

И. В. Парфилов, П. А. Силин, Ю. Ю. Шумилов

Аннотация


Особенностью многопоточных программ являются ошибки синхронизации, которые трудно воспроизвести и выявить. Типичный пример таких ошибок — взаимные блокировки — ситуации, когда группа потоков заблокирована, поскольку каждый из потоков пытается захватить исключающий семафор, который удерживается другим потоком группы. В статье рассматривается подход к решению данной проблемы, основанный на проверке модели.

Ключевые слова


многопоточная программа; взаимная блокировка; средство синхронизации

Полный текст:

PDF

Литература


1 Bensalem S., Havelund K. Dynamic Deadlock Analysis of Multi-threaded Programs // Haifa Verification Conference / Shmuel Ur, Eyal Bin, and Yaron Wolfsthal, ed. Vol. 3875 of LNCS. Springer, 2005. P. 208—223.

2 Engler D., Ashcraft K. RacerX: Effective, Static Detection of Race Conditions and Deadlocks // Proceedings of the 19th ACM Symposium on Operating Systems Principles. Oct. 2003. P. 237—252.

3 Дал У., Дейкстра Э., Хоор К. Структурное программирование. 1-е изд. М.: Мир, 1975.


Ссылки

  • На текущий момент ссылки отсутствуют.


Лицензия Creative Commons
Это произведение доступно по лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная.