• New

    • 프로세스를 생성 중인 상태
      • 이제 막 메모리에 적재되어 PCB를 할당받은 상태
    • 생성 상태를 거쳐 실행할 준비가 완료된 프로세스는 곧바로 실행되지 않고 준비 상태가 되어 CPU의 할당을 기다림
  • Ready

    • 당장이라도 CPU를 할당받아 실행할 수 있지만, 아직 자신의 차례가 아니기에 기다리고 있는 상태
    • Dispatch
      • 준비 상태인 프로세스가 실행 상태로 전환되는 것
  • Running

    • CPU를 할당받아 실행 중인 상태
    • 타이머 인터럽트가 발생(프로세스가 할당된 시간을 모두 사용) → 다시 준비 상태가 됨
    • 실행 도중 입출력장치를 사용하여 입출력장치의 작업이 끝날 때까지 기다려야 함 → 대기 상태가 됨
  • Waiting

    • 특정 이벤트(입출력장치의 작업 등)가 일어나길 기다리는 상태
      • 입출력 작업을 요청한 프로세스는 입출력 완료 인터럽트를 받을 때까지(입출력장치가 입출력을 끝낼 때까지) 기다려야 함
    • 입출력 작업이 완료되면 해당 프로세스는 다시 준비 상태로 CPU 할당을 기다림
  • Terminated

    • 프로세스가 종료된 상태
    • 프로세스가 종료되면 운영체제는 PCB와 프로세스가 사용한 메모리를 정리함
  • Process state diagram

    Untitled