IoT向けOSかあ…

http://b.hatena.ne.jp/entry/s/www.nikkan.co.jp/articles/view/00374346
経産省が国主導でIoT向けOSを育成するという話。


OSってだけ言われると範囲広くてどこを狙ってるのかよくわからない。ただ世間一般で最近言われているIoTって用途には、Linuxが乗るような基板だと消費電力がでかかったりRAMたくさんでワンチップにならなかったりして重い感じだし、かといってArduinoだとOS的なものが全然ないしRAMも少なすぎてちょっと…という感じなのでArduinoとRaspberryPIの中間くらいのやつが欲しいわけです。多分国内マイコンメーカがそういうソリューションで生き残って行きたいと思ったときに、「LSIはなんとか作れるけどソフトウェア投資がちゃんとできない」というような話がきっとあって、今回のような話になってるのかなあと思います。


MarvellとかTIは、それぞれRTOSの上で動くWiFiとかZigBeeとかBLEとかのプロトコルスタックが乗ったプラットフォームをバンバン提供しているんですが、そういう感じのやつを国内チップメーカ集めて共通化してなんとか作っていきましょうってことを言ってるのかなあ…。それでMarvellとかTIとか、あと数にモノを言わせてガンガン作ってくる中国メーカに勝てるのだろうか…。


上で書いたような、LinuxUNIX乗ってないけどWiFiとか無線が繋がってバリバリ動く、というようなプラットフォームで実用化されてる商品って既にいっぱいあって、そのうちの一つはデジカメなのではないでしょうか。キヤノンのDryOSってやつ(https://en.wikipedia.org/wiki/DRYOS)なんかは16KBのカーネルであれだけの機能を動かしているんだから凄いですよ。ああいうOSをうまく省電力なチップ向けにできればそれでOKなんじゃないかという気がするんですが、各社各様なので合わせ込めないんでしょうかね。あとレンズに載ってるマイコンとかも良さそうな気がするんですけどね。

補足

http://b.hatena.ne.jp/entry/d.hatena.ne.jp/naoya2k/20160214/p1 に反応あったのだけど。

secseek TRONはどうなんでしょう?立派で実績もある国産OSじゃないかと思うのですが。さすがに現代だと設計が古いとかあるんですかね。


TRONで生き残ってるのはITRONしかなくて、ITRONカーネルの標準しか定めてないのでネットワークとかそのへんのインタフェースの標準がないんじゃないかと思うんですよ。そしてITRON程度のカーネルなら他にもいくらでもフリーでありますし、そこをITRONに決めたところで何も変わらないです。

T-Engineっていうプロジェクトあったけど全然アプリケーションのプラットフォームとして使える気がしないのは、あれがミドルウェアの開発プラットフォームだからなんです。ああいうところで言われているミドルウェアって、ミドルっていってても普通のアプリ開発からしたら全然ミドルウェアじゃないような、デバイスドライバとそれを叩くインタフェース+ライブラリ群みたいなものなのにそこすら上のアプリからは標準的なI/Fで使える環境になっていないんじゃないでしょうか(だって多様なミドルウェアを作るための環境なんだもん)。


例えば無線LAN使って何かを監視するようなものを作りたい、ってなったらもうWiFiの部分だけでいっぱいやることが出てくるんです。どうやってSSIDとPSKを設定できるようにするか、どこにどうやってどれくらい覚えさせるのかとかを毎回考えるだけでも面倒。通信のAPIも不揮発メモリに保存するためのAPIも各社バラバラだったりして、一度作ったものでも別の開発ボードに移植するとなったら相当書き換えないといけなかったりする。そんな環境だとデモのレベルまでしか作れないんです。そこから先の細かい作りこみまでやってもどうせ捨てることになるだけだから。
そういうアプリケーションを作る立場としては、カーネルITRONだろうとFreeRTOSだろうとあまり変わらないですよ。



なのでTRON使えって言われても、それに対する答えは「それでもいいです。で、そのITRONにするというのはそれはそれで大きな決定ではあるんですが、そのレイヤについてはもともと課題じゃないんです。」って感じでしょうか。たとえば上で挙げたDryOSはカーネルITRONだということなので。