debian man page for syscall

Query: syscall

OS: debian

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

SYSCALL(2)						     Linux Programmer's Manual							SYSCALL(2)

NAME
syscall - indirect system call
SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <unistd.h> #include <sys/syscall.h> /* For SYS_xxx definitions */ int syscall(int number, ...);
DESCRIPTION
syscall() is a small library function that invokes the system call whose assembly language interface has the specified number with the specified arguments. Employing syscall() is useful, for example, when invoking a system call that has no wrapper function in the C library. syscall() saves CPU registers before making the system call, restores the registers upon return from the system call, and stores any error code returned by the system call in errno(3) if an error occurs. Symbolic constants for system call numbers can be found in the header file <sys/syscall.h>.
RETURN VALUE
The return value is defined by the system call being invoked. In general, a 0 return value indicates success. A -1 return value indicates an error, and an error code is stored in errno.
NOTES
syscall() first appeared in 4BSD.
EXAMPLE
#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); tid = syscall(SYS_tgkill, getpid(), tid); }
SEE ALSO
_syscall(2), intro(2), syscalls(2)
COLOPHON
This page is part of release 3.44 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2012-08-14 SYSCALL(2)
Related Man Pages
syscall(2) - centos
syscall(2) - suse
syscall(3ucb) - mojave
syscall(3ucb) - minix
syscall(3ucb) - posix
Similar Topics in the Unix Linux Community
Linux use in the US Government
dyncall 0.3 (Default branch)
Process on CPU inside syscall
Adding our system call Fedora 18 -new syscall
Download file with socket syscall