Обнаружить тупик в PinTool
Я пишу PinTool, который может манипулировать определенным значением регистра / памяти. Тем не менее, после манипуляции одна проблема, с которой я сталкиваюсь сейчас, это deadloop
,
В частности, из-за частых манипуляций с определенным значением регистра, действительно часто deadloop
в след исполнения. Я думаю обнаружить такой случай и прекратить казнь.
Итак, вот мой вопрос, что является хорошей практикой для обнаружения deadloop
в PinTool? Я могу придумать несколько наивных решений, скажем, записать выполненные инструкции, и, если определенная инструкция была выполнена большое количество раз, просто прекратить выполнение.
Может ли кто-нибудь помочь мне в этом вопросе? Спасибо.
1 ответ
Обнаружение завершения программы не является в общем случае вычислимой проблемой, поэтому нет, я не думаю, что это хорошая идея.