TCGETPGRP(3) | Manual del Programador de Linux | TCGETPGRP(3) |
tcgetpgrp, tcsetpgrp - obtienen y establecen el grupo de procesos en primer plano de la terminal
#include <unistd.h>
pid_t tcgetpgrp(int fd);
int tcsetpgrp(int fd, pid_t pgrp);
La función tcgetpgrp() devuelve el identificador de grupo de procesos del grupo de procesos en primer plano en la terminal asociada a fd, que debe ser la terminal de control del proceso invocador.
La función tcsetpgrp() convierte el grupo de procesos con identificador pgrp en el grupo de procesos en primer plano en la terminal asociada a fd, que debe ser la terminal de control del proceso invocador, y debe estar todavía asociada con su sesión. Además, pgrp debe ser un grupo de procesos (no vacío) perteneciente a la misma sesión que el proceso invocador.
Si 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.
Cuando fd hace referencia a la terminal de control del proceso invocador, la función 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 fd no hace referencia a la terminal de control del proceso invocador, se devuelve -1 y se modifica errno con el valor apropiado.
Cuando tiene éxito, tcsetpgrp() devuelve 0. En otro caso, devuelve -1, y se modifica errno con el valor apropiado.
Estas funciones fueron implementadas a través de los ioctls TIOCGPGRP y TIOCSPGRP.
Estos ioctls aparecieron en 4.2 BSD. Las funciones son invenciones de POSIX.
POSIX.1
28 enero 2003 | POSIX |