setsid
1. setsid.2.man
Manpage of SETSID
SETSID
Section: Руководство программиста Linux (2)Updated: 2008-12-03
Index Return to Main Contents
ИМЯ
setsid - создает сеанс и устанавливает идентификатор группы процессаОБЗОР
#include <unistd.h>ОПИСАНИЕ
setsid() создает новый сеанс, если вызывающий процесс не является лидером группы процессов. Вызывающий процесс становится лидером нового сеанса, лидером новой группы процессов и не имеет управляющего терминала. Идентификатор группы процессов и сеанса вызывающего процесса устанавливаются равными идентификатору вызывающего процесса (PID). Вызывающий процесс будет единственным в этой новой группе процессов и новом сеансе.ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении возвращается идентификатор (нового) сеанса вызывающего процесса. В случае ошибки возвращается (pid_t) -1, а errno устанавливается в соответствующее значение.ОШИБКИ
- EPERM
- Идентификатор группы процессов любого процесса равен PID вызывающего процесса. В этом случае, в частностти, setsid() завершается неудачно, если вызывающий процесс уже является лидером группы процессов.
СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4, POSIX.1-2001.ЗАМЕЧАНИЯ
Потомок, создаваемый с помощью fork(2), наследует ID сеанса своего родителя. Идентификатор сеанса сохраняется при вызове execve(2).Лидер группы процессов --- это процесс, идентификатор группы процессов которого равен идентификатору самого процесса (PID). Для того, чтобы удостовериться, что функция setsid() выполнится успешно, создайте дочерний процесс при помощи fork(2) и _exit(2), а затем в дочернем процессе сделайте вызов setsid().
СМОТРИТЕ ТАКЖЕ
getsid(2), setpgid(2), setpgrp(2), tcgetsid(3), credentials(7)
Index
This document was created by man2html using the manual pages.
Time: 17:41:59 GMT, May 11, 2012



