TOPPERS/FDMP커널이란

TOPPERS/FDMP커널은, μITRON사양을 기능분산 멀티프로세서 용으로 확장한, 가능분산 멀티프로세서용 리얼타임 커널사양에 준거한 리얼타임 커널입니다. 사양서는이곳에 있습니다.

FDMP커널의 본체는, 정보처리추진기구(IPA)에서 미개척 소프트웨어 창조사업의 채택테마의 하나로 「멀티프로세서 시스템에 대응한 시스템레벨 개발환경의 개발」 의 일환으로서, 혼다신야(本田晋也)씨가 개발을 담당했습니다.

현재, FDMP커널의 개발은 종료하였고, FMP커널의 개발을 진행하고 있습니다.

FDMP커널의 최신 릴리즈는이곳에서 다운로드할 수 있습니다.

FDMP커널의 주요 특징은 다음과 같습니다.

  • 기능분산 멀티포르세서 상에서의 어플리케이션 개발을 효율화
  • μITRON사양의 API에서 프로세서를 지정해서 발행하는 것이 가능합니다. 이것으로 부터, 프로세서내/사이을 신경쓰지않고 프로그래밍이 가능하게 되었습니다.

  • μITRON사양 OS용의 소프트웨어가 활용가능
  • API는 μITRON사양과 호환되기때문에, 지금까지 개발된 μITRON사양 OS용 소프트웨어를 그대로 사용하는 것이 가능합니다.

  • 성능을 중시한 구현
  • FDMP커널은 프로세서 수를 제한하지 않았습니다. 프로세서 수의 증가에 대해서, 확장성(scalability)을 확보하도록 구현하였습니다. 또한, 리얼타임성을 저해하지 않도록 구현하였습니다.

  • 새로운 타겟 프로세서로의 포팅이 용이
  • 프로세서 의존부는 JSP커널과 거의 호환하고 있기 때문에, JSP커널이 이미 서포트하고 있는 타겟으로의 포팅은 더욱 더 용이하게 실시할 수 있습니다.

타겟 시스템과 개발환경

FDMP커널은, 현시점에서, 아래의 타겟 프로세서를 서포트하고 있습니다. 또한, GCC 등의 GNU개발환경을 표준 소프트웨어 개발환경으로 하고 있으므로, 인라인 함수나 인라인 어셈블러기능 등, GCC의 확장기능을 이용하고 있는 부분이 있습니다.

프로세서(품번) 시스템메이커 개발환경 컴파일러
Nios2 ALTERA Quartus 5.1 GCC 3.4.1(개발환경에 부속)
Microblaze XILINX EDK 7.1.2 GCC 3.4.1(개발환경에 부속)
ARM MPCore ARM RVDEBUG 3.0 GCC 3.4.4(CodeSourcery)

개발스텝

TOPPERS프로젝트의 맴버로서, FDMP커널의 개발에 참가하고 있는 개발스텝은 아래와 같습니다(소속은 참가한 시점).

성명 소속 시기 담당
혼다 신야 나고야대학 2004년~ FDMP커널 본체
다가키 노부히사 개인회원 2004년~ 커널 컴피규레이터

참고문헌

DesignWave Magazine(CQ출판사, 일본)

2005년8월호 특집2「임베디드 분야의 『멀티코어』」
제2장「멀티프로세서에 대응한 리얼타임OS란」혼다 신야
제3장「μITRON4.0사양에 준거한 멀티프로세서 대응 OS의 구현」혼다 신야

정보처리학회지(일본)

Vol.47 No.1 특집「멀티코어에 대한 소프트웨어」
제6장「기능분산 멀티프로세서용 리얼타임OS」타카다 히로키/혼다 신야