SYSCALL(2)

NOM
syscall - Appel système indirect

SYNOPSIS
#define _GNU_SOURCE        /* ou _BSD_SOURCE ou _SVID_SOURCE */
#include <unistd.h>
#include <sys/syscall.h>   /* Pour les définitons SYS_xxx */
int syscall(int numero, ...);

DESCRIPTION
syscall() réalise l'appel système dont l'interface en assembleur est indiqué par le numéro avec les arguments spécifiés. Les constantes symboliques des appels système sont listées dans le fichier d'en-tête <sys/syscall.h>.

VALEUR RENVOYÉE
La valeur renvoyée dépend de l'appel système invoqué. En général, la valeur 0 indique que l'appel système s'est bien déroulé tandis qu'une valeur de -1 indique qu'une erreur s'est produite et que le code de l'erreur est stocké dans errno.

NOTES
La fonction syscall() est apparue dans BSD 4.0.

EXEMPLE
#define _GNU_SOURCE
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/types.h>
int
main(int argc, char *argv[])
{
    pid_t tid;
    tid = syscall(SYS_gettid);
}

VOIR AUSSI
intro(2) _syscall(2) syscalls(2)

TRADUCTION

Ce document est une traduction réalisée par Thierry Vignaud <tvignaud AT mandriva DOT com> en 2002 et révisée le 23 décembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 syscall ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.