μITRON/POSIX互換のRTOS「eCos」はカーネルもオプション!?リアルタイムOS列伝(28)(1/3 ページ)

IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する本連載。第28回は、μITRON/POSIX互換のRTOS「eCos」を紹介する。

» 2022年11月08日 07時00分 公開
[大原雄介MONOist]

 今回は「eCos」をご紹介したい(図1)。実はeCos、μITRONやPOSIXとの互換性があるということもあって国内でもそこそこの知名度があるし、Anthony J. Massa氏による「Embedded Software Development with eCos」は、日本語版もあったりするので、読んだことがある方もおられるかもしれない。

図1 図1 「eCos」のWebサイト[クリックでWebサイトへ移動]

⇒連載記事「リアルタイムOS列伝」バックナンバー

Red Hatの買収を経て開発終了、かと思いきやスピンアウトにより開発継続

 このeCosを開発したのは、1989年に創業したCygnus Solutionsである。同社はもともとオープンソースをベースにしたソフトウェアの開発とサポートを目指したが、何分にも小さい(創業者3人+従業員1人+パートタイム1人)会社だったため、ソフトウェア全体の開発や提供ではなく、コアコンポーネントの提供に舵を切る。具体的にはコンパイラのGCC(GNU Compiler Collection)とデバッガのGDB(GNU Project Debugger)をパッケージで提供するような格好だ。

 この後、プログラミングツールのbinutilsを追加するなど充実に努めた結果、最終的に「GNUPro Developers Kit」としてGCC/G++/GDB/GAS/LD/Cygwin/Insight(GDB用のGUIインタフェース)/Source-Navigator(ソースコード閲覧ツール)というパッケージに昇華する。この中にあるCygwin(Windows上でUNIX互換の環境を提供するツール)も同社が開発したものだ。

 さてCygnus Solutionsは1997年、一歩進んだソフトウェア環境の開発を手掛けることになる。GNUPro Developers Kitは開発環境をワンストップで提供するものだが、そのターゲットに関しては手付かずだったからだ。同社は複数の半導体メーカーと付き合いがあり、そうするとそれぞれのメーカーごとにターゲット環境を提供するのはコストと手間の両面から非現実的であった。そこで高い柔軟性を持ったHAL(Hardware Abstraction Layer)の上に構築されるリアルタイムOS(RTOS)としてeCosを構築することを計画する。

 同社はオープンソースをベースとする会社なのでeCosもロイヤルティーフリーであり、ライセンスはGNUであるからこちらもGNUに従う形で無償である。当然ソースコードも全て公開されているから、開発者は必要に応じてRTOS自身に手を入れることも可能である。

 eCos 1.1は1998年10月にリリースされる。バージョン1.2.1/1.3.1は2000年3月、2.0は2003年5月、3.0は2009年3月にそれぞれリリースされており、ゆっくりながらちゃんと更新はされているわけだが、この間に大きな出来事があった。それは1999年11月15日に発表された、Red HatによるCygnus Solutionsの買収である。この買収のプレスリリースでは以下のような言及があり、eCosの開発を継続する方針だった。

Cygnus is an open source software technology leader with software development tools and engineering services and developer support for a variety of desktops, client/server systems, real-time operating systems (RTOS) and embedded, post-PC centric platforms. The combined entity will remain committed to serving the customers of each company.

 しかし、Red HatはCygnus Solutionsの買収後にeCosの開発中止を決定する。もっと正確に言えば、eCos 1.3.1はきちんとリリースされたのだが、この1.3.1はまだ買収前から開発されていたものであり、Red Hatが貢献した部分はほとんどない。

 eCos 1.3.1に続き、旧Cygnus Solutionsの部隊はeCos 2.0の開発に取り掛かっていたが、Red Hatは2002年に入って戦略を変更。組み込み分野から撤退し、エンタープライズに注力することを発表する。この結果として、eCosの開発を中止するという決断を下し、eCosに携わっていた多くの開発者はレイオフされることになったが、このeCos関連の開発者はRed Hatからスピンオフする形でeCosCentricを設立。ここに移籍して引き続きeCosの開発に携わることになる。

 これらの開発者からの要求を受け、最終的にRed Hatは2004年1月に、eCosの資産一式をFSF(Free Software Foundation)に寄贈することを発表した。最終的に著作権を含む全ての権利がFSFに移管されたのは2008年5月のことだが、これに先立ちeCosCentricはeCosの商標を2007年2月に買収しており、これで大手を振ってeCosの名前で製品をリリースできるようになった形だ。

 余談だが、もともとのCygnus Solutionsは米国カリフォルニア州のサニーベールに本社を置いていた。その後、支社をアトランタやボストン、ケンブリッジ、トロント、東京に設けている(というかどうも従業員がリモート勤務に近い形で働くのを支社という扱いにしていたようだ)。eCosCentricの本社はケンブリッジにあるが、どう見てもオフィスには見えないあたりは(図2)、ケンブリッジ支社の従業員が中心になって本社を設立し、ただどうせリモートなので取りあえずなんか倉庫を借りて本社所在地の登記をしたとかそういう感じなのかもしれない。この連載ではちょくちょく出てくる話ではある。

図2 ケンブリッジにあるeCosCentricの本社。農家の小屋というか倉庫に見える
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.