Отладка и профилирование загруженного во время выполнения модуля
Мне нужно загрузить и запустить модуль C, используя dlopen()
/ LoadLibrary()
и иметь возможность просматривать обширную информацию о профилировании и отладке только размещенного модуля (не хост-программы) с помощью оперативного журнала, отображаемого как часть хоста:
Как именно мне нужно извлекать состояние стека и информацию о профилировании из размещенного модуля во время выполнения?
gprof
а такжеgdb
? И делать это без ужасного замедления?Может ли какая-либо информация отладки и профилирования, которая возвращается, смешиваться (то есть между хостом и хостом), при условии, что я скомпилирую и хост, и размещенные модули с правильными, соответствующими ключами компилятора? Мне нужно полностью чистое разделение данных журнала, т.е. только размещенный модуль.