PR

Intelが推進するEdgeの仮想化、ACRNとは?

2018年4月12日(木)
松下 康之 - Yasuyuki Matsushita
IntelはIoTデバイス上で稼働するハイパーバイザー「ACRN」を紹介した。

Embedded Linux Conference+OpenIoT SummitのDiamondスポンサーであるIntelは、IoT向けリアルタイムOSのZephyrや組込系システムのためのツールセットを提供するYocto Projectなど様々なプロジェクトに関わっているためか、多くのセッションを実施していた。

その中でも3日目のキーノートに登壇したImad Sousou氏のプレゼンテーションで紹介されたACRNを紹介しよう。Sousou氏は、IntelのOpen Source Technology Centerのトップであり、General Managerでもある。

Intelのオープンソースプロジェクトのトップ、Imad Sousou氏

Intelのオープンソースプロジェクトのトップ、Imad Sousou氏

ちなみにZephyrは、Linux FoundationがホストするリアルタイムOSで、2016年に公開された。少ないメモリで稼働するリアルタイムOSとして、このカンファレンスでも多くのセッションが実施されていた。主な参加企業はIntel、NXP Semiconductor、Linaroなどである。

Yoctoは組込系システムのためのLinuxをビルドするためのツールセットを提供するプロジェクトで、リファレンスとなるLinuxディストリビューションであるPokyと、ビルドツールであるBitbakeなどから構成される。Yoctoを使うことで、様々なハードウェア用の組込系OSをビルドすることができるという。QEMUをツールの中に組み込んだことで、様々なプロセッサのエミュレーションが可能になり、開発が容易になったことが特徴だ。

この2つのプロジェクトはLinux FoundationのCollaborative Projectであることから、組込系のOSおよびツールセットとしては本流という扱いだろう。

そして今回のキーノートでは、新たにEdge向けのソフトウェアスタックとしてACRNというプロジェクトが発表された。ACRNは「エーコーン」と発音する。これは「ドングリ」の英名である「Acorn」をもじっているようで、アイコンもドングリを模したものが使われている。

新たに紹介されたACRNはEdge向けハイパーバイザー

新たに紹介されたACRNはEdge向けハイパーバイザー

別のセッションとして行われたACRNの概要のセッションでは「ACRN is a Big Little Hypervisor for IoT Development」と称されていた。つまりIoTデバイス上で複数のOSを稼働させるためのハイパーバイザーである。

このスライドによれば、ハードウェアシステムとファームウェアの上で稼働するOS/ハイパーバイザーで、上位にはLinux及びAndroidがゲストOSとして挙げられている。

ACRNの概要

ACRNの概要

そして「Little」の意味である小ささに関しては、次のスライドで説明された。ソースコードの量で比較すると、KVMは1700万行、Xenでは29万行であるのに対して、ACRNは2万5千行のコードで構成されているという。

ソースコードの量がそのまま利用するリソースのサイズと正比例しているかどうかはおいておいても、少なくともシステムが占めるストレージのサイズは少なくなるということを強調したかったのだろう。ここでは、すでにサーバー用途で使われているハイパーバイザーと比較したが、聞き手が本当に知りたかったのはACRNを使ったシステムとハイパーバイザーを用いないシステムとのリソース使用量や遅延などの性能の比較ではないだろうか。

他のハイパーバイザーとの比較

他のハイパーバイザーとの比較

デバイスに必須な入出力、ストレージアクセス、ネットワークアクセスなどは、Service OSと称されるソフトウェアが仲介している。オーディオインターフェースなども同様だ。

入出力の仮想化。現状ではIntel製のコントローラーのみがサポートされる

入出力の仮想化。現状ではIntel製のコントローラーのみがサポートされる

このスライドでは入出力コントローラーの処理概要が解説されたが、現状ではサポートするハードウェアはIntel製のコントローラーのみということだ。この辺りに、ハードウェアメーカーであるIntelの本質が表れているというところだろうか。

今回のACRNの発表と詳細なプレゼンテーションを聞いて感じたのは、そもそもEdgeのデバイスに複数のOSを載せて実行しなければいけないユースケースは何か? である。その一つの回答が自動車における車載システムだ。車載コンピュータはエンジンなどの制御系以外にもエンターテイメントシステム、インターネットアクセスによる地図情報やGPSデータの処理などから始まって、将来的には自動運転のコントロールも行うことになる。そう考えると、車載コンピュータはすでに車体に張り巡らされたLANを取り囲む複数のコンピュータで構成される「マイクロデータセンター」に近づいていると言っても過言ではない。

そのようなシステムを構成するために、デスクトップPCに近いような規模のコンピュータが採用されることは、システム開発の容易さ、更新のしやすさなどを考えるとあり得る話だろう。その時にOSとアプリケーションを仮想マシンとして実装できれば、機能面でもセキュリティの観点でも利点は多いと思われる。

オーディオデバイスもサービスOSとSound Open Firmwareによって実装される

オーディオデバイスもサービスOSとSound Open Firmwareによって実装される

車載システムの場合、画面に表示される情報によるインターフェースだけではなく、音声によってユーザー(この場合はドライバー)とのインターフェースが行われるのは容易に理解できる。これについても、サービスOSとSound Open Firmwareと呼ばれるオーディオデバイスのファームウェアを利用することによって可能になるという(Sound Open FirmwareもIntelが主導するオープンソースプロジェクトだ)。

Imad Sousou氏の後半のプレゼンテーションは、この「Sound Open Firmware」に関するものだった。Sound Open Firmwareについては、すでにLinux Foundationから日本語でリリースが行われているが、これまでクローズドなシステムであったオーディオデバイス関連のシステムのファームウェアを、オープンソースとして開発を進めるというプロジェクトだ。

Sound Open Firmwareの紹介

Sound Open Firmwareの紹介

参考:The Linux FoundationがSound Open Firmwareプロジェクトを歓迎

Intelがオープンソースとして開発を進めるのは、データセンターやコンテナ関連のソフトウェア(IntelはコンテナランタイムであるKata Containerを中国のHyperと共同で進めている)だけではなく、今後のIoTに大いに関連のある様々なモジュールにまで及んでいることが分かるプレゼンテーションであった。今後、ACRNの機能開発と周辺のエコシステムが、ユースケースを含めて拡がっていくことを期待したい。

参考:ACRNホームページ https://projectacrn.org/

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

IoT/組み込みイベント
第5回

IoT向けOSの新顔、Tockの詳細

2018/4/16
IoT用途の新しいOS「Tock」について、開発者が解説する。
IoT/組み込みイベント
第4回

Arduino Createによって着実に進化を続けるArduinoの最新動向

2018/4/13
Arduino Projectの創始者が登壇し、クラウドサービスのArduino Createなどプロジェクトの動向について語った。
IoT/組み込みイベント
第3回

Intelが推進するEdgeの仮想化、ACRNとは?

2018/4/12
IntelはIoTデバイス上で稼働するハイパーバイザー「ACRN」を紹介した。

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています