Definición
Las system calls de procesos pueden separar en
- Al manejo de los proceso
- La intercomunicación entre los procesos
exec()
Definición
La System call
exec()
tiene 6 variantes
exec()
execl()
execle()
execlp()
execv()
execcvp()
Pero todas estas son variaciones de la system call
excec()
La system
Link to originalcall_exec()
invoca a otro programa, sobreponiendo el espacio de memoria del proceso con el programa ejecutable.
fork()
Definición
La System call
Link to originalfork()
es la única forma que un usuario cree un proceso en el sistema operativo UNIX. El proceso que invoca afork()
es llamado proceso padre, el nuevo proceso creado es llamado hijo.
wait()
Definición
La System call
Link to originalwait()
permite sincronizar procesos, esperando a que finalice el proceso hijo.
exit()
Definición
La System call
exit()
permite terminar el proceso.Link to original
- Ignora todas las signal
- Cierra todos los archivos abiertos
- En consecuencia se libera todos los locks mantenidos por este proceso sobre esos archivos
- Libera el directorio actual
- Los segmentos de memoria compartida de los procesos se separan.
- Los contadores de los semáforos son actualizados
- Libera todas las secciones y memoria asociada al proceso
- Registra información sobre el proceso
- Pone el estado del proceso en “zombie”
- Le asigna el parent PID de los procesos hijos al PID de
init
- Le manda una signal o señal de muerte al proceso padre
- Context switch
getuid()
Transclude of Getuid-system-call#definición
geteuid()
Transclude of Geteuid-system-call#definición
getgid()
Transclude of Getgid-system-call#definición
getegid()
Transclude of Getegid-system-call#definición
getpid()
Definición
La System call
Link to originalgetpid()
permite determinar elPID
(process identification). Originalmente en UNIX elPID
era un número positivo hasta, una vez alcanzado ese número se resetea a y se vuelve a asignar esos valores nuevamente. Esto pasaba en Linux, hasta la versión 2.6 del kernel, en la cual dependiendo de la plataforma ese valor es ajustable.
getppid()
Definición
La System call
Link to originalgetppid()
permite obtener elPID
(process identification) del proceso padre.
signal()
Transclude of Signal-system-call#definición
kill()
Transclude of Kill-system-call#definición
alarm()
Transclude of Alarm-system-call#definición
brk()
Definición
La System call
brk()
es necesario para entender el layout o estructura real de memoria de un proceso en Linux.El parámetro de
Link to originalsbrk()
es la dirección exacta donde el nuevobreak
debe estar. Por otro lado ensbrk()
se pasa el incremento al cual se le sumará al viejo break para setear el nuevo break. Si se ejecutasbrk(0)
se obtiene la dirección delbreak
actual.
pipe()
Transclude of Pipe-system-call#definición
msgget()
Transclude of Msgget-system-call#definición
msgsnd()
Transclude of Msgsnd-system-call#definición
msgrcv()
Transclude of Msgrcv-system-call#definición
msgctl()
Transclude of Msgctl-system-call#definición
semget()
Transclude of Semget-system-call#definición
semop()
Transclude of Semop-system-call#definición
shmget()
Transclude of Shmget-system-call#definición
shmat()
Transclude of Shmat-system-call#definición
shmdt()
Transclude of Shmdt-system-call#definición