Я пытаюсь исследовать состояние кучи C / C ++ изнутри gdb в Linux amd64, есть ли хороший способ сделать это?
Один из подходов, которые я попробовал, - это "вызвать mallinfo ()", но, к сожалению, я не могу тогда извлечь нужные значения, так как GDB неправильно обрабатывает возвращаемое значение.
Мне нелегко написать функцию для компиляции в двоичный файл для процесса, к которому я присоединен, поэтому я могу просто реализовать свою собственную функцию для извлечения значений, вызывая mallinfo () в моем собственном коде таким образом , Может быть, есть хитрый трюк, который позволит мне делать это на лету?
Другим вариантом может быть нахождение кучи и просмотр списка заголовков / свободных адресов malloc; Я был бы признателен за любые указания, где я мог бы начать находить их расположение и расположение.
Я пытался найти в Google и обдумать проблему около 2 часов, и я изучил некоторые интересные вещи, но все еще не нашел то, что мне нужно.