DOI QR코드

DOI QR Code

K-Hypervisor: 실시간 임베디드 시스템을 위한 ARM 기반의 하이퍼바이저 설계 및 구현

K-Hypervisor: Design and Implementation of ARM Hypervisor for Real-Time Embedded Systems

  • 고원석 (국민대학교 컴퓨터공학부) ;
  • 유정우 (국민대학교 컴퓨터공학부) ;
  • 강인구 (국민대학교 컴퓨터공학부) ;
  • 전진우 (국민대학교 컴퓨터공학부) ;
  • 황인기 (국민대학교 컴퓨터공학부) ;
  • 임성수 (국민대학교 컴퓨터공학부)
  • 투고 : 2016.08.31
  • 심사 : 2016.12.16
  • 발행 : 2017.04.15

초록

최근 실시간 임베디드 시스템 분야에서 가상화를 이용한 시스템 통합에 대한 관심이 꾸준히 증가하고 있다. 가상화 기술은 하이퍼바이저의 개입으로 인한 오버헤드를 수반하며 이는 가상 머신 상에서 구동되는 프로그램의 수행시간을 증가시킨다. 수행시간이 증가함에 따라 가상 머신 상에 있는 소프트웨어의 성능이 하락하며, 실시간성을 유지하기 어려워진다. 본 논문에서는 이러한 문제를 해결하기 위해 가상머신 상의 프로그램이 하이퍼바이저의 개입 없이 직접 물리적인 자원에 접근할 수 있도록 하이퍼바이저를 설계하고 구현하였으며 이를 K-Hypervisor라 부른다. 실험 결과에 따르면 K-Hypervisor 상에서 구동되는 프로그램들의 수행시간은 네이티브 환경에서 측정된 결과와 비교하여 평균적으로 약 3% 정도 증가한다. 또한 성능 저하가 태스크가 접근하는 자원의 종류나 빈도와 관계없이 항상 일정하여 소프트웨어의 실시간성을 유지하기에 적합하다.

Recently, there has been growing interest in workload consolidation via virtualization for real-time systems. Meanwhile, due to virtualization, additional overhead from intervention of hypervisor increases the execution time of applications running on virtual machine. The increase in execution time decreases the performance of workloads on virtual machines, thus satisfying real-time requirements are not easy. To resolve the problem, we designed and implemented a hypervisor (the K-Hypervisor) that allows programs on virtual machines to access the physical resources, without intervention of the hypervisor. Experimental results show that programs running on K-Hypervisor increase their execution time by about 3% on an average, compared to the native environment. Moreover, it is suitable for real-time workload execution because of its uniform performance degradation, regardless of the resources accessed from tasks, and the frequency it is accessed.

키워드

과제정보

연구 과제 주관 기관 : 정보통신기술진흥센터

참고문헌

  1. R. Obermaisser, C. El Salloum, B. Huber, and H. Kopetz, "From a Federated to an Integrated Automotive Architecture," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 28, No. 7, pp. 956-965, Jul. 2009. https://doi.org/10.1109/TCAD.2009.2014005
  2. C. B. Watkins, and R. Walter, "Transitioning from federated avionics architectures to Integrated Modular Avionics," IEEE/AIAA 26th Digital Avionics Systems Conference, pp. 2.A.1-1-2.A.1-10, Oct. 2007.
  3. I, Shin, and I. Lee, "Compositional real-time scheduling framework," IEEE 25th Real-Time Systems Symposium, pp. 57-67, Dec. 2004.
  4. J. Lee, S. Xi, S. Chen, L. Phan, C. Gill, I. Lee and C. Lu, "Realizing Compositional Scheduling through Virtualization," IEEE 18th Real-Time and Embedded Technology and Applications Symposium, pp. 13-22, Apr. 2012.
  5. M. Xu, L. Phan, I Lee, O. Sokolsky, S. Xi, C. Lu and C. Gill, "Cache-Aware Compositional Analysis of Real-Time Multicore Virtualization Platforms," IEEE 34th Real-Time Systems Symposium, pp. 1-10, Dec. 2013.
  6. L. Phan, M. Xu, J. Lee, I. Lee and O. Sokolsky, "Overhead-aware compositional analysis of real-time systems," IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS), pp. 237-246, Apr. 2013.
  7. J. Hwang, S. Suh, S. Heo, C. Park, J, Ryu, S. Park, and C. Kim, "Xen on ARM: System Virtualization Using Xen Hypervisor for ARM-Based Secure Mobile Phones," IEEE Consumer Communications and Networking Conference, pp. 257-261, Jan. 2008.
  8. G. Heiser, and B. Leslie, "The OKL4 microvisor: convergence point of microkernels and hypervisors," Proc. of the first ACM asia-pacific workshop on Workshop on systems, Aug. 2010.
  9. E. Carrascosa, J. Coronel, M. Masmano, P. Balbastre, and A. Crespo, "XtratuM hypervisor redesign for LEON4 multicore processor," SIGBED Rev. 11, 2, Sep. 2014.
  10. N. Li, Y. Kinebuchi, H. Mitake, H. Shimada, T. H. Lin, and T. Nakajima, "A Light-Weighted Virtualization Layer for Multicore Processor-Based Rich Functional Embedded Systems," IEEE 15th International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing, pp. 144-153, Apr. 2012.
  11. K. Sandstrom, A. Vulgarakis, M. Lindgren, and T. Nolte, "Virtualization technologies in embedded realtime systems," IEEE 18th Conference on Emerging Technologies & Factory Automation (ETFA), pp. 1-8, Sep. 2013.
  12. H. Kim, S. Wang and R. Rajkumar, "Responsive and Enforced Interrupt Handling for Real-Time System Virtualization," IEEE 21st International Conference on Embedded and Real-Time Computing Systems and Applications, pp. 90-99, Aug. 2015.
  13. ARM. (2012). ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition [Online]. Available: http://infocenter.arm.com/help/topic/com.arm.doc.ddi0406c/index.html
  14. ARM. (2013). Cortex-a15 mpcore processor technical reference manual [Online]. Available: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0438i/index.html
  15. ARM. (2012). High Performance or Cycle Accuracy [Online], Available: https://developer.arm.com/products/system-design/cycle-models/resources?hsCtaTracking=1dbbc330-0c5d-4f8c-81c5-72ae13a2d8a2%7C1f3952c3-cb81-410d-971a-edf5b747cf15
  16. T. Broomhead, L. Cremean, J. Ridoux, and D. Veitch, "Virtualize Everything but Time," OSDI, Vol. 10, pp. 1-6, Oct. 2010.