Hej,
próbuję utworzyć semafor za pomocą polecenia sem_open. Program się kompiluje, niestety po uruchomieniu errno zwraca błąd 22 (invalid argument). Próbowałem zarówno wersji dwu i jak czteroargumentowej polecenia. W obu przypadkach się wysypuje.

Poniżej mój kod:

sem_t *semafor;
semafor = sem_open("semafor", O_CREAT | O_EXCL, 0664, 0);
 
if (semafor == SEM_FAILED)
    {
        printf("Error: %d\n", errno);
        exit(1);
    }

Proszę o pomoc,
dziękuję