DOI QR코드

DOI QR Code

Development of RTEMS SMP Platform Based on XtratuM Virtualization Environment for Satellite Flight Software

위성비행소프트웨어를 위한 XtratuM 가상화 기반의 RTEMS SMP 플랫폼

  • Received : 2020.03.20
  • Accepted : 2020.05.19
  • Published : 2020.06.01

Abstract

Hypervisor virtualize hardware resources to utilize them more effectively. At the same time, hypervisor's characteristics of time and space partitioning improves reliability of flight software by reducing a complexity of the flight software. Korea Aerospace Research Institute chooses one of hypervisors for space, XtratuM, and examine its applicability to the flight software. XtratuM has strong points in performance improvement with high reliability. However, it does not support SMP. Therefore, it has limitation in using it with high performance applications including satellite altitude orbit control systems. This paper proposes RTEMS XM-SMP to support SMP with RTEMS, one of real time operating systems for space. Several components are added as hypercalls, and initialization processes are modified to use several processors with inter processors communication routines. In addition, all components related to processors are updated including context switch and interrupts. The effectiveness of the developed RTEMS XM-SMP is demonstrated with a GR740 board by executing SMP benchmark functions. Performance improvements are reviewed to check the effectiveness of SMP operations.

위성비행소프트웨어의 역할이 커짐에 따라 가상화 기술이 위성에도 도입되고 있다. 가상화 기술 중 하나인 하이퍼바이져는 하드웨어 자원의 가상화를 통해 하드웨어를 보다 효율적으로 쓸 수 있도록 도와준다. 동시에 가상화 기술은 소프트웨어의 복잡도를 낮추어 신뢰성을 높이는 역할도 수행한다. 한국항공우주연구원에서는 위성용 하이퍼바이져 중 하나인 XtratuM을 차세대 하이퍼바이져 후보군으로 선정하고, 이를 위성비행소프트웨어에 적용할 수 있는지 가능성을 확인하고 있다. XtratuM은 하드웨어 효율성을 높일 수 있지만 SMP를 지원하지 않아 인공위성의 자세제어 알고리즘과 같이 고성능/병렬처리가 필요한 부분에 적용이 어렵다는 한계점을 지니고 있다. 본 논문에서는 XtratuM의 기능 확장과 RTEMS XM-SMP BSP를 추가적으로 구현하여 RTEMS 기반 SMP를 지원하도록 만든다. XtratuM을 분석하여 SMP에 필요한 기능을 하이퍼콜로 추가한다. 그 후 BSP를 수정하여 SMP에 필요한 다수의 프로세서를 초기화하는 과정과 프로세서간의 통신을 위한 초기화 과정을 구현한다. 나아가 문맥 교환, 인터럽트와 같이 SMP에 의한 충돌이 발생할 수 있는 부분에 대해서도 개선한다. 이렇게 개발한 RTEMS XM-SMP는 4개의 코어를 가지고 있는 GR740 보드를 이용하여 SMP 벤치마크 함수를 수행하여 검증하고 SMP를 통한 성능 변화를 확인한다.

Keywords

References

  1. Lim, S. S., "A Virtualization-based Software Architecture for Highly Secure and Reliable Mission Critical Systems," Journal of Computing Science and Engineering, Vol. 30, No. 3, 2012, pp. 47-54. https://doi.org/10.4203/csets.30.3
  2. Ginosar, R., "Survey of Processors in Space," Proceeding of Data Systems in Aerospace, Dubrovnik, Croatia, May 2012, pp. 1-5.
  3. Rufino, J. and Craveiro, J., "Robust Partitioning and Composability in ARINC 653 Conformant Real-Time Operating Systems," 1st INTERAC Research Network Plenary Workshop, Braga, Portugal, October 2008.
  4. Carrascosa, E., Coronel, J., Masmano, M., Balbastre, P. and Crespo, A., "XtratuM Hypervisor Redesign for LEON4 Multicore Processor," ACM SIGBED Review, Vol. 11, No. 2, 2014, pp. 27-31. https://doi.org/10.1145/2668138.2668142
  5. Kaiser, R., "Combining Partitioning and Virtualization for Safety-Critical Systems," SYSGO White Paper, 2007.
  6. Yoo, B. S., Choi, J. W., Jeong, J. Y. and Kim, S. W., "Performance Analysis of Processors for Next Generation Satellites," IEMEK Journal of Embedded Systems and Applications, Vol. 14, No. 1, February 2019, pp. 51-61. https://doi.org/10.14372/IEMEK.2019.14.1.51
  7. XtratuM in the Space Market, Accessed on March 18, 2020, Online, Available: http://fentiss.com/rdi/missions.
  8. Iqbal, S. M. Z., Liang, Y. and Grahn, H., "ParMiBench - An Open-Source Benchmark for Embedded Multiprocessor Systems," in IEEE Computer Architecture Letters, Vol. 9, No. 2, February 2010, pp. 45-48. https://doi.org/10.1109/L-CA.2010.14
  9. Guthaus, M. R., Ringenberg, J. S., Ernst, D., Austin, T. M., Mudge, T. and Brown, R. B., "MiBench: A Free, Commercially Representative Embedded Benchmark Suite," Proceedings of the Fourth Annual IEEE International Workshop on Workload Characterization, Austin, TX, USA, 2001, pp. 3-14.
  10. Liang, Y. and Iqbal, S. M. Z., "OpenMPBench - An Open-Source Benchmark for Multiprocessor Based Embedded Systems," Master thesis report, School of Computing, Blekinge Institute of Technology, Sweden, January 2010.