ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [OS] 스케줄러(Scheduler)란?
    OS 2020. 6. 19. 11:03
    728x90
    • Ready Queue에 존재하는 프로세스들을 특정한 우선순위를 기반으로 CPU를 할당받게 하는 역할
    • 프로세스가 생성되어 완료될때까지 프로세스는 여러 종류의 스케줄링 과정을 거침
    • 프로세스를 스케줄링하기 위한 큐의 종류
      • Job Queue : 현재 시스템 내에 있는 모든 프로세스의 집합
      • Ready Queue : 현재 메모리 내에 있으면서 CPU를 할당 받기를 기다리는 프로세스의 집합
      • Device Queue : Device I/O 작업을 대기하고 있는 프로세스 집합

    스케줄러의 종류

    장기 스케줄러

    - 어떤 프로세스를 Ready Queue에 삽입할지 결정 - 메모리와 디스크 사이의 스케줄링을 담당 - 프로세스에 메모리를 할당 - 메모리에 동시에 올라가 있는 프로세스의 수를 조절 - 프로세스의 상태[new -> ready(inmemory)]

    단기 스케줄러

    - CPU와 메모리 사이의 스케줄링을 담당하며 CPU 스케줄러라고도함 - Ready Queue에 존재하는 프로세스들 중 스케줄링 알고리즘에 따라 CPU를 할당할 프로세스 선택 - 프로세스의 상태[ready -> running -> waiting -> ready]

    중기 스케줄러

    - 메모리에 적재된 프로세스의 수를 동적으로 조절 - 메모리적재된 프로세스의 수가 많을 때 메모리를 통째로 디스크의 스왑 영역에 저장(Swap Out) - 프로세스의 상태[ready -> suspended]

    728x90

    'OS' 카테고리의 다른 글

    [OS] 세마포어(Semaphore)와 뮤텍스(Mutex)의 차이  (0) 2020.07.06
    [OS] 교착상태(Dead Lock)  (0) 2020.07.05
    [OS] Process와 Thread  (0) 2020.06.17
    [OS] 운영체제란?  (0) 2020.06.16
Designed by Tistory.