図4がTizenRTのブロック図だ。御覧の通り随分いろんなものが入っている。もちろんこれらが全て搭載されるわけではない(例えば、Audio I/Fを持っていないハードウェア上でAudio FrameworkやAudio Coreをインストールする意味はない)が、ネットワーク関連のコアやスタック類はほぼ標準で載ることを考えると、それなりのメモリフットプリントは必要になる。
冒頭では2MB未満のSRAMで動作と書いたが、実際にサポートされているハードウェアは以下のようになっている。
InfineonのCY4390XやExpressifのESPボードで異様にメモリが多いのは、オフチップSRAM/Flashを搭載しているためで、オンチップだともっと容量は少ない。それはともかく、最低構成はSTMicroのSTM32F407-DISC1なので、ギリギリまで詰めれば192KB SRAM/1MB Flashでも動作するというあたりだが、アプリケーションがどの程度まで動くのかは未知数である。現実問題としてはもう少し余力があるハードウェアの方が好ましいだろう。
OSの構成そのものはNuttXを引き継いでいるため、主要な特徴は似たようなものだが、一番異なるのがソフトウェア環境だろう。Dockerイメージの形で開発環境が用意されており、これをロードして立ち上げるだけで利用できる。また、Linux環境との互換性が高いため、RTOS上でアプリケーションを構築するよりも、既に存在するLinuxベースのアプリケーションのサブセットを移植する、といった使い方が非常に容易になっている(というよりも、それを志向しているように見える)。上位機種はTizenベースで構築するが、低価格のサブセットは不要な機能を減らしてTizenRTで動かす、なんて意図の下で開発されたように感じられる。
これがRTOSか? といわれると、定義的には間違いなくRTOSなのだが、あまりRTOSらしくないのがTizenRTである。
Copyright © ITmedia, Inc. All Rights Reserved.