DUICUO

ACRN の発表: IoT 向けに特別に設計されたハイパーバイザー

[[233465]]

ACRN は、リアルタイムのパフォーマンスとセキュリティを考慮して設計された、柔軟で軽量なハイパーバイザーです。

この記事は Linux Foundation によって執筆され、一部の内容は Intel Open Source Center のエンジニアである Eddie Dong によって提供されました。

モノのインターネット(IoT)の規模が飛躍的に拡大するにつれ、IoT開発者は多種多様なハードウェアリソース、オペレーティングシステム、ソフトウェアツール/アプリケーションをサポートする必要が生じています。多くの接続型IoTデバイスは、RAM、フラッシュメモリサイズ、CPUコア数など、様々なリソース制約の影響を受けるため、これは大きな課題です。仮想化はこうした多様なニーズへの対応に役立ちますが、既存の仮想化ソリューションでは、IoT開発に必要なサイズ、柔軟性、機能性の適切な組み合わせを提供できません。

ACRNは設計が異なります。2018年のLinux Embedded ConferenceでリリースされたACRNは、リアルタイムパフォーマンスと重要なセキュリティを念頭に設計された柔軟で軽量なリファレンスハイパーバイザーであり、オープンソースプラットフォームを通じて効率的な組み込み開発向けに最適化されています。

ACRNの主な利点の一つは、リリース時のコードがわずか約25,000行と非常に小型であることです。インテルのオープンソーステクノロジーセンターが、このプロジェクトのリリースにソースコードを提供しました。インテルのオープンソーステクノロジーセンターのバイスプレジデント兼ゼネラルマネージャーであるイマド・ソウソウ氏は、「ACRNのアイデアは、ユーザーに仮想化技術を提供するという私たちの取り組みから生まれました。組み込みIoTの開発は非常に要求が厳しいものです。ハイパーバイザー技術を使用することで、重要度の異なるワークロードを単一のプラットフォームに統合できるため、開発コストと導入コストを削減し、より合理化されたシステムアーキテクチャを実現できます」と述べています。

名前について:ACRNは略語ではなく、「acorn」(英語で「どんぐり」の意味)と発音されます。これは、最初は小さくても最終的には大きく成長できることを象徴しており、コミュニティの参加を通じて成長していくというプロジェクトの願いを反映しています。ACRNは、ハイパーバイザーとACRNデバイスモジュールという2つの主要コンポーネントで構成されています。ACRNハイパーバイザーは、ベアメタル上で直接実行できるType 1ハイパーバイザーです。ACRNデバイスモジュールは、仮想デバイスエミュレーションのためのリファレンスフレームワーク実装であり、豊富なI/O仮想化サポートを提供します。現在、オーディオ、ビデオ、グラフィックス、USBのサポートが計画されています。コミュニティの成長に伴い、さらに多くのデバイス仮想化機能が追加される予定です。

どのように働きますか?

ACRN ハイパーバイザーはベアメタル上で実行され、その上で Linux ベースのアプリケーションを実行できます。サービスオペレーティングシステムサービスOS (SOS)の場合、複数を同時に実行できます。ゲストオペレーティングシステムゲストOS GOS(サービスオペレーティングシステム)はワークロードを統合するために使用されます。ACRNハイパーバイザーはサービスオペレーティングシステム用の仮想環境を作成し、ゲストオペレーティングシステムを起動します。サービスオペレーティングシステムは、ローカルデバイスドライバーを実行してハードウェアを管理し、ゲストオペレーティングシステムにI/O仲介を提供します。

サービス・オペレーティング・システムは、時間的制約とサービス品質 (QoS) の要件を満たすため、システム優先度の高い仮想マシンとして実行されます。現在、サービス・オペレーティング・システムは Clear Linux* を実行できますが、ACRN は他の Linux* ディストリビューションや独自仕様の RTOS もサービス・オペレーティング・システムまたはゲスト・オペレーティング・システムとしてサポートしています。他のサービス・オペレーティング・システムのサポート開発や、ACRN リファレンス・スタックを使用して他の Linux* ディストリビューション、Android*、Windows*、独自仕様の RTOS などのゲスト・オペレーティング・システムをサポートするために、コミュニティーの参加を歓迎します。

ACRNハイパーバイザーのコードベースを可能な限り小型かつ効率的に保つため、ほとんどのデバイスモジュール実装はサービスオペレーティングシステム内に配置され、デバイス共有などの機能を提供します。その目的は、リソース制約のあるデバイス向けに最適化された、小型で低レイテンシのコードベースを実現し、グラフィックス、メディア、オーディオ、画像、その他リソース共有を必要とするI/Oデバイスなど、IoT開発プラットフォーム向けの仮想化固有の機能を構築できるようにすることです。このアプローチにより、ACRNは大規模データセンター向けハイパーバイザーと直接ハードウェアパーティショニングを行うハイパーバイザー間のギャップを埋め、さまざまなIoT開発ニーズに最適なソリューションとなっています。

一例として、車載ソフトウェア定義コックピット(SDC)が挙げられます。ACRNをリファレンス実装として使用することで、ベンダーはダッシュボード、車載エンターテイメントシステム(IVI)、1つ以上の後部座席エンターテイメントシステム(RSE)などを含むソリューションを構築できます。システム全体のセキュリティを考慮し、IVIおよびRSEシステムは独立した仮想マシン(VM)として実行できます。サイバーフィジカルシステム、モノのインターネット(IoT)、クラウドコンピューティング、コグニティブコンピューティングを網羅するソフトウェア定義産業システム(SDIS)も好例です。ACRNは、SDIにおける産業用ワークロードの統合と、システム間の柔軟なスケジューリングを可能にします。これにより、消費電力の削減、セキュリティの簡素化、信頼性の向上、システム管理の簡素化など、ユーザーメリットがもたらされます。

ACRNの初期サポーターには、Intel、ADLink、Aptiv、LG Electronics、Neusoftなどが名を連ねています。コミュニティ開発者の皆様も、コードをダウンロードしてACRN GitHubリポジトリに貢献していただけます。ユースケース情報や参加の詳細については、ACRNのウェブサイトをご覧ください。また、2018年10月22日から24日まで英国エディンバラで開催されるOpen Source Summit & Embedded Linux Conference (Europe)へのご参加もお待ちしております。Linux、クラウド、コンテナ、AI、そしてコミュニティに関する100以上のセッションが予定されています。

ACRNについて

2018年3月にLinux FoundationによってリリースされたACRNは、柔軟で軽量なオープンソース・ハイパーバイザー・リファレンス・ソフトウェアです。リアルタイム性能とクリティカルなセキュリティを念頭に設計され、効率的な組み込み開発向けに最適化されています。このプロジェクトは、様々な業界の開発者にリファレンス設計フレームワークを提供し、特にモノのインターネット(IoT)分野に適したオープンソースの組み込みハイパーバイザーの構築を可能にします。