답변:
문맥에서 작가는 특정 유형의 프로그램을 실행하는 프로세스에 대해 말하고 있습니다. 쉘 프로세스 . 그 문장은 간단히 축약 된 형태로 쓰여지고 (또한 누락 된 어구도). 그것은 쓰여졌을 수 있습니다 :
스크립트를 실행하면 현재 셸 프로세스에서 명령이 실행되지만 스크립트를 실행하면 새 셸 프로세스가 생성되고 거기에서 명령이 실행됩니다.
그것은 Bourne Again 쉘 (쉘), 스크립트 및 프로세스가 토론 대상이라는 것이 명확한 상황에서 작성되었습니다. 여기에는 컨텍스트가 중요합니다.
껍질 운영 체제로서의 너트 메타포의 일부입니다.
(실행중인) 셸은 프로세스이지만 모든 프로세스가 셸이 아닙니다.
실행중인 모든 응용 프로그램과 데몬은 프로세스입니다. 프로세스가 아닌 유일한 것은 커널 (커널 스레드 포함)입니다. 적어도 OSes와 같은 유닉스에서 커널은 하나 또는 그 이상의 초기 손으로 만들어진 프로세스를 시작한다. init
. 이 프로세스는 다른 프로세스의 전체 계층의 부모입니다. 당신이 ps
아니면 그 top
명령을 사용하면 각 프로세스가 고유 한 PID
.
터미널 에뮬레이터에 로그인하면 대화식 쉘을 시작합니다 (예 : sh
, dash
, ksh
, bash
, zsh
좋아하는 사람. 이 셸은 터미널 창에서 입력하는 명령을 해석합니다. 예를 들면 다음과 같습니다. ls
, cat
과 date
. 후자는 쉘이 아니라 실행 가능 바이너리입니다.
또한 쉘에 의해 실행될 명령을 포함하는 텍스트 파일 인 쉘 스크립트를 실행할 수 있습니다.
모든 프로그램이 쉘 스크립트 또는 대화식 쉘 세션이 아니기 때문에 쉘이 프로세스의 동의어라고 말할 수는 없습니다.
init
프로세스 또는 vim
편집기 또는 일부 데몬 등. Venn 다이어그램이 마음에 드시면 : i.stack.imgur.com/scZJV.png