오픈소스 비행소프트웨어 플랫폼 : CFS(Core Flight System)
- 이름 최원섭
- 작성일 2016-08-04
- 조회 7621
CFS(Core Flight System)는 NASA의 Goddard Space Flight Center에서 개발된 비행소프트웨어를 위한 오픈소스 플랫폼이다. “Clone & Own” 방식의 개발에서 비롯되는 비효율성을 해결하기 위하여 2000년대 중반부터 개발이 시작되었고 2009년 LRO(Lunar Reconnaissance Orbiter) 프로젝트에 최초로 적용된 이후, LADEE(Lunar Atmosphere and Dust Environment Explorer), Morpheus, GPM(Global Precipitation Mesurement Mission), MMS(Magnetospheric Multiscale Mission), RBSP(Radiation Belt Storm Probe) 등 많은 NASA관련 프로젝트에 적용되었다.
CFS의 가장 큰 목적은 프로젝트에 독립적이고 재사용이 용이한 소프트웨어 플랫폼을 제공하는 것인데 이를 위한 계층화된 소프트웨어 아키텍쳐와 기능 모듈들의 데이터 입출력을 위한 미들웨어 방식의 메시지 버스가 핵심적인 특징이다.
이렇게 잘 정의된 소프트웨어 아키텍처에 힘입어 소프트웨어가 실행되는 하드웨어에 독립적인 소프트웨어의 개발이 가능하고 각 기능 모듈 간의 의존성이 최소화되어 기능 개발자 또는 부서간의 협업도 더 용이하게 진행할 수 있다. 그리고 비행소프트웨어에서 범용적으로 사용될 수 있는 여러 기능들이 제공되어 이들을 잘 활용하면 짧은 시간 안에 고품질의 비행소프트웨어를 구현할 수 있다.
2011년에 cFE(Core Flight Executive)와 OSAL(OS Abstraction Layer)이 웹사이트를 통하여 공개되었고 2015년 3월에 SCH(Scheduler), CF(CCSDS File Delivery Protocol) 등 12개의 핵심 기능을 가지는 어플리케이션들이 추가로 공개되어 아무런 제한 없이 다운로드 및 사용이 가능하다.
CFS의 소스 다운로드 및 더 자세한 내용에 대한 확인은 CFS의 공식 홈페이지인https://cfs.gsfc.nasa.gov 에서 할 수 있다.
※ 이 글은 아래 논문 및 기사를 참조하여 작성하였습니다.
Jonathan Wilmot, “A Core Plug and Play Architecture for Reusable Flight Software System”, 2nd IEEE International Conference On Space Mission Challenges for Information Technology, 2006
Alan Cudmore, “NASA/GSFC’s Flight Software Architecture : Core Flight Executive and Core Flight System”, NASA Flight Software Workshop, 2008
CFS’s homepage : https://cfs.gsfc.nasa.gov