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 Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

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