Se você quer algo vindo do espaço do kernel, então você pode querer olhar para semáforos ( sem_overview(7)
). Você pode construir construções de nível superior a partir de um semáforo, como "evento", "condição", "mutex" ("seções críticas"). Existem as interfaces mais antigas e mais novas em C. Algumas linguagens de nível superior, como Python e Perl, também expõem a interface.
O "Mutex" do qual você provavelmente está falando é o mutex do pthread, que será mais rápido do que qualquer coisa no espaço do usuário, especialmente um usando um spinlock (que foi projetado para nível de SO extremamente baixo constructos). Algumas implementações de pthread podem usar um nível de SO semaphore
ou podem usar outras construções.