View

프로세스 상태와 스케쥴러

  • 멀티 프로그래밍 : CPU 활용도를 극대화하는 스케쥴링 알고리즘
  • Wait: 간단히 저장매체로부터 파일 읽기를 기다리는 시간으로 가정

프로세스 상태 5가지


주요 상태 정보 3가지

  • ready state : CPU에서 바로 실행가능 상태(실행 대기 상태)
  • running state : 현재 CPU에서 실행상태
    => 단일 CPU라면, running state의 프로세스는 1개 또는 0개가 된다.
  • block state : 특정 이벤트 발생 대기 상태(예: 프린팅이 다 되었다!)
    => waite 상태로 예를 들어 파일 읽기 요청을 기다리는 상태임. 요청이 오면 ready state로 변경됨.
  • new : 프로세스 생성 중
  • exit : 종료를 진행할때, 프로세스가 가지고 있는 파일, 시스템 리소스 들을 풀어줘야하는 시간이 필요.

프로세스 상태 관계


살펴보기

  • 아래 그림에서 CPU가 ready상태인 프로세스 1, 2, 3 중 2를 실행하였다고 하면, 2는 실행이 끝나고 wait상태가 되며, 프로세스 1,3은 여전히 ready 상태 임을 알 수 있다. 하지만 여기서 프로세스 1, 3 중 어떤 것을 실행 시킬지에 대한 기준이 필요하게 된다.

프로세스 상태를 기반으로 한 Queue 자료구조 알고리즘의 스케쥴링

  • 1,2 프로세스의 실행이 끝나고 3번 프로세스만 남은 상태에서 중간에 3초라는 wait시간이 필요하기 때문에, CPU idle이 생기게 됨.
  • CPU idle : CPU가 아무 것도 시행하지 않는 상태
  • 이 밖에도 앞에서 공부한 최단시간, 우선순위에 따른 알고리즘을 적용할 수 있다.
Share Link
reply
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30