имя файла отображаемых в память библиотек osx - PullRequest
4 голосов
/ 23 ноября 2011

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

1 Ответ

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