Создайте файл / var / db / mylibname. Если open () возвращает ошибку о том, что файл уже существует, ваша библиотека была инициализирована.
Потребуется добавить обработчик atexit (), который удалит файл при выходе из процесса. Атексит должен быть инициализирован, только если open () вернет успех.
UPDATE:
Если ресурсы должны быть инициализированы только один раз и если они (ресурсы) не зависят от существования какого-либо процесса, который использует библиотеку в то время , то лучше создать файл в / var / запустите каталог (чтобы он был очищен после перезагрузки системы) и забудьте о atexit ().