Appendix C: Linux Kernel Calls
This is a list of Linux kernel calls from section 2 of the
manual.
_exit - terminate the current process
_llseek - reposition read/write file offset
_newselect - NQS
sysctl - read/write system parameters
accept - accept a connection on a socket
access - check user's permissions for a file
acct - switch process accounting on or off
adjtimex - tune kernel clock
afs_syscall - unimplemented
alarm - set an alarm clock for delivery of a signal
bdflush - start, flush, or tune buffer-dirty-flush daemon
bind - bind a name to a socket
break - unimplemented
brk - change data segment size
cacheflush - (MIPS) flush contents of instruction and/or data cache
chdir - change working directory
chmod - change permissions of a file
chown - change ownership of a file
chroot - change root directory
__clone - create a child process for multithreading
close - close a file descriptor
connect - initiate a connection on a socket
creat - open and possibly create a file or device
create_module - create a loadable module entry
delete_module - delete a loadable module entry
dup - duplicate a file descriptor
dup2 - duplicate a file descriptor
execve - execute program
exit - cause normal program termination
fchdir - change working directory
fchmod - change permissions of a file
fchown - change ownership of a file
fcntl - manipulate file descriptor
fdatasync - synchronize a file's in-core data with that on disk
flock - apply or remove an advisory lock on an open file
fork - create a child process
fstat - get file status
fstatfs - get file system statistics
fsync - synchronize a file's complete in-core state with that on disk
ftruncate - truncate a file to a specified length
get_kernel_syms - retrieve exported kernel and module symbols
getdents - get directory entries
getdomainname - get domain name
getdtablesize - get descriptor table size
getgid - get group identity
geteuid - get user identity
getgid - get group identity
getgroups - get/set list of supplementary group
gethostid - get the unique identifier of the current host
gethostnamee - get host name
getitimer - get value of an interval timer
getpagesize - get system page size
getpeername - get name of connected peer
getpgid - get process group
getpgrp - get process group
getpid - get process identification
getppid - get process identification
getpriority - get/set program scheduling priority
getresgid - get real, effective and saved group ID
getresuid - get real, effective and saved user ID
getrlimit - get resource limits
getrusage - get resource limits
getsid - get session ID
getsockname - get socket name
getsockopt - get options on sockets
gettimeofday - get time
getuid - get user identity
gtty - unimplemented
idle - make process 0 idle
init_module - initialize a loadable module entry
ioctl - control device
ioperm - set port input/output permissions
iopl - change I/O privilege level
ipc - System V IPC system calls
kill - send signal to a process
killpg - send signal to a process group
lchown - change ownership of a file
link - make a new name for a file
listen - listen for connections on a socket
llseek - reposition read/write file offset
lock - unimplemented
lseek - reposition read/write file offset
lstat - get file status
mkdir - create a directory
mknod - create a directory or special or ordinary file
mlock - disable paging for some parts of memory
mlockall - disable paging for calling process
mmap - map files or devices into memory
modify_ldt - get or set ldt
mount - mount and unmount filesystems.
mprotect - control allowable accesses to a region of memory
mpx - unimplemented
mremap - re-map a virtual memory address
msgctl - message control operations
msgget - get a message queue identifier
msgrcv - receive a messsage
msgsnd - send a message
msync - synchronize a file with a memory map
munlock - reenable paging for some parts of memory
munlockall - reenable paging for calling process
munmap - unmap files or devices into memory
nanosleep - pause execution for a specified time
nfsservctl - syscall interface to kernel nfs daemon
nice - change process priority
oldfstat - obsolete
oldlstat - obsolete
oldolduname - obsolete
oldstat - obsolete
olduname - obsolete
open - open a file or device
outb, outw, outl - port output macros
pause - wait for signal
personality - set the process execution domain
pipe - create pipe
poll - wait for some event on a file descriptor
prctl - operations on a process
prof - unimplemented
ptrace - process trace
query_module - query the kernel for various bits pertaining to modules
quotactl - manipulate disk quotas
read - read from a file descriptor
readdir - read directory entry
readlink - read value of a symbolic link
readv - read a vector
reboot - reboot or enable/disable Ctrl-Alt-Del
recv - receive a message from a socket
recvfrom - receive a message from a socket
recvmsg - receive a message from a socket
rename - change the name or location of a file
rmdir - delete a directory
sbrk - change data segment size
sched_get_priority_max - get static priority range
sched_get_priority_min - get static priority range
sched_getparam - get scheduling parameters
sched_setscheduler - get schedule algorithm/parameters
sched_rr_get_interval - get the SCHED_RR interval for the named process
sched_setparam - set scheduling parameters
sched_setscheduler - set schedule algorithm/parameters
sched_yield - yield the processor
select - synchronous I/O multiplexing
semctl - semaphore control operations
semget - get a semaphore set identifier
semop - semaphore operations
send - send a message from a socket
sendfile - transfer data between file descriptors
sendmsg - send a message from a socket
sendto - send a message from a socket
setdomainname - set domain name
setegid - set effective group ID
seteuid - set effective user ID
setfsgid - set group identity used for file system checks
setfsuid - set user identity used for file system checks
setgid - set group identity
setgroups - set list of supplementary group
sethostid - set the unique identifier of the current host
sethostname - set host name
setitimer - get or set value of an interval timer
setpgid - set process group ID
setpgrp - set process group
setpriority - set program scheduling priority
setregid - set real group ID
setresgid - set real, effective and saved user
setresuid - set real, effective and saved user
setreuid - set real and / or effective user ID
setrlimit - set resource limits
setsid - creates a session and sets the process group ID
setsockopt - set options on sockets
settimeofday - get / set time
setuid - set user identity
setup - setup devices and file systems, mount root file (not available)
sgetmask - ANSI C signal handling
shmat - shared memory operations
shmctl - shared memory control
shmdt - shared memory operations
shmget - allocates a shared memory segment
shutdown - shut down part of a full-duplex connection
sigaction - change signal action
sigblock - change blocked signals
siggetmask - get blocked signals
sigmask - C macro to create signal masks
signal - install signal handler
sigpause - atomically release blocked signals and wait for interrupt
sigpending - examine pending signals
sigprocmask - change blocked signals
sigreturn - return from signal handler and cleanup stack
sigsetmask - set net group of blocked signals
sigsuspend - replace signal mask and suspend process
sigvec - obsolete
socket - create an endpoint for communication
socketcall - socket system calls entry point
socketpair - create a pair of connected sockets
ssetmask - NQS
stat - get file status
statfs - get file system statistics
stime - set time
stty - unimplemented
swapoff - stop swapping to file/device
swapon - start swapping to file/device
symlink - make a new name for a file
sync - commit buffer cache to disk
sysctl - read/write system parameters
sysfs - get file system type information
sysinfo - returns information on overall system statistics
syslog - read and/or clear kernel message ring buffer; set console_loglevel
time - get time in seconds
times - get process times
truncate - truncate a file to a specified length
umask - set file creation mask
umount - unmount filesystems
uname - get name and information about current kernel
unlink - delete a name and possibly the file it refers to
uselib - select shared library
ustat - get file system statistics
utime - change access and/or modification times of an inode
utimes - change access and/or modification times of an inode
vfork - alias for fork
vhangup - virtually hangup the current tty
vm86 - (Intel) enter virtual 8086 mode
vm86old - obsolete
wait - wait for process termination
wait3 - wait for process termination, BSD style
wait4 - wait for process termination, BSD style
waitpid - wait for process termination
write - write to a file descriptor
writev - read or write a vector