스케쥴러와 프로세스

NNIIE·2021년 4월 16일
0

운영체제

목록 보기
5/7

프로세스란

  • 메모리에 올려저서 실행중인 프로그램
  • 작업, task, job 이라는 용어와 혼용
  • 응용프로그램 != 프로세스
  • 응용프로그램은 여러 프로세스로 이루어질 수 있다
    (하나의 응용프로그램은 여러 프로세스(프로그램)가 상호작용을 하면서 실행될수 있음)

스케쥴러와 프로세스의 관계

  • 스케줄러 : 프로세스 실행을 관리

스케쥴링 알고리즘

  • 어느 순서대로 프로세스를 실행시킬까 하는 개념
  • 예) 시분할시스템 : 프로세스 응답시간을 가능한 짧게
  • 예) 멀티프로그래밍 : CPU활용도를 최대로 높혀서, 프로세스를 빨리 실행

FIFO(First In First Out) 스케쥴러

  • 가장 간단한 스케쥴러 (배치 처리 시스템과 유사)
  • 가장 먼저 들어온 프로세서 순서대로 실행시키는 스케쥴러
  • FCFS (Frist Come First Served) 스케쥴러 라고도 불림
  • QUEUE 와 같은개념

최단 작업 우선(SJF) 스케쥴러

  • 가장 프로세스 실행시간이 짧은 프로세스부터 먼저 실행시키는 알고리즘
  • 각 프로세스의 실행시간을 알고있어야 하는 전제조건이 있다

우선순위 기반 스케쥴러

  • Priority-Based 스케쥴러
  • 정적 우선순위 (프로세스마다 우선순위를 미리지정)
  • 동적 우선순위 (스케쥴러가 상황에따라 우선순위를 동적으로 변경)

Round Robin 스케쥴러

  • 시분할 시스템 기반
  • 준비된 큐에 프로세스들을 순서대로 실행하지만 시간이 걸리는 프로세스들은 다시 후순위로 배치하고 다음 프로세스를 실행한다.

0개의 댓글