2011-11-23 3 views
4

Мне нужно получить имена всех библиотек с отображением памяти текущего приложения. В настоящее время я просматриваю все сопоставленные библиотеки через vm_region. К сожалению, он не предоставляет информацию о имени текущего региона. Есть ли способ получить эту информацию в c, не делая popen на vmmap?filename библиотек с отображением памяти osx

+1

ли этот пост помощь? http://stackoverflow.com/questions/1627998/retrieving-the-memory-map-of-its-own-process-in-os-x-10-5-10-6 – askmish

ответ

1
  • Для обычных mmap -ED файлов вы можете использовать proc_regionfilename()
    • Обратите внимание, что вы должны предоставить буфер MAX_PATH размера к нему.
    • , реализованный в libc яблока - libproc.c, базовый системный вызов - proc_info.
  • Для библиотек от dyld_shared_cache вы получаете «/ private/var/db/dyld/dyld_shared_cache_x86_64» в качестве пути и должны найти фактическое имя библиотеки.
Смежные вопросы