검색 상세

실시간 스케줄링을 지원하는 멀티코어 가상 임베디드 머신 환경 하이퍼바이저

초록/요약

임베디드 환경에서 마이크로프로세서는 하드웨어 성능에서 가장 중요한 요소 중에 하나이다. 현재 임베디드 환경 마이크로프로세서의 큰 이슈 중에 하나는 다중 코어로서 이미 이중 코어를 탑재한 임베디드 기기들은 빠른 속도로 인해 사람들의 관심을 많이 받고 있다. 하드웨어의 성능이 증가하면서 임베디드 기기의 가상화에 대한 관심도 증가하고 있다. 임베디드 시스템에 가상화가 적용이 되면 범용적인 운영체제와 실시간 운영체제를 함께 지원할 수 있어, 실시간 특성이 요구되는 어플리케이션을 지원하는 범용적인 운영체제를 제공할 수 있다. 또한 운영체제를 격리시킬 수 있기 때문에 보안성이 높아지고, 오류가 발생하여도 전체 시스템에 영향을 주지 않아 신뢰성이 높아질 수 있다. 또한, 디바이스 드라이버를 수정하지 않고 사용할 수 있어 재사용성이 증가한다. 본 논문에서는 임베디드 머신 기반의 가상 하이퍼바이저에서 범용적인 운영체제와 실시간 운영체제를 다중 코어 기반에서 적합하게 실행시킬 수 있는 수정된 스케줄러를 제시하였다. 기존의 단일 코어에서 구현된 PARFAIT 스케줄러는 실시간 운영체제에 적합한 SEDF 스케줄러와 범용적인 운영체제에 적합한 BVT 스케줄러를 통합한 계층형 스케줄러로서 한 개의 하드웨어에서 다양한 목적의 운영체제가 함께 동작할 수 있다. 하지만 기존의 SEDF 스케줄러는 다중코어에 대한 고려가 되지 않아 다중코어에서는 비효율적으로 동작한다. 따라서 우리는 SEDF 스케줄러를 수정하여 CPU를 VCPU 단위가 아닌 도메인 단위로 하여 멀티 코어에서 좀 더 효율적으로 CPU 할당을 할 수 있게 하였다. 이어지는 실험에서는 이중 코어 CPU인 Tegra250에 이를 구현하였고 큰 성능의 저하 없이 실시간 운영체제의 실시간성을 좀 더 효율적으로 지원함을 보였다.

more

목차

1. 서론 5
1.1 연구 배경 5
1.2 연구 목표 10
1.3 논문의 구성 11
2. 관련연구 12
2.1 가상화 머신 모니터 12
2.1.1 젠 12
2.1.2 L4 마이크로커널(Microkernel)의 가상화 14
2.2 GEDF 스케줄러 16
2.3 다중 프로세서 스케줄링을 위한 가상 클러스터 기반의 스케줄링 17
2.4 Xen-ARM을 위한 계층형 스케줄러 19
2.5 Credit 스케줄러[20-22] 21
3. 구조 및 설계 22
4. 구현 24
4.1 실행 큐를 합침 24
5. 실험 환경 및 결과 29
6. 결론 및 향후 과제 31
참고 문헌 32

more