이 름
setsid − 세 션 을 만 들 고 프 로 세 스 그 룹 ID를 설 정 한 다 .
사 용 법
#include <unistd.h>
pid_t setsid(void);
설 명
setsid() 는 호 출 한 프 로 세 스 가 프 로 세 스 그 룹 의 리 더 가 아 니 면 새 로 운 새 션 을 만 든 다 . 호 출 한 프 로 세 스 는 새 로 운 세 션 의 리 더 이 며 , 새 로 운 프 로 세 스 그 룹 의 그 룹 리 더 가 되 며 , 제 어 터 미 널 을 갖 지 않 는 다 . 호 출 한 프 로 세 스 의 프 로 세 스 그 룹 ID와 세 션 ID는 호 출 한 프 로 세 스 의 PID로 설 정 된 다 . 호 출 한 프 로 세 스 는 단 지 새 로 운 프 로 세 스 그 룹 과 새 로 운 새 션 의 프 로 세 스 가 된 다 .
반 환 값
호 출 한 프 로 세 스 의 세 션 ID
에 러
에 러 시 , −1이 리 턴 된 다 . 발 생 할 수 있 는 유 일 한 에 러 는 EPERM이 다 . 이 것 은 어 떤 프 로 세 스 의 그 룹 ID와 호 출 한 프 로 세 스 의 PID가 같 을 때 이 다 . 즉 , setsid는 호 출 한 프 로 세 스 가 이 미 프 로 세 스 그 룹 리 더 이 면 실 패 한 다 .
주 의
프 로 세 스 그 룹 리 더 는 프 로 세 스 의 PID와 프 로 세 스 의 그 룹 ID가 같 은 프 로 세 스 이 다 . setsid가 확 실 히 성 공 하 기 위 해 서 , fork후 에 exit 하 고 , 자 식 은 setsid()를 호 출 하 면 된 다 .
호 환
POSIX, SVr4.
관 련 항 목
역 자
정 강 훈 <skyeyes [AT] soback.net>, 2000년 4월 27일