Я создал исполняемый файл, который пытается получить доступ и получить состояние или изменить состояние существующего именованного семафора POSIX, созданного процессом на целевой машине (Ubuntu 16.04), работающей на уровне детализации: -19.
Мою программу я сделал на С ++ на Ubuntu 16.04. При доступе к семафору на целевом компьютере с помощью программы, скомпилированной на целевом компьютере, доступ к семафору и его корректное изменение выполняются. Но при обращении к скомпилированному исполняемому файлу моей машины это вызывает ошибку сегментации SEGV_MAPERR.
При тестировании с другой программой блокировки / разблокировки семафора на моем компьютере, программа работает. Я сохраняю права доступа как 777 и помечаю как O_CREAT | O_EXCL для программ обеих программ на обеих машинах.
Ошибка при работе на целевой машине.
Возврат по GDB на целевой машине
Я использую библиотеку semaphore.h на обеих машинах.
Спасибо.