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