Credit 스케줄러는 가상 머신 모니터인 Xen의 기본 스케줄러이다. Credit 스케줄러는 하나의 물리적인 CPU자원을 각 게스트 도메인에 공평하게 분배 해 주기 위해 weight 값을 사용한다. 이 값은 상...

http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.
변환된 중국어를 복사하여 사용하시면 됩니다.
https://www.riss.kr/link?id=T11950896
서울 : 高麗大學校 大學院 , 2010
학위논문(석사) -- 高麗大學校 大學院 , 컴퓨터學科 電算學專攻 , 2010. 2
2010
한국어
서울
vi, 30 p. : 삽도 ; 26 cm.
지도교수: 유혁
단면인쇄임
참고문헌: p. 29-30
0
상세조회0
다운로드Credit 스케줄러는 가상 머신 모니터인 Xen의 기본 스케줄러이다. Credit 스케줄러는 하나의 물리적인 CPU자원을 각 게스트 도메인에 공평하게 분배 해 주기 위해 weight 값을 사용한다. 이 값은 상...
Credit 스케줄러는 가상 머신 모니터인 Xen의 기본 스케줄러이다. Credit 스케줄러는 하나의 물리적인 CPU자원을 각 게스트 도메인에 공평하게 분배 해 주기 위해 weight 값을 사용한다. 이 값은 상대적인 값으로, 각 게스트 도메인은 생성시에 일정한 weight 값을 할당 받게 된다. 그리고 이 값의 비율만큼 CPU 자원을 할당 받게 된다. 그러나 이렇게 정적으로 할당된 weight 값에 의해 CPU bound 도메인은 상대적인 불이익을 받을 수 있게 된다.
이것은 Xen이 기본 IO 모델로서 Split-Driver 모델을 사용하고 있기 때문이다. Split-Driver 모델에서는 게스트 도메인의 IO처리는 IDD라는 별도의 도메인에서 처리 하게 된다. 그러나 이 때, 특정 도메인의 IO 처리를 위해서 사용되는 IDD의 CPU 사용량은 IO를 유발한 도메인의 weight 값에 포함되지 않는다. 따라서 IO 처리량이 많은 도메인은 IDD를 사용한 만큼 CPU 사용량에서 이익을 받게 된다. 또한 weight값은 상대적인 값이므로 CPU bound 도메인은 그만큼의 불이익을 받게 된다.
이러한 불평등을 개선하기 위해, 개선된 스케줄러에서는 각 도메인의 IDD사용 비율에 따라 weight를 동적으로 재 할당 한다. IDD의 사용 비율은 해당 도메인이 OVER 상태의 우선순위에 있을 때 받게 되는 wake() 함수의 카운팅 값으로부터 계산한다. OVER 상태는 해당 도메인이 자신의 credit을 다 소모한 상태를 의미한다. 따라서 각 도메인의 OVER 상태에서의 wake() 호출 수를 카운팅 함으로써 각 도메인의 IO intensive 정도를 측정할 수 있다. 스케줄러 내부의 함수인 wake() 카운팅 값을 사용함으로써 Xen이나 게스트 운영체제의 수정 없이 스케줄러의 수정만으로 IO 사용 비율을 측정할 수 있다.
이렇게 측정된 wake() 함수의 카운팅 값으로부터, 각 도메인에 일정 부분의 weight 값을 재 분배 해 준다. 이를 위해 각 도메인의 weight에 따라 사용할 수 있는 wake 값의 threshold를 정한다. 특정 도메인의 wake값이 자신에게 정해진 threshold를 초과한 경우 자신의 weight에서 초과한 비율 만큼을 적은 wake를 카운팅 한 도메인에게 양도해 준다. 이와 같은 방법으로 IDD의 사용량에 따라 weight를 동적으로 분배해 줌으로써 CPU bound 도메인의 상대적인 불이익을 해소시킨다.
목차 (Table of Contents)