백그라운드 작업과 포그라운드 작업은 항상 실행됩니까?

백그라운드 작업과 포그라운드 작업은 항상 실행됩니까?

작업은 실행 중이거나 중지(일시 중지)될 수 있습니다.

포그라운드 작업과 백그라운드 작업에 대해 이야기할 때 작업 실행에 대해서만 이야기하는 것인가요?

백그라운드 작업과 포그라운드 작업은 항상 실행됩니까?

중지된 작업이 전경인지 배경인지 구분하는 것이 말이 됩니까?

답변1

백그라운드 작업: 동일한 셸에서 백그라운드로 실행되는 작업입니다. bg 명령을 사용하여 모든 백그라운드 작업을 볼 수 있습니다.

포그라운드 작업: 눈앞의 동일한 셸에서 실행되는 작업입니다.

일시 중지된 작업: 중지/일시 중지된 작업이지만 실행을 재개할 수 있습니다.

예를 들어 아주 명확하게 설명하겠습니다.

virt00# sleep 180
^Z
zsh: suspended  sleep 180
virt00# jobs
[1]  + suspended  sleep 180
virt00# bg
[1]  + continued  sleep 180
virt00# fg
[1]  + running    sleep 180
^Z
zsh: suspended  sleep 180
virt00# jobs
[1]  + suspended  sleep 180
virt00#

라는 작업을 시작한 sleep 180다음 Ctrl+Z를 눌러 중지했습니다. 이제 내 작업이 보류되었습니다.

명령을 입력하면 보입니다 jobs. 이제 백그라운드에서 실행을 재개하고 싶기 때문에 bg명령을 입력하면 일시 중지 상태에서 실행 상태로 이동하지만 백그라운드에서는 실행됩니다.

이제 명령을 입력하여 fg포그라운드로 가져오면 작업이 단계적으로 진행되지 않지만 백그라운드 작업 큐에서 가져와 포그라운드 작업 큐로 푸시됩니다.

그렇습니다. 백그라운드 작업과 포그라운드 작업은 항상 실행됩니다.

관련 정보