[Linux] Process States

반응형

이번 글에서는 Linux 의 Process States 에 대해 알아보겠습니다.

1. Process States

process state 는 각 process 의 현재 동작 상태를 의미합니다.

하나의 process는 실행되고 종료되기까지의 life cycle 동안.. 여러번 동작 상태가 변경됩니다.

processor 부하, memory 사용 가능량, process 우선 순위 등등의 영향도에 따라서 얼마나 자주 process 의 states 가 변경될지가 정해지게 됩니다.

이때 process 는 다른 process 에게 전달받아야하는 정보를 기다리는 동안에 non-running states 로 변경될 수도 있습니다.

process 의 states 는 top 명령어로 확인할 수 있습니다.

top 

이러한 process 의 states 에는 기본적으로 아래의 5가지 상태가 존재합니다.

1) Running (R)
2) Sleeping (S)
3) Waiting (W)
4) Stopped (S)
5) Zombie (Z)

1-1) Running

running state 는 일반적으로 알고 있는.. process 가 동작하고 있는 상태입니다.

1-2) Sleeping

sleeping state 는 process 가 사용자 혹은 다른 process 로 부터 input 을 입력받기 위해 대기하고 있는 상태입니다.

1-3) Waiting

waiting state 는 sleeping state 에서 input 을 입력받아 running 가능한 상태이지만.. 아직 cpu 에게 선택받지 못해 본인의 turn 을 기다리고 있는 상태입니다.

1-4) Stopped

stopped state 는 일반적으로 알고 있는 process 가 멈춘 상태입니다.

stopped 상태의 process 는 cpu 에게 turn 을 넘겨받더라도 실행되지 않으며. 이를 실행하기 위해서는 state 를 변경하는 signal 을 입력받아야 합니다.

1-5) Zombie

zombie state 는 죽은 process 입니다.

process table 목록에는 존재하지만 실제론 어떠한 resource 도 사용하지 않습니다.

zombie process 는 parent process 가 허락할 때 까지 process entry 에 존재하게 됩니다.


반응형

'Linux' 카테고리의 다른 글

[Linux] Signal  (0) 2021.03.30
[Linux] Nice & Renice  (0) 2021.03.29
[Linux] Ping  (0) 2021.03.27
[Linux] DMIDECODE (System Management BIOS)  (0) 2021.03.13
[Linux] UNAME (System Information)  (0) 2021.03.13

댓글

Designed by JB FACTORY