쉘에 의해 실행되는 프로세스가 쉘의 프로세스 그룹 ID를 상속하지 않는 이유는 무엇입니까?

쉘에 의해 실행되는 프로세스가 쉘의 프로세스 그룹 ID를 상속하지 않는 이유는 무엇입니까?

나는 그것을 읽었을 때프로세스 A시작프로세스 B, 그 다음에프로세스 B상속할 것이다프로세스 A프로세스 그룹 ID.

프로그램을 실행하여 테스트했는데 두 개의 서로 다른 프로세스 그룹 ID 가 있는 것을 발견했습니다 bash. 이유는 무엇입니까?catbashcat

답변1

sid(세션 ID)는 일관성이 있어야 합니다.

Bash가 명령을 실행할 때 일반적으로 PGID를 첫 번째 프로세스에 할당합니다. 파이프인 경우 파이프된 모든 명령은 첫 번째 프로세스와 동일한 PGID를 갖습니다.

관련 정보