наверное все-таки не понял.
Вопрос в следующем:
некая программа загружает библиотеку и вызывает из нее определенную функцию. Как из этой функции узнать имя программы, обратившейся к ней? Можно узнать PID родительского процесса и по нему найти в /proc'e нужный файл и прочитать его содержимое, но дело в том, что ф-ция вызывается слишком часто и чтение файлов не желательно т.к. будет тормозить.
В библиотеке можно попытаться использовать переменные
char * program_invocation_name (или char* program_invocation_short_name).
Правда компилироваться нужно с флагом _GNU_SOURCE (info libc).
Библиотека языка C GNU glibc:
---
Библиотека имеет функции и переменные, разработанные, чтобы облегчить для вашей программы вывод информативных сообщений об ошибках в обычном формате. Функции strerror и perror дают Вам стандартное сообщение об ошибках для данного кода ошибки; переменная program_invocation_short_name дает Вам удобный доступ к имени программы, которая столкнулась с ошибкой.
---
наверное это мне не подходит. Ведь имя программы тпм появляется только при ошибке.