운영체제 스케줄링 알고리즘 Process Scheduling

다중 프로그래밍을 가능하게 하는 운영체제 동작 기법인 프로세스 스케줄링에 대해서 알아보겠습니다.

 

운영체제 스케줄링 (Process Scheduling)

프로세스들에 한정된 CPU 자원을 적절하게 효율적으로 할당하기 위해 여러 프로세스에 CPU 자원을 분배하기 위한 기법입니다.

 

비선점 스케줄링(Non-preemptive Scheduling)

이미 할당된 CPU를 다른 프로세스가 강제로 빼앗을 수 없는 스케줄링

 

  • 모든 프로세스에 대한 요구를 공정하게 처리할 수 있다.
  • 일괄처리방식에 접합하다.
  • 중요한 짧은 작업이 중요하지 않은 긴 작업을 기다리는 등의 비효율이 발생한다.
  • 응답 시간 예측이 용이하다.

대표적 알고리즘: FCFS(FIFO), SJF, HRRN, 우선순위, 기한부 등

 

선점 스케줄링(Preemptive Scheduling)

프로세스가 CPU를 할당받아 실행 중에도 우선순위가 높은 다른 프로세스가 CPU를 빼앗을 수 있는 스케줄링

 

  • 우선순위가 높은 프로세스 위주로 빠르게 처리할 수 있다.
  • 빠른 응답시간을 요구하는 대화식 시분할 시스템에 주로 사용된다.
  • 선점 시간 배당을 위한 타이머 클럭이 필요하며, 선점으로 인한 많은 오버헤드를 초리한다.

대표적 알고리즘: SRT, RR, 선점 우선순위, MLQ, MLFQ

 

구분 기법 설명 문제/해결
비선점 FCFS 먼저 들어온 프로세스 먼저 처리 Convoy Effect 발생
  SJF 처리시간이 짧은 프로세스부터 처리 Starvation 발생
  HRN 짧은 작업시간이면서 대기시간이 긴 프로세스부터 처리 Starvation 해결
선점 라운드 로빈 먼저 들어온 순서대로 일정 시간만큼만 처리  
  SRT 남은 시간이 짧은 프로세스부터 처리  
  MLQ 우선순위별로 큐를 분리하여 다양한 스케줄링 적용 Starvation 발생
  MLFQ MLQ에서 큐 간 이동하여 우선순위 조정 Starvation 해결
  RM RTOS에서 요청 주기가 짧은 순서대로 처리  
  EDF RTOS에서 마감 시간이 임박한 순서대로 처리 마감시간 계산 어려움

 

[보안(Security)] - [정보보안기사] 용어정리 1

 

[정보보안기사] 용어정리 1

ARP 스푸핑 (Address Resolution Protocol Spoofing) 동일 네트워크에 존재하는 공격 대상 PC의 IP 주소를 공격자 자신의 랜카드 주소와 연결해 다른 PC에 전달 돼야 하는 정보를 가로채는 공격을 말한다. 어떤

coconuts.tistory.com

[정보, 꿀팁(info)] - 마이크로소프트 New Bing 챗GPT 사용 신청하기

 

마이크로소프트 New Bing 챗GPT 사용 신청하기

마이크로소프트에서 ChatGPT API를 이용한 새로운 bing 검색엔진을 공개하였습니다. 아마 MS가 ChatGPT에 많은 투자가 있었기 때문에 더욱 빠르게 정보를 받아보고 그것을 토대로 새로운 검색엔진이

coconuts.tistory.com

 

댓글

Designed by JB FACTORY