1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
.\" Copyright (C) 2002 Andries Brouwer <aeb@cwi.nl>
.\"
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Permission is granted to copy and distribute modified versions of this
.\" manual under the conditions for verbatim copying, provided that the
.\" entire resulting derived work is distributed under the terms of a
.\" permission notice identical to this one
.\"
.\" Since the Linux kernel and libraries are constantly changing, this
.\" manual page may be incorrect or out-of-date. The author(s) assume no
.\" responsibility for errors or omissions, or for damages resulting from
.\" the use of the information contained herein. The author(s) may not
.\" have taken the same level of care in the production of this manual,
.\" which is licensed free of charge, as they might when working
.\" professionally.
.\"
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and authors of this work.
.\"
.\" Traducción revisada por Miguel Pérez Ibars <mpi79470@alu.um.es> el 21-enero-2005
.\"
.TH TCGETPGRP 3 "28 enero 2003" "POSIX" "Manual del Programador de Linux"
.SH NOMBRE
tcgetpgrp, tcsetpgrp \- obtienen y establecen el grupo de procesos en primer plano de la terminal
.SH SINOPSIS
.sp
.BR "#include <unistd.h>"
.sp
.BI "pid_t tcgetpgrp(int " fd );
.sp
.BI "int tcsetpgrp(int " fd ", pid_t " pgrp );
.SH DESCRIPCIÓN
La función
.B tcgetpgrp()
devuelve el identificador de grupo de procesos del grupo de procesos en primer plano
en la terminal asociada a
.IR fd ,
que debe ser la terminal de control del proceso invocador.
.\" El proceso mismo puede ser un proceso en segundo plano.
.LP
La función
.B tcsetpgrp()
convierte el grupo de procesos con identificador \fIpgrp\fP
en el grupo de procesos en primer plano en la terminal asociada a
.IR fd ,
que debe ser la terminal de control del proceso invocador,
y debe estar todavía asociada con su sesión.
Además, \fIpgrp\fP debe ser un grupo de procesos (no vacío) perteneciente a
la misma sesión que el proceso invocador.
.LP
Si
.B tcsetpgrp()
es llamada por un miembro de un grupo de procesos en segundo plano en su sesión,
y el proceso invocador no está bloqueando o ignorando SIGTTOU,
se envía una señal SIGTTOU a todos los miembros de este grupo de procesos en
segundo plano.
.SH "VALOR DEVUELTO"
Cuando
.I fd
hace referencia a la terminal de control del proceso invocador,
la función
.B tcgetpgrp()
devolverá el identificador del grupo de procesos en primer plano
de esa terminal si hay uno, y algún valor mayor que 1 en caso contrario.
Cuando
.I fd
no hace referencia a la terminal de control del proceso invocador,
se devuelve \-1 y se modifica
.I errno
con el valor apropiado.
.LP
Cuando tiene éxito,
.B tcsetpgrp()
devuelve 0. En otro caso, devuelve \-1, y se modifica
.I errno
con el valor apropiado.
.SH ERRORES
.TP
.B EBADF
.I fd
no es un descriptor de fichero válido.
.TP
.B EINVAL
.I pgrp
tiene un valor no válido.
.TP
.B EPERM
.I pgrp
tiene un valor válido, pero no es el identificador de grupo
de procesos de un proceso en la misma sesión que el proceso invocador.
.TP
.B ENOTTY
El proceso invocador no tiene una terminal de control, o
tiene una pero no está descrita por
.IR fd ,
o, para
.BR tcsetpgrp() ,
esta terminal de control ha dejado de estar asociada con la sesión
del proceso invocador.
.SH OBSERVACIONES
Estas funciones fueron implementadas a través de los ioctls TIOCGPGRP y
TIOCSPGRP.
.SH HISTORIA
Estos ioctls aparecieron en 4.2 BSD. Las funciones son invenciones de POSIX.
.SH "CONFORME A"
POSIX.1
.SH "VÉASE TAMBIÉN"
.BR setpgid (2),
.BR setsid (2)
|