본문 바로가기
공부(TIL)/정보처리기사

[정보처리기사 실기] 프로세스 스케줄

by 하루지오 2024. 10. 13.

프로세스 스케줄

1) CPU를 사용하려고 하는 프로세스들 사이의 우선순위를 관리하는 작업

2) 유형

선점형 스케줄링 하나의 프로세스가 CPU를 차지하고 있을 때, 우선숭위 높은 다른 프로세스가 현재 프로세스를 중단시키고 CPU를 점유하는 스케줄링 방식
ex) SRT, MLQ, MLFQ, RR
비선점형 스케줄링 한 프로세스가 CPU를 할당 받으면 작업 종료 후 CPU 반환 시까지 다른 프로세스는 CPU 점유가 불가능한 스케줄링 방식
ex) 우선순위(Priority), 기한부(Deadline), FCFS(FIFO), SJF, HRN

 

  • SRT (Shortest Remaining Time First) : 가장 짧은 시간이 소요되는 프로세스를 먼저 수행, 남은 처리시간이 더 짧다고 판단되는 프로세스가 준비 큐에 생기면 언제라도 프로세스가 선점되는 스케줄징 기법. 비선점 방식의 스케줄링 기법에 선점 방식을 도입한 기법
  • MLQ(Multi Level Queue): 작업들을 여러 종류 그룹으로 분할, 여러 개의 독립된 스케줄링 큐를 이용하여 상위 단계 작업에 의한 하위 단계 작업이 선점 당하는 기법
  • MLFQ(Multi Level Feedback Queue): 입출력 위주와 CPU 위주인 프로세스의 특성에 따라 큐마다 서로 다른 CPU 할당량 부여하는 기법. FCFS(FIFO)와 RR(Roung Robin) 혼합 기법(높은 우선순위→점점 낮은 우선순위→라운드 로빈)
  • RR(Roung Robin): 프로세스가 같은 크기의 CPU 시간을 할당(시간 할당량), 프로세스가 할당된 시간 내에 처리 완료를 못하면 준비 큐 리스트의 가장 뒤로 보내지고, CPU는 대기 중인 다음 프로세스로 넘어가는 스케줄링 기법
  • 우선순위(Priority): 각 프로세스 별로 우선순위가 주어지고 우선순위에 따라 CPU 할당하는 기법
  • 기한부(Deadline): 작업들이 명시된 시간이나 기한 내에 완료되도록 계획하는 기법
  • FCFS(FIFO): 프로세스가 대기 큐에 도착한 순서에 따라 CPU를 할당하는 기법
  • SJF(Shortest Job First): 프로세스가 도착하는 시점에 따라 그 당시 가장 작은 서비스 시간(소요 시간)을 갖는 프로세스가 종료 시까지 자원을 점유하는 스케줄링 기법. CPU 요구시간이 긴 프로세스는 기아 현상 발생
  • HRN(Highest Response Ratio Next):  서비스 시간과 대기 시간을 고려한 HRN 우선순위 계산식에 따라 대기 시간이 긴 프로세스일 경우 우선순위가 높아지게 하여 가변적으로 우선순위를 결정하는 스케줄링 기법

 

* 기아 현상: 시스템 부하가 많아서 낮은 등급에 있는 준비 큐에 있는 프로세스가 무한정 기다리는 현상

* HRN 우선순위 계산식=(대기 시간 + 서비스 시간) / 서비스 시간