A Delayed Preemption Scheduling for Supporting Blocked Algorithm on Multiprogramming Environment

다중 프로그램 환경에서 블록화 알고리즘을 지원하기 위한 지연 선점 스케줄링

  • 정인범 (한국과학기술원 전산학과) ;
  • 이준원 (한구과학기술원 전산학과)
  • Published : 1999.03.01

Abstract

다중 프로그래밍 환경에서 운영체제는 시스템의 시간 할당량에 따라서 프로세스들에 대하여 문맥교환을 수행한다. 문맥교환은 현재 수행중인 프로세스 문맥의 저장과 다음에 수행되는 프로세스 문맥의 적재라는 비용 뿐만 아니라 캐쉬 메모리의 커다란 영향을 미친다. 특히 블록화 알고리즘은 사용하는 프로그램들은 재사용되기 위하여 캐쉬 메모리에 적재된 블록화 요소가 프로그램들의 문맥 교환사이에 다른 프로그램들에 의하여 손상되는 경우 프로그램의 캐쉬 성능이 크게 떨어진다. 본 논문에서는 하나의 블록화 요소에 대한 계산이 완료될 때까지 운영체제가 문맥 교환을 지연시키는 지연된 선점 스케쥴링 방법을 제안한다. 모의 시험을 통하여 지연된 선점 스케줄링을 사용할 경우 블록화 알고리즘을 사용한 프로그램들은 재사용되기 위하여 캐쉬 메모리에 적재된 블록화 요소가 프로그램들의 문맥 교환 사이에 다른 프로그램들에 의하여 손상되는 경우 프로그램의 캐쉬 성능이 크게 떨어지게 된다. 본 논문에서는 하나의 블록화 요소에 대한 계산이 완료될 때까지 운영체제가 문맥 교환을 지연시키는 지연된 선점 스케쥴링 방법을 제안한다. 모의 시험을 통하여 지연된 선점 스케줄링을 사용할 경우 블록화 알고리즘을 사용한 프로그램은 캐쉬 메모리에 적재된 블록화 요소를 문맥 교환으로부터 보호 받으므로 향상된 캐쉬성능을 나타냄을 보인다.

Keywords