Обнаружение дедлока из шелл-скрипта

Задача: Обнаружим дедлок bash-скриптом и отдадим на выход exitcode 1.

Вос/произведем простейший дедлок, запустим ./ily.bin deadlock_off 1000000

ily.cpp:

Дедлок вычислим силами GDB – для этого подготовим следующий скрипт (futex_gdb_py), так как gdb поддерживает питон (через import gdb находим pthread_mutex_lock прямо в gdb)

команда x/3d показывает что им владеет процесс 20861
команда x/3d показывает что им владеет процесс 20860
команда thread 4 показывает что процесс 20860 ждет mutex2
команда thread 5 показывает что процесс 20861 ждет mutex1:

И, собственно сам скрипт bash, для простоты берём pid запущенного процесса по имени ily.bin:

Җавап калдыру



All fields are required. Your email address will not be published.

Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert