\chapter{Llamadas al sistema en orden alfabético}
 
\author {Sven Goldt}
\title {Guía Linux de Programación}

\begin{tabbing}{lcr}

just-a-tabspace-holder- \quad \=
- \quad \= \kill
\_exit \> - \> como exit pero con menos acciones (m+c)\\
accept \> - \> aceptar conexiones en un socket (m+c!)\\
access \> - \> comprobar permisos de usuario en un fichero (m+c)\\
acct \> - \> no implementada aun (mc)\\
adjtimex \> - \> obtener/ajustar variables de tiempo internas (-c)\\
afs\_syscall \> - \> reservada para el sist. de ficheros Andrew (-)\\
alarm \> - \> envio de SIGALRM tras un tiempo especificado (m+c)\\
bdflush \> - \> vuelca buffers modificados al disco (-c)\\
bind \> - \> nombrar un socket para comunicaciones (m!c)\\
break \> - \> no implementada aun (-)\\
brk \> - \> cambiar el tamano del segmento de datos (mc)\\
chdir \> - \> cambiar el directorio de trabajo (m+c)\\
chmod \> - \> cambiar permisos en un fichero (m+c)\\
chown \> - \> cambiar propietario de un fichero (m+c)\\
chroot \> - \> cambiar el directorio raiz (mc)\\
clone \> - \> vease fork (m-)\\
close \> - \> cerrar un fichero (m+c)\\
connect \> - \> enlazar dos sockets (m!c)\\
creat \> - \> crear un fichero (m+c)\\
create\_module \> - \> reservar espacio para un modulo del nucleo (-)\\
delete\_module \> - \> descargar modulo del nucleo (-)\\
dup \> - \> crear un duplicado de un descriptor de fichero (m+c)\\
dup2 \> - \> duplicar un descriptor (m+c)\\
execl, execlp, execle, ...\> - \> vease execve (m+!c)\\
execve \> - \> ejecutar un fichero (m+c)\\
exit \> - \> terminar un programa (m+c)\\
fchdir \> - \> cambiar directorio de trabajo por referencia ()\\
fchmod \> - \> vease chmod (mc)\\
fchown \> - \> cambiar propietario de un fichero (mc)\\
fclose \> - \> cerrar un fichero por referencia (m+!c)\\
fcntl \> - \> control de ficheros/descriptores (m+c)\\
flock \> - \> cambiar bloqueo de fichero (m!c)\\
fork \> - \> crear proceso hijo (m+c)\\
fpathconf \> - \> obtener info. de fichero por referencia (m+!c)\\
fread \> - \> leer matriz de datos de un fichero (m+!c)\\
fstat \> - \> obtener estado del fichero (m+c)\\
fstatfs \> - \> obtener estado del sistema de ficheros por referencia (mc)\\
fsync \> - \> escribir bloques modificados del fichero a disco (mc)\\
ftime \> - \> obtener fecha del fichero, en segundos desde 1970 (m!c)\\
ftruncate \> - \> cambiar tamano del fichero (mc)\\
fwrite \> - \> escribir matriz de datos binarios a un fichero (m+!c)\\
get\_kernel\_syms \> - \> obtener tabla de simbolos del kernel o su tamano (-)\\
getdomainname \> - \> obtener nombre de dominio del sistema (m!c)\\
getdtablesize \> - \> obtener tamano de la tabla de descriptores de fich. (m!c)\\
getegid \> - \> obtener id. de grupo efectivo (m+c)\\
geteuid \> - \> obtener id. de usuario efectivo (m+c)\\
getgid \> - \> obtener id. de grupo real (m+c)\\
getgroups \> - \> obtener grupos adicionales (m+c)\\
gethostid \> - \> obtener identificador del huesped (m!c)\\
gethostname \> - \> obtener nombre del huesped (m!c)\\
getitimer \> - \> obtener valor de temporizador (mc)\\
getpagesize \> - \> obtener tamano de pagina (m-!c)\\
getpeername \> - \> obtener direccion remota de un socket (m!c)\\
getpgid \> - \> obtener id. del grupo de procesos padre (+c)\\
getpgrp \> - \> obtener id. del grupo padre del proceso (m+c)\\
getpid \> - \> obtener id. del proceso (pid) (m+c)\\
getppid \> - \> obtener id. del proceso padre (m+c)\\
getpriority \> - \> obtener prioridades de usuario/grupo/proceso (mc)\\
getrlimit \> - \> obtener limites de recursos (mc)\\
getrusage \> - \> obtener uso de recursos (m)\\
getsockname \> - \> obtener direccion de un socket (m!c)\\
getsockopt \> - \> obtener opciones ajustadas en un socket (m!c)\\
gettimeofday \> - \> obtener segundos pasados desde 1970 (mc)\\
getuid \> - \> obtener id. de usuario real (uid) (m+c)\\
gtty \> - \> no implementada aun ()\\
idle \> - \> hacer candidato a expulsion al disco a un proceso (mc)\\
init\_module \> - \> incluir un modulo cargable (-)\\
ioctl \> - \> manipulacion de un dispositivo de caracter (mc)\\
ioperm \> - \> ajusta algunos permisos de e/s (m-c)\\
iopl \> - \> ajusta permisos de e/s (m-c)\\
ipc \> - \> comunicacion entre procesos (-c)\\
kill \> - \> enviar una senal a un proceso (m+c)\\
killpg \> - \> enviar una senal a un grupo de procesos (mc!)\\
klog \> - \> vease syslog (-!)\\
link \> - \> crear un enlace fisico a un fichero (m+c)\\
listen \> - \> escuchar conexiones en un socket (m!c)\\
llseek \> - \> lseek para ficheros grandes (-)\\
lock \> - \> no implementada aun ()\\
lseek \> - \> cambia el puntero de un fichero abierto (m+c)\\
lstat \> - \> obtiene estado de un fichero (mc)\\
mkdir \> - \> crea un directorio(m+c)\\
mknod \> - \> crea un dispositivo (mc)\\
mmap \> - \> mapea un fichero en memoria (mc)\\
modify\_ldt \> - \> lee o escribe tabla de descriptores locales (-)\\
mount \> - \> montar un sistema de ficheros (mc)\\
mprotect \> - \> controla permisos de acceso a una zona de memoria (-)\\
mpx \> - \> no implementada aun ()\\
msgctl \> - \> control de mensajes ipc (m!c)\\
msgget \> - \> obtiene un id. de cola de mensajes (m!c)\\
msgrcv \> - \> recibe un mensaje ipc (m!c)\\
msgsnd \> - \> envia un mensaje ipc (m!c)\\
munmap \> - \> desmapea un fichero de memoria (mc)\\
nice \> - \> cambia prioridad del proceso (mc)\\
oldfstat \> - \> a extinguir\\
oldlstat \> - \> a extinguir\\
oldolduname \> - \> a extinguir\\
oldstat \> - \> a extinguir\\
olduname \> - \> a extinguir\\
open \> - \> abrir un fichero (m+c)\\
pathconf \> - \> obtener info. de un fichero (m+!c)\\
pause \> - \> dormir hasta la llegada de una senal (m+c)\\
personality \> - \> cambiar dominio de ejecucion en iBCS (-)\\
phys \> - \> no implementada aun (m)\\
pipe \> - \> crea una tuberia (m+c)\\
prof \> - \> no implementada aun ()\\
profil \> - \> perfil de ejecucion (m!c)\\
ptrace \> - \> traza proceso hijo (mc)\\
quotactl \> - \> no implementada aun ()\\
read \> - \> lee datos de un fichero (m+c)\\
readv \> - \> lee bloques de un fichero (m!c)\\
readdir \> - \> lee un directorio (m+c)\\
readlink \> - \> obtener contenido de un enlace simbolico (mc)\\
reboot \> - \> reiniciar o controlar combinacion CTRL-ALT-DEL (-mc)\\
recv \> - \> recibir mensaje de socket conectado (m!c)\\
recvfrom \> - \> recibir mensaje de socket (m!c)\\
rename \> - \> mover/renombrar fichero (m+c)\\
rmdir \> - \> borrar directorio vacio (m+c)\\
sbrk \> - \> vease brk (mc!)\\
select \> - \> dormir hasta actividad en un descriptor de fichero (mc)\\
semctl \> - \> control de semaforos ipc (m!c)\\
semget \> - \> obtener id. de semaforo ipc (m!c)\\
semop \> - \> operaciones en conj. de semaforos ipc (m!c)\\
send \> - \> enviar mensaje a un socket conectado (m!c)\\
sendto \> - \> enviar mensaje a un socket (m!c)\\
setdomainname \> - \> ajustar dominio del sistema (mc)\\
setfsgid \> - \> ajustar id. grupo del sistema de ficheros ()\\
setfsuid \> - \> ajustar id. usuario del sistema de ficheros ()\\
setgid \> - \> ajustar id. real de grupo (gid) (m+c)\\
setgroups \> - \> ajustar grupos adicionales (mc)\\
sethostid \> - \> ajustar identificador de huesped (mc)\\
sethostname \> - \> ajustar nombre de huesped (mc)\\
setitimer \> - \> ajustar temporizador (mc)\\
setpgid \> - \> ajustar id. de grupo padre (m+c)\\
setpgrp \> - \> sin efecto (mc!)\\
setpriority \> - \> ajustar prioridad de proceso/usuario/grupo (mc)\\
setregid \> - \> ajustar id. de grupo real/efectivo (mc)\\
setreuid \> - \> ajustar id. de usuario real/efectivo (mc)\\
setrlimit \> - \> ajustar limites para los recursos (mc)\\
setsid \> - \> crear sesion (+c)\\
setsockopt \> - \> cambiar opciones del socket (mc)\\
settimeofday \> - \> poner la hora en segundos desde 1970 (mc)\\
setuid \> - \> ajustar id. de usuario real (m+c)\\
setup \> - \> iniciar dispositivos y montar la raiz (-)\\
sgetmask \> - \> vease siggetmask (m)\\
shmat \> - \> enganchar memoria a un segm. de memoria compartida (m!c)\\
shmctl \> - \> manipulacion de mem. compartida ipc (m!c)\\
shmdt \> - \> liberar memoria compartida en un segmento (m!c)\\
shmget \> - \> obtener/crear segmento de memoria compartida (m!c)\\
shutdown \> - \> desconectar socket (m!c)\\
sigaction \> - \> obtener/ajustar manejador de senales (m+c)\\
sigblock \> - \> bloquear senales (m!c)\\
siggetmask \> - \> obtener senales bloqueadas (!c)\\
signal \> - \> poner manejador de senal (mc)\\
sigpause \> - \> usar nueva mascara de senales hasta la proxima senal (mc)\\
sigpending \> - \> obtener senales bloqueadas pendientes (m+c)\\
sigprocmask \> - \> obtener/ajustar mascara de bloqueos de senales (+c)\\
sigreturn \> - \> no usada aun ()\\
sigsetmask \> - \> ajustar mascara de bloqueos de senales (c!)\\
sigsuspend \> - \> reemplaza a sigpause (m+c)\\
sigvec \> - \> vease sigaction (m!)\\
socket \> - \> crea un extremo de comunicacion para socket (m!c)\\
socketcall \> - \> llamada general de sockets (-)\\
socketpair \> - \> crea dos sockets conectados (m!c)\\
ssetmask \> - \> vease sigsetmask (m)\\
stat \> - \> obtener estado del fichero (m+c)\\
statfs \> - \> obtener estado del sistema de ficheros (mc)\\
stime \> - \> obtener segundos desde 1.1.1970 (mc)\\
stty \> - \> no implementada aun ()\\
swapoff \> - \> detener el intercambio con un dispositivo o fichero (m-c)\\
swapon \> - \> iniciar el intercambio con un dispositivo o fichero (m-c)\\
symlink \> - \> crear un enlace simbolico (m+c)\\
sync \> - \> volcar bloques modificados a disco (mc)\\
syscall \> - \> ejecutar llamada al sistema (-!c)\\
sysconf \> - \> obtener valor de una variable del sistema (m+!c)\\
sysfs \> - \> obtener info. sobre sistemas de ficheros usados ()\\
sysinfo \> - \> obtener info. sobre el sistema (m-)\\
syslog \> - \> manipulacion del registro (m-c)\\
system \> - \> ejecutar un comando de shell (m!c)\\
time \> - \> obtener segundos desde 1.1.1970 (m+c)\\
times \> - \> obtener tiempos del proceso (m+c)\\
truncate \> - \> cambiar tamano de un fichero (mc)\\
ulimit \> - \> obtener/ajustar limites de fichero (c!)\\
umask \> - \> ajustar mascara de creacion de ficheros (m+c)\\
umount \> - \> desmontar un sistema de ficheros (mc)\\
uname \> - \> obtener info. del sistema (m+c)\\
unlink \> - \> borrar un fichero no bloqueado (m+c)\\
uselib \> - \> usar libreria compartida (m-c)\\
ustat \> - \> no implementada anu (c)\\
utime \> - \> motificar info. de tiempo en nodo-i (m+c)\\
utimes \> - \> vease utime (m!c)\\
vfork \> - \> vease fork (m!c)\\
vhangup \> - \> colgar virtualmente el terminal actual (m-c)\\
vm86 \> - \> entrar en modo vm86 (m-c)\\
wait \> - \> esperar terminacion de proceso (m+!c)\\
wait3 \> - \> espera terminacion de un proceso (bsd) (m!c)\\
wait4 \> - \> espera terminacion de un proceso (bsd) (mc)\\
waitpid \> - \> espera terminacion de un proceso (m+c)\\
write \> - \> escribir datos a un fichero (m+c)\\
writev \> - \> escribir bloques de datos a un fichero (m!c)\\

\end {tabbing}

\bigskip
\noindent

(m) hay página de manual. \\
(+) cumple norma POSIX. \\
(-) Específica de Linux. \\
(c) de libc. \\
(!) no es solo una llamada al sistema. Usa otras \\

\endinput
