"중지됨"은 "차단됨" 상태에 속합니까?

"중지됨"은 "차단됨" 상태에 속합니까?

ps페이지

PROCESS STATE CODES
   R  running or runnable (on run queue)
   D  uninterruptible sleep (usually IO)
   S  interruptible sleep (waiting for an event to complete)
   Z  defunct/zombie, terminated but not reaped by its parent
   T  stopped, either by a job control signal or because
      it is being traced

위키피디아http://en.wikipedia.org/wiki/Process_state적어도 D, S 및 T 상태는 명시적으로 언급되지 않았습니다.

D, S, T는 준비 상태, 차단 상태 또는 기타 상태에 속합니까?

답변1

Linux 아키텍처에는 소위 "차단" 상태가 없기 때문에 "차단" 상태가 무엇을 의미하는지 모르겠습니다. 그러나 이러한 상태가 무엇을 의미하는지 설명할 수 있습니다.

셸에서 명령을 실행하면 sleep 100해당 명령이 먼저 상태에 들어간다고 가정합니다 R. 실행 중이지만 그리 길지는 않고 CPU 시간이 몇 조각에 불과합니다. D하드 드라이브를 기다리기 때문에 중단 없이 잠자기 상태가 되는 경우가 몇 번 있습니다 . 그런 다음 중단 가능한 절전 상태로 들어갑니다 S.

Ctrl+를 누르면 해당 프로세스로 Z이동됩니다 . SIGSTOP그런 다음 프로세스는 중지된 상태로 들어갑니다 T. SIGCONT신호가 전송될 때까지 이 상태를 유지합니다 . 이 상태에서는 프로세스가 CPU 시간을 받지 않습니다.

Z프로세스가 종료되면 상위 프로세스가 호출할 때까지 좀비 상태가 되며 waitpid(), 그런 다음 커널은 PID를 삭제합니다.

관련 정보