프로세스 그룹과 작업의 차이점은 무엇입니까? 들어가보면 pr * | lpr
프로세스 그룹이기도 하고 직무이기도 한 걸까요? 프로세스 그룹 ID와 작업 ID의 차이점은 정확히 무엇입니까?
편집 : 나는 그것이 비슷해 보인다는 것을 안다작업과 프로세스의 차이점은 무엇입니까?, 하지만 약간 다릅니다. 또한, 나는 이 스레드의 개념을 이해하지 못합니다.
답변1
ㅏ프로세스 그룹유닉스 커널 개념입니다. 그것은 자주 발생하지 않습니다. 다음을 호출하여 그룹의 모든 프로세스에 신호를 보낼 수 있습니다.kill
시스템 호출또는유용부정적인 주장으로.
프로세스를 생성할 때(사용fork
), 상위 프로세스와 동일한 프로세스 그룹에 남아 있습니다. 호출을 통해 프로세스를 다른 그룹으로 이동할 수 있습니다.setpgid
또는setpgrp
. 이는 일반적으로 외부 프로세스를 시작할 때 실행되기 전에 셸에서 수행됩니다.execve
외부 프로그램을 로드합니다.
프로세스 그룹의 주요 용도는 다음을 누를 때입니다.Ctrl+C
,Ctrl+Z
또는Ctrl+\
도착하다터미널에서 프로그램 종료 또는 일시 중지, 터미널은 전체 프로세스 그룹에 신호를 보냅니다.포그라운드 프로세스 그룹. 세부 사항은 매우 복잡하며 쉘 또는 커널 구현자가 가장 관심을 갖는 부분입니다.범용 터미널 인터페이스POSIX 표준에 관한 장은 좋은 소개입니다(UNIX 프로그래밍 배경 지식이 필요합니다).
작업은 셸의 내부 개념입니다. 간단한 경우 셸의 각 작업은 커널의 프로세스 그룹에 해당합니다.