2023. 1. 9. 20:39ㆍIntelligence Technology
선점 스케줄링이란
현재 CPU에서 처리 중인 작업이 있는 상태지만 다른 작업들이 프로세서를 뺏을 수 있는 작업처리 방법을 의미합니다.
선점 스케줄링에는 선점 우선순위, SRT(Shortest Remaining Time), RR(Round Robin), 다단계 큐, 다단계 피드백 큐 등의 기법이 있습니다.
하나씩 알아보겠습니다.
선점 우선순위는
큐에 대기 중인 작업들 중 우선순위가 가장 높은 프로세스에게 CPU 우선 사용 기회를 부여하는 방법입니다. 비선점 우선순위 기법을 선점 형태로 변경한 방법으로 큐에 도착한 작업의 우선순위가 높은 경우 현재 CPU에서 처리 중인 프로세스를 중단하고 새로운 프로세스를 실행하게 됩니다.
SRT(Shortest Remaining Time)
비선점 기법 중 SJF를 선점 형태로 변경한 방식이며 선점 SJF 기법이라고도 부릅니다. 현재 실행 중인 프로세스의 남은 시간과 큐에 새로 도착한 프로세스의 실행 시간을 비교하여 짧은 실행 시간을 요구하는 프로세스에게 CPU를 할당하는 기법입니다. 하지만 큐에 도착한 프로세스들의 실행 시간을 계속해서 알고 있어야 하며 현재 작업 중인 프로세스들과 비교를 해야 되기에 오버헤드가 증가하게 됩니다.
RR(Round Robin)
라운드 로빈은 시분할 시스템을 위해 등장한 기법입니다. FIFO 기법과 같이 CPU는 큐에 먼저 들어온 프로세스대로 처리를 하지만 CPU는 하나의 작업이 끝날 때까지 계속 처리하는 게 아닌 일정 시간만큼만 처리를 하고 다음의 작업을 처리하는 방식입니다. 만약 일정 시간 동안 작업 처리가 완료되지 않은 경우 해당 작업은 큐의 제일 마지막으로 배치가 됩니다. 따라서 작업을 처리하도록 시간 배분을 여유 있게 설정해두면 FIFO방식과 동일하게 처리가 되지만 시간 배분을 줄이는 경우 여러 작업을 조금씩 처리하는 방향으로 진행이 되며 이런 경우 작업 교체 및 오버헤드가 자주 발생하여 신속한 처리가 어렵습니다.
다단계 큐
프로세스를 특정 그룹으로 분류하고 각 그룹에 따른 각기 다른 큐를 사용하는 방법입니다. 프로세스 우선순위에 따라 시스템 프로세스, 대화형 프로세스, 편집 프로세스, 일괄 처리 프로세스 등으로 나누어 준비상태 큐를 상위, 중위, 하위 단계로 배치합니다.
각각의 큐는 독자적인 스케줄링을 가지고 있어 각 그룹의 특성에 따른 서로 다른 스케줄링 기법을 사용합니다. 또한, 프로세스가 큐에 들어간 경우에는 다른 큐로 이동할 수 없습니다. 그리고 하위 단계 큐에 있는 프로세스를 실행하는 중 상위 단계 큐에 작업이 들어오면 하위 단계 작업을 멈추고 CPU는 상위단계의 작업을 처리하게 됩니다.
다단계 피드백 큐
다단계 큐의 특징인 다른 그룹으로 들어가 작업에 진행 중이면 이동할 수 없는 방법을 개선하기 위해 등장한 프로세스 관리 방법입니다. 각 큐마다 작업 처리 시간을 할당하여 해당 시간 동안 완료하기 못한 프로세스는 다음 단계의 큐로 이동을 합니다. 상위 단계의 큐에서 작업이 처리될수록 우선순위가 높고 시간 할당량이 적습니다.
각각의 큐에 배정되는 우선순위는 다음과 같습니다.
1. 요구하는 시간이 적은 프로세스
2. 입출력 중심의 프로세스
3. 낮은 우선순위에서 오래 기다린 프로세스
만약 하위 단계 큐에 있는 프로세스를 실행하는 중이라도 상위 단계 큐에 프로세스가 들어오면 상위 단계 프로세스에게 CPU를 할당하며 마지막 단계의 큐에서는 작업이 완료될 때까지 Round Robin 스케줄링 기법으로 작업을 처리하게 됩니다.
이상으로 선점 스케줄링에 대한 포스팅을 마치겠습니다.
오늘도 똑구의 블로그를 방문해 주셔서 감사합니다.
'Intelligence Technology' 카테고리의 다른 글
[운영체제] 기억장치 관리전략 (0) | 2023.01.13 |
---|---|
[운영체제] 프로세스 교착상태 및 해결방법 (0) | 2023.01.10 |
[운영체제] 비선점 스케줄링 기법 (0) | 2023.01.08 |
[운영체제] 운영체제 정의, 인터페이스, 작업 처리 방법 (0) | 2022.12.04 |
[운영체제] 시스템 소프트웨어 개념 및 구성 (0) | 2022.11.16 |