Existem várias definições de pause () e sigsuspend () na árvore glibc. As definições realmente usadas dependem de qual sistema e arquitetura foram construídos para a glibc. Em sistemas Unix mais antigos, em que pause () é uma chamada de sistema, sigsuspend () é implementado chamando pause (). Em sistemas onde o sigsuspend () é uma chamada do sistema, o pause () é implementado chamando sigsuspend (). As chamadas do sistema em si são implementadas na linguagem assembly, seja acionando uma interrupção ou executando uma instrução especial para fazer com que o kernel assuma o controle. O processo de compilação da glibc garante que a combinação certa de arquivos fonte da linguagem assembly e C seja usada para construir a biblioteca final.
As chamadas de sistema que não possuem seus próprios arquivos de origem têm definições geradas pelo processo de construção usando um script de shell chamado make-syscalls.sh, cujas ações são controladas por syscalls.list. O código para a chamada do sistema é gerado por este script. A parte de geração de código do script é quase tão impenetrável quanto o código de shell, e diz quase de imediato: "A melhor maneira de entender o que está acontecendo aqui é examinar a saída em BUILDDIR / sysd-syscalls." Portanto, você terá que criar o glibc para ver os arquivos de origem gerados para as chamadas do sistema que não possuem versões codificadas manualmente.