Dreaming Deve1oper

Scheduling 본문

운영체제

Scheduling

주현테크 2021. 11. 17. 15:20

스케줄링 [Scheduling]

 

■ 처리기 스케줄링

  • 처리기 스케줄링의 정의: 응답 시간이나 처리량, 효율성을 증대시키기 위해 처리기가 다음에 실행할 프로세스를 선택하는 것.

※ 선후 관계에 따른 스케줄링의 4가지 유형

장기 (long - term) 스케줄링 프로세스가 CPU에 의해 실행 가능한 자격을 부여 여부를 결정
중기 (medium - term) 스케줄링 프로세스 이미지 전부 혹은 일부가 주 메모리에 올라올 수 있는지에 대한 여부를 결정
단기 (short - term) 스케줄링 CPU에 의해 실행될 다음번 프로세스로 어떤 프로세스를 선택할지 결정
입출력 (I/O) 스케줄링 대기 중인 입출력 요구 중 해당 입출력 장치가 다음번에 어떤 요구를 처리할지 결정
  • 장기 스케줄링: degree of multiprogramming을 결정
  • 중기 스케줄링: swapper의 역할
  • 단기 스케줄링: CPU 스케줄링에 해당

 

 

처리기 스케줄링의 유형: 장기 스케줄링

  • 새 프로세스의 시스템 진입 허용 여부 결정
  1. 멀티 프로그래밍의 정도를 결정
  2. 새로운 프로세스의 진입 허용 시점: 시스템 내의 부하 조절, 시스템 포화 상태 여부
  • 어떤 규정으로 작업들을 골라 프로세스로 만들 것인가?
  1. FCFS (First Come First Served)
  2. Priority - Based
  3. CPU - Burst 길이
  4. 입출력 중심 (I/O bound) 프로세스 우대
  5. 여유 입출력 자원 사용 예정 프로세스 우대

 

 

처리기 스케줄링의 유형: 중기 스케줄링

  • 스와핑(swapping) 기능의 일부
  1. 스왑 공간으로 쫓겨나간(swap-out) 프로세스 전체 또는 일부 중 어느 것을 다시 주 메모리로 스왑인(swap-in)할 것인가?

 

처리기 스케줄링의 유형: 단기 스케줄링

  • 디스패쳐(dispatcher)라고도 한다.
  1. 장기/중기 스케줄러보다 매우 자주 실행
  2. 세밀한 기준으로 다음 번에 실행시킬 프로세스를 선정
  • 단기 스케줄러 실행 시점
  1. 클럭(타이머) 인터럽트(시간할당량 만료 시): 타임아웃을 설정하고 발생시, 스케줄링 자동으로 호출
  2. 입출력 인터럽트
  3. 운영체제 시스템 호출(커널 내 preemption point 또는 사용자 모드로 복귀하기 직전)
  4. 신호(signal)(예를 들면, 세마포어)

 

 

'운영체제' 카테고리의 다른 글

Scheduling_3  (0) 2021.12.01
Scheduling_2  (0) 2021.11.24
Virtual Memory_2  (0) 2021.11.17
Virtual Memory  (0) 2021.11.10
Loading/Linking  (0) 2021.11.10
Comments