連載
» 2016年01月27日 05時00分 UPDATE

頭脳放談:第188回 IoTが組み込み向けOSの再編を促すか?

組み込み向けOSの老舗、Wind RiverがIoT向けOSを無償で提供するという。IoTによって、組み込みOSの勢力図が変わりつつある。組み込み向けOSの再編も起きるのか?

[Massa POP Izumida,著]
頭脳放談
System Insider

 ともすれば、「取りあえず乗り遅れないためにもIoTと言っておきたい」というマーケティング意図に翻弄され気味で、どのようなものがどこまでIoTなんだか「雲のように」漠然としている今日このごろである。ぶっちゃけインターネットに接続する機能さえ付いていれば、IoTの登場以前から作っていたものも、焼き直しでも、IoTデバイスだとこじつけることができないわけではない。

 そんな中、組み込み向けOSベンダーの大手であるWind River(2009年にIntelの子会社となっている)がIoT向けのOSを無償で提供するというニュースリリースが流れてきたので読んでみた(ウインドリバーのニュースリリース「ウインドリバーがクラウド環境と、無償のクラウド対応OSを発表、IoTを加速」)。そのニュースリリースを読みながらヌエのようなとらえどころのないIoTというものを考えていきたい。

 まずは、OSとの付き合いがWindowsとLinuxくらいしかなくて済んでいた幸福な人向けに、組み込みOSをおさらいしておきたい。

組み込みOSのおさらい

 現在、「コンピュータ」が組み込まれていない何らかの装置というもの自体が考えにくくなっている。「単にモーターを回す」場合でも、裏では複雑で高度な計算を必要とする制御などをしているからだ。もはや電池をつないだだけで動くような単純なものはなくなっているし、ちょっとしたセンシングにも難しい原理の物理現象が利用されている。

 そのため、ごくごく単機能な4bitマイコン、8bitマイコン程度のものを除けば、プログラムの実行やメモリをはじめとするリソースの管理のために何らかのOSかそれに相当するものが組み込まれていることが普通だ。自動車一台とってみても、ECU(Electronic Control Unit)と呼ばれる制御装置が何台も搭載されており、その箱全てに組み込みOSが搭載されているはずである。

 OSの規模を考えるための一つの指標として、搭載メモリ量を見るとよい。「システム」でのメモリ量はキロバイト単位のものからギガバイト単位くらいまで、HDDやSSDなど外部記憶を備えた装置から、チップ内蔵のフラッシュROMとSRAMのみのものまで、その領域は多岐にわたる。

 ざっくりとメモリ量のレンジは、10の7乗くらいの桁の広がりがある。組み込み向けの一部分野にもWindowsやLinux系統のOSが使われていないわけではないが、全ての分野を一つのコンセプトのOSでカバーするのは無理であることが想像できるだろう。

 また処理する対象もいろいろだ。エンジンやモーターのように物理的な対象を扱うものは、物理現象に「待ってくれ」といって待たせるわけにはいかないから、時間的な制約条件が厳しい。そのためにRTOS(リアルタイムオペレーティングシステム)とひとくくりで呼ばれるものの、その実態は多種多様、各社各様のOSが組み込み分野で使われている。Windowsなどと大きく違うのは、それらはさらにターゲットに合わせて細かくカスタマイズ(コンフィギュレーションと呼ばれることが多いが)されて、同じOSといってもほとんど別物というくらい個別のハードウェアに適合させてあることだ。

 システムの設計者がどのような組み込みOSを採用するかというと、これまた考え方によって判断が分かれるところでもある。その昔はCPUベンダーが組み込みOSまで面倒をみていたケースが多く、CPUを採用するとOSの選択もおのずから決まってしまうということがあった。

 今でも特定のCPUには特定のOSしかないという場合がないわけではない。だが、このごろはOS専業のサードベンダーやオープンソースのOSもいろいろ存在するから、その選択肢は増えている。設計者はOSのフットプリント(必要とされるメモリ量に相当する)や、リアルタイム性、そして通信などの諸機能のサポートを勘案してOSを選択することになる。ふた昔くらい前は、ネットワークに接続するためのプロトコルスタックなどのサポートの充実が差別化要因だった。だが、現状ではほぼ全てのOSが何らかの形で取り込んでいるから、単にプロトコルスタックなどのサポートの有無というだけならあまり決め手にはならないようにも思われる。

 ここで結構ポイントになるのがOS上の資産やノウハウである。一度組み込みOSを決めて開発をすると、そのOS上の「資産=ソフトウェア」が出来上がる。物理的な現物に近いところにあるソフトウェアほど、時間をかけて実験し、チューニングやデバッグをして完成させたものになる。苦労して構築した資産なので、似たような装置を作り続けるならば同じOSを使って資産を活用できた方が素早く開発できるに決まっている。

 何か要素を変えてトラブルでも出ようものなら大変だから、OSを入れ替えるハードルは高い。頻繁に組み込みOSを乗り換えるようなことはまず行われない。しかし、Windowsのように一般消費者が過去のソフトウェア資産を持っていて互換性が問われるというほどの巨大な慣性はない。何か大きく変えねばならないきっかけさえあれば、組み込みOSを乗り換えることもあり得る。今やIoTが、その「きっかけ」として登場し、組み込みOS業界も再編を迫られているのではないだろうか。

Wind Riverが無償化で狙う世界

 今回のWind Riverのニュースリリースを読んでみると、「IoT」と言ったときにポイントとなっているのがクラウドとの連携であることが分かる。また、何でWind Riverが無償でOSを提供してもやっていけるのかも、ここがポイントとなる。つまりWind Riverとしては、組み込みOSが走る末端の組み込み装置だけではなく、クラウド側の環境まで一式全部の面倒をみる。だから、末端側を無償化しても他でお金を取ることができる、ということのようだ。

 一方、同じWind River製品でも組み込みOSの世界で実績と伝統がダントツの主力製品の「VxWorks」はビジネスモデルを変えていない。無償化はあくまでIoT向けとなる「Wind River Rocket」と「Wind River Pulsar Linux」の2種類のOSになっている。なお、Webサイトでユーザー登録すればターゲットボード向けのOSをダウンロードできるようだ。

 また、この2種類というところもキーである。「Wind River Rocket」はいわゆるRTOSであるところの製品、「Wind River Pulsar Linux」はLinuxベースの製品である。ご存じの通り、Linuxは人間相手のOSが出発点であるので、何もしないままでは組み込み用途として「フットプリント」が大きすぎたり「リアルタイム性」に欠けたりする。しかし、充実した各種のソフトウェアを考えると、高機能のものを短時間に構築できる。その上基本タダである。そこで組み込み用に小さく、かつある程度リアルタイム性を向上させたりして組み込みにも多用されている。

 だが、さすがに「マイコン」レベルのシステムに搭載するにはまだ大きすぎるし、時間にクリティカルなものにも適用できない。そこで比較的小さくて、リアルタイム性にシビアな末端の制御や計測向けとしてはRTOS、ネットワークの向こうのクラウド側にいるホストではなく、最近「エッジ」という言葉で語られる「現場監督」的な情報処理装置などにはLinuxベースというすみ分けを意図しているように見える。もちろん、そうしなければならないわけでなく、タイミングやリソースに問題ないならばソフトウェア開発が楽なLinuxベースで制御や計測をやってもよいし、RTOSでエッジコンピューティングをやっても構わないだろう。

 ともかくクラウドから末端の装置までを一元的に構築するということが大切なのだ。末端の装置が「ノーインテリジェンス」で常にクラウド側にデータを投げ、その指示を待って動いていたのでは、膨大な数のIoTノードを処理しきれないし、ましてや時間に厳しい仕事などできないに違いない。クリティカルな制御などは末端側で処理し、いわゆるビッグデータとしてクラウド側で処理するべきエッセンス情報だけを上位に送るような全体の中での処理の最適化を達成できるだろう。その中では、処理すべき仕事を装置間で動的に再配分するといった分散処理も必要になるに違いない。その辺もIoT向けOSに期待される機能になってくるのではないか。

 さらに言えば、Wind Riverのニュースリリースに書いていないその先である。そんな多数の末端のノードやらエッジやらサーバやらで構成されるネットワークのクラウド、まさに拡張された「雲」をつかむようなシステムに要求される次の一歩だ。

 ずばりそれは「学習」と「進化」じゃないかと考えている。末端ノードまでが何らかの学習をし、知識を蓄え、それを処理に使用することができる。また、そうして得た知識をネットで他に展開することで、より高度な集合知へと高められる。そして学習よりもより本質的な変化として、ソフトウェアそのものが進化する。そこまで行って、ようやく真のIoTが姿を現すのではないかと思う。そのうちIoT向けのOSには、そのような機能まで支援することが必須の要求となると確信している。

筆者紹介

Massa POP Izumida

日本では数少ないx86プロセッサーのアーキテクト。某米国半導体メーカーで8bitと16bitの、日本のベンチャー企業でx86互換プロセッサーの設計に従事する。その後、出版社の半導体事業部などを経て、現在は某半導体メーカーでヘテロジニアス マルチコアプロセッサーを中心とした開発を行っている。


Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。