IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する本連載。第9回は、日本になじみがないRTOSシリーズ第3弾として「NuttX」を紹介する。このNuttX、実はソニーのIoTセンシングボード「Spresense」に採用されているのだ。
今回は「NuttX」を紹介したい。「また日本になじみがないリアルタイムOS(RTOS)を……」などと思われるかもしれないが、NuttXは意外にも日本で有名な採用事例がある。それはソニーの「Spresense(スプレッセンス)」だ(図1)。
Spresenseといえば“IoTセンシングボード”という取り上げ方をされており、もちろんそれが正しい取り上げ方だとは思うのだが、そのコアではNuttXが稼働しているあたりも、日本ではちょっと珍しい存在である(図2)。
さてそのNuttX、もともとはGregory Nutt氏という組み込み業界で30年以上働くエンジニアが、個人で作り始めたRTOSである。開発開始は2004年で、2007年に最初の公開バージョンが完成する。当時Nutt氏はプライベートコンサルタントとしてさまざまな企業に対してLinuxの移植の手伝いをしながら、個人的な作業としてこのNuttXの開発を続けた格好だ。
NuttXの最初のバージョン(0.1.0)は、2007年3月9日にSourceForgeで公開された(図3)。Source Forgeで公開していることから分かるように、当然オープンソース扱いで、BSDライセンス下での提供となっている。当初のターゲットはTIの「TMS320C5471」という、47.5MHz駆動の「ARM7TDMI」に100MHz駆動の「C5470 DSP」を組み合わせたマイコンのみで、また提供される機能も最小限だったが、その後にバージョンアップを行いつつ対応デバイスも増やしてゆく。
それからNutt氏は、HPのネットワーク部門のアーキテクトとして招かれ、2011年4月までコスタリカで仕事をするが、この間もNuttXの開発は続けており、そしてHPとの契約が切れたあとでNX EngineeringというNuttXの開発とサポートを行う会社を自身で立ち上げる(図4)。
Copyright © ITmedia, Inc. All Rights Reserved.