제어 터미널과의 프로세스 세션에서,
제어 프로세스가 제어 터미널의 파일 설명자를 닫으면 프로세스 세션이 제어 터미널에서 분리됩니까? 즉, 제어 터미널이 없습니까?
세션의 비제어 프로세스가 제어 터미널의 파일 설명자를 닫으면 어떻게 되나요?
감사해요.
답변1
libc 매뉴얼: "...세션의 모든 프로세스는 세션 리더로부터 제어 터미널을 상속받습니다. 제어 터미널의 세션 리더를 해당 터미널의 제어 프로세스라고 합니다. …”
~에 따르면일반적인 "데몬" 시나리오제어 터미널을 제거하는 유일한 방법은 새 세션을 만드는 것입니다. 파일 설명자를 닫으면 이 작업이 수행되지 않습니다.
답변2
기본적으로 프로그램에는 제어 터미널과 연결된 파일 설명자가 없으므로 닫을 필요가 없습니다. 켤 수 있지만 끄는 것은 터미널 연결 제어와 아무 관련이 없습니다.