Yocto Projectとは

組込みシステムには、小フットプリント、制約のある環境下での高いパフォーマンス、信頼性、長期間のサポート、制限されたリソースへの対応が求められます。Yocto Projectは、これらのエッジ特有の課題を検討し、組込みLinuxプラットフォームの標準化を目指して生まれたLinux Foundation傘下のオープンソースプロジェクトです。柔軟なツールセットと開発環境を提供しており、世界中の組込み機器開発者がカスタムメイドのLinuxイメージを作成する際に使用する技術、ソフトウェアスタック、構成、ベストプラクティスを共有し、高い相互運用性を達成しています。ハードウェアベンダーやソフトウェアベンダーのエコシステムも統合されていることから、インテリジェントエッジなどの最新テクノロジーに対するサポートや専門知識も入手可能です。Yocto Projectは誰もが無償で利用可能な、標準の組込みLinuxビルドシステムを提供します。


Yocto Projectは世界最大のオープンソースプロジェクト

Yocto Projectは、2010年にLinux Foundation傘下のワークグループとして誕生し、10年以上活動を続けています。現在ではLinux Foundation傘下のオープンソースプロジェクトにおける世界最大のコミュニティのひとつとなっており、毎年数多くの成功事例が生まれています。


Yocto Projectへ参画している主な企業

ウインドリバーをはじめとする組込み業界のリーダー十数社によって創設されたYocto Projectは現在、AWS、Intel、Meta、Microsoft、ウインドリバーなど30社以上の企業が参画する巨大なコミュニティへと成長しました。コントリビュータは2,500人を超え、2022年現在、170,000回以上のコードコミットが実施されています(11,600,000行以上)。

hypervisor

Yocto Projectへコミットしている上位10団体(The Linux Foundation より)



ウインドリバーによるオープンソースコミュニティへの貢献

ウインドリバーは、Yocto Projectの創設メンバーおよびプラチナメンバーであり、トップコントリビューターとして活動し、Yocto Projectコンポーネントのメンテナンスに絶え間なく貢献しています。

Linux Foundation傘下には他にも様々なワークグループがあり、複数のワークグループが連携してオープンソースのソリューションが誕生します。そしてオープンソースのソリューションごとにその分野に応じた要件が定義されます。ウインドリバーはLinuxディストリビューションの作成フレームワークを提供するYocto Project以外にも、OSに依存しないエッジコンピューティングのフレームワークを定義するLF Edgeの創設メンバーとして、オープンソースの活動へ日々貢献しています。現在、ウインドリバーはLF Energyグループのメンバーとしても活動し、次世代型デジタル変電所オートメーションシステムの要件定義にも参画しています。

Yocto Projectを利用するメリット

Yocto Projectには数多くのメリットがあります。

  • 組込みLinux開発環境における実質的なデファクトスタンダード
  • 簡単に入手できる組込みLinuxディストリビューションの作成のためのビルドシステム
  • スムーズな開発の立ち上げに貢献
  • 最終製品に最適なLinuxディストリビューションを作成可能
  • 段階的なLinuxディストリビューションの開発に対応
  • 一度作成したLinuxディストリビューションの部分的な変更が可能
  • 繰り返し作業のコストを大きく低減
  • 統合されたノウハウ:プロジェクトへ参画している企業の知見、オープンソースコミュニティの開発ノウハウ
  • 他のオープンソースプロジェクトとの連携できる効率的な開発プラットフォーム(OpenEmbeddedやEclipseなど)


Yocto Projectを構成するPokyとOpenEmbeddedとは

Yocto ProjectにはPokyとOpenEmbeddedというオープンソースプロジェクトが統合されています。

Pokyは、ビルドされたLinuxディストリビューションであり、リファレンスデザインとして利用することができます。OpenEmbeddedは、クロスコンパイル環境により、レシピとパッケージを様々なハードウェアアーキテクチャに対応させ、Linuxディストリビューションをビルドすることができるソフトウェアフレームワークです。PokyとOpenEmbeddedを活用することにより、簡単にYocto Projectの機能や特徴を、目的の組込みボード上で検証することができます。さらに、Pokyを自社独自のLinuxディストリビューションを作成する際のテンプレートとして利用することにより、開発をスムーズに立ち上げることが可能です。

hypervisor

Yocto Projectと各組込みLinuxディストリビューションの違い

Yocto Project
vs. Ubuntu Core

Yocto ProjectはLinuxディストリビューションではなく、Linuxディストリビューションを作成するためのフレームワークです。Linuxディストリビューションをカスタマイズすることができます。一方、Ubuntu Coreはバイナリ形式で提供される固定的な組込みLinuxディストリビューションです。

Yocto Project
vs. Buildroot

Buildrootは手軽に使うことのできる小型でシンプルなビルドツールであり、レガシーな組込みシステムに適したコンパクトなルートファイルシステムを作成することができます。一方、Yocto Projectは複雑なビルドシステムを備えることから、Linuxディストリビューションの作成にやや時間がかかり、作成されるルートファイルシステムもBuildrootと比べるとやや大きなサイズとなる傾向にありますが、Yocto Projectを利用することにより、簡単なソフトウェアレイヤーのカスタマイズや、モダンで高度な組込みシステムの構築が可能となります。

Yocto Project
vs. Debian

Debianはソースとバイナリの双方が提供されている、サーバやワークステーションなどのエンタープライズ向けに生まれたLinuxディストリビューションです。一方、Yocto Projectは組込みシステムに特化して対応できるよう設計されたLinuxディストリビューションを作成するフレームワークです。



Wind River Linuxを採用するメリット

Wind River Linuxは、 商用組込みLinuxマーケットシェアNo.1!※の業界最先端の組込みLinux開発プラットフォームです。Wind River Linuxを使うことにより、お客様は最終製品によるイノベーションの実現に注力ができるため、市場投入までの期間を短縮することが可能です。 さらに、Roll-Your-Own Linuxで課題となるリスクや運用コストを大幅に低減できるため、総所有コスト(TCO)の削減も期待できます。以下のような様々なメリットで、信頼性の高いインテリジェントエッジデバイスの開発を支援しています。

  • 15年の長期サポート(標準5年間)により、お客様の製品ライフサイクルを支援
  • 継続的な脆弱性(CVE)への対応
  • 最新のクラウドネイティブアーキテクチャに対応し、開発とデプロイメントにかかる時間を短縮
    • 事前に構築されたコンテナ技術を統合できる
    • DockerやKubernetesをサポート
  • マーケットグレードLinux
    • 航空宇宙・防衛システム、産業機器、医療機器、自動車、通信など、品質への妥協が許されない分野にも対応可能
  • インテリジェントエッジデバイスを開発する上で必要となる開発環境やツールを提供
    • Yocto Projectと互換性のあるツール
    • Wind River Workbench開発スイート(オプション)
  • コンプライアンスや輸出手続きに必要なリソースを提供


hypervisor

※出典:VDC Research The Global Market for IoT & Embedded Operating Systems (2018)



ウインドリバーのLinux開発プラクティス

ISO9001:品質マネジメントシステムの厳密なエンジニアリングプロセスに準拠

Wind River Linuxは、ISO 9001:2015品質マネジメントシステム規格認証を取得しています。 厳密なエンジニアリングプロセスを順守しており、定期的に品質監査を行っています。(認証対象:Wind River Linuxにパッケージ化されるオープンソーステクノロジーの設計、開発、インテグレーション、検証、規格認証、メンテナンス)

OpenChainに適合

ウインドリバーはオープンソース・コンプライアンスの遵守に必要な要件を共通化するOpenChainにより認証を取得している唯一の組込みLinuxのリーダーです。OpenChainはLinuxディストリビューションに統合されているオープンソースパッケージすべてに対して、パッケージの定めるライセンスを適切に管理できるライセンスコンプライアンスプログラムの要件を定義するプロジェクトです。OpenChainにより、組込みシステムに搭載したLinuxディストリビューションを構成するすべてのコンポーネントに対してサプライチェーンの整合性を証明することができます。これはオープンソースソフトウェアを利用する際に重要となる監査項目です。



プロフェッショナルサービス

ウインドリバーはプロフェッショナルサービスとして、組込みLinuxを活用したシステム開発の課題に対して、組込みシステムのエキスパートが開発を支援するサービスを提供しています。是非お客様の開発プロジェクトにご活用ください。ウインドリバーのプロフェショナルサービスは、ソフトウェア開発プロセスの能力成熟度を評価する国際的な指標であるCMMI® InstituteのCapability Maturity Model Integration(CMMI)®レベル 3認定を取得しています。

受託開発

お客様のプロジェクトのニーズに応じた開発サービスを提供します。ウインドリバーは、航空宇宙・防衛、産業機器、医療機器、自動車、通信など、幅広い業界で多くの受託開発の実績があります。

エンジニアリングサービス

ウインドリバーの組込みシステムのエキスパートをアサインし、オンサイトまたはオフサイトでお客様の開発プロジェクトを支援します。

コンサルティングサービス

Wind River Linuxのコンサルティングサービスは、お客様の開発プロジェクトのプランニングを支援し、それを実現します。

  • 開発プロセスの見直し
  • 組込みLinuxのアーキテクチャと設計
  • Yoctoプロジェクト互換のBSPの作成、ミドルウェアとカーネル開発
  • 自社開発Linuxやハードウェアベンダー提供LinuxからYoctoプロジェクト互換のディストリビューションへの移行
  • オープンソースとウインドリバーのハイパーバイザーベースの仮想化を使用した組込みマルチコアLinuxデザインへの移行
  • ベンチマーク、機能、パフォーマンステストと文書化
  • 障害解析



組込みシステムのエキスパートが製品ライフサイクル全体を支援

Wind River Linuxはテクニカルサポートおよびメンテナンスとアップデートをお客様の製品ライフサイクル全体にわたり提供いたします。

hypervisor

プレミアムサポート

納期の厳しい重要なプロジェクトには、お客様独自の環境、アプリケーション、ハードウェアを把握している専門のサポートチームが必要です。ウインドリバーのテクノロジーに精通した経験豊富なシニアエンジニアが、お客様の環境を把握して最高水準のサポートを提供し、お客様の開発プロジェクトで発生する技術的な課題を解決します。


フローズンブランチメンテナンス(FBM)サービス

フローズンブランチメンテナンスサービスは、製品のライフサイクルを通して、顧客別特定バージョンの構成管理、セキュリティ問題の監視、メンテナンスを提供します。パッチなどの特定ブランチへの変更はお客様で選択頂けるので、コストも最適化できます。サービスには以下のものが含まれます。

  • 不具合の修正パッチの提供
  • セキュリティ脆弱性の対応パッチの提供
  • セキュリティ脆弱性のプロアクティブな監視や通知
hypervisor


カスタムコンテンツマネジメント(CCM)サービス

カスタムコンテンツマネジメントサービスは、お客様のプラットフォームでWind River Linuxに追加されたソフトウェア・パッケージの構成管理、セキュリティ問題の監視、メンテナンスを提供します。サービスには以下のものが含まれます。

  • 不具合の修正パッチ
  • セキュリティ脆弱性の対応パッチ
  • セキュリティ脆弱性のプロアクティブな監視や通知

カスタムソフトウェアを含め、不具合の修正やセキュリティ脆弱性の対応パッチを統合した CCM Layerのリリースも可能です。組込みシステムのライフサイクル全体において、お客様は自社の製品を安心して運用することができます。


ロングタームサポート&メンテナンス
  • ロングタームサポート:お客様の製品ライフサイクルが長い場合でも安心してご利用いただけるよう、標準サポート期間以降も特別に長期間サポートを行う、長期サポートサービスです。
  • ロングタームメンテナンス:CriticalおよびSeverに該当する不具合の修正パッチを提供します。
  • ロングタームセキュリティシールド:HighおよびMediumのセキュリティ脆弱性の対応パッチを提供します。また、セキュリティ脆弱性のプロアクティブな監視や通知をおこないます。

End Of Life製品のサポート&メンテナンス
  • End of Lifeサポート:End of Life製品のテクニカルサポートを提供します。
  • End of Lifeメンテナンス:End of Life製品に対し、ご要望に応じた不具合の修復パッチをご提供します。ご指定の製品バージョンに対する修復パッチを当社にてリリースし、検証します。15年を超えるサポートを期待されるお客様も増えており、都度調整させていただいております。


Wind River Linuxの採用事例

Wind River Studio

東芝グローバルコマースソリューションズ社

インダストリアル分野を得意とする東芝グローバルコマースソリューションズ社はPOSシステムや統合デジタルコンシューマプラットフォームにWind River Linuxを採用しています。また、Wind River Linuxのプロフェッショナルサービスも活用しています。POSシステムには、強力なセキュリティ機能と拡張性の高いグラフィック機能が求められますが、Wind River Linuxを採用することにより、これらの要件を達成しました。機能の追加やサービスの追加のフレキシビリティが改善したことにより、顧客満足度の向上も実現しています。

» 詳細はこちら
VxWorks

テルコ・システムズ社

キャリアネットワーク分野で活躍しているテルコ・システムズ社は、Wind River Linuxをキャリアグレードイーサネットアクセスソリューションに採用しました。社内のソフトウェア資産を維持しつつ、自社OSからオープンソースのLinuxへのマイグレーションに挑戦した同社は、Wind River Linuxを活用することにより、製品の開発期間を30%~40%削減することに成功し、スケーラブルな新機能の追加や、サービスの拡張性の向上を達成しました。

» 詳細はこちら
Wind River Linux

シュナイダーエレクトリック社

インダストリアル(FA)向けのオートメーション機器を開発するシュナイダーエレクトリック社は、様々なCPUアーキテクチャの製品にWind River LinuxとVxWorksを採用しています。IoTに向けた拡張性と、フレキシブル性の高いプラットフォーム開発を目指す同社は、プロフェッショナルサービスも活用し、開発コストの低減、市場投入までの時間の短縮、データを活用したIoTサービスの提供に成功しています。

» 詳細はこちら

よくある質問

Yocto Projectへの機能追加とパッチの適用はどのように違いますか?

機能追加は、Yocto Projectのレシピを修正することにより新しいソースコードをビルド対象とする作業です。一方でパッチの適用はレシピ内に既に含まれているパッケージのソースコードへ修正を加える作業となります。

BuildrootとYocto Projectの違いは何ですか?

Buildrootによる開発アプローチは簡素化されており、より少ないステップで組込みシステム起動用のバイナリイメージを作成することができます。一方、Yocto Projectは、ビルド構成を細かくカスタマイズすることができるため、設定次第でBuildrootより高度なイメージを作成可能です。さらに、Yocto ProjectにはCVEの検出と管理を行うSRToolなどの追加ツールも用意されています。

どうすれば特定用途向けの必要最低限の機能のみを備えたLinuxディストリビューションを構築できますか?

汎用的なLinuxディストリビューションを準備し、ハードウェアリソースの制約や製品の提供する機能と合致するまで、ソリューションに関係のないパッケージを削除することで、必要最低限の機能のみを備えたLinuxディストリビューションを構築することができます。


組込みLinuxの起動時間を短くするにはどうすればよいでしょうか?

起動時間を短縮し、最適化するには 、ハードウェア機能を利用する方法や、Fast bootといったソフトウェアのチューニングから始める方法など複数の解決方法があります。一般的に、ハードウェアアーキテクチャと起動時に初期化するペリフェラルの数は、全体のブート時間に大きな影響を与えることがわかっています。そのため、不要なペリフェラルまで初期化する処理が含まれていると起動時間が長くなります。

ROS(Robot OS)とYocto Projectの違いは何ですか?

ROS(Robot Operating System)はOSそのものではなく、ロボットを制御するための環境を構築するためのフレームワークとパッケージのスイートです。一方、Yocto Projectは、ロボットを含む一般的な組込みシステム向けのビルドシステムをまとめたスイートです。ROSが1つのユースケースに特化しているのに対し、Yocto Projectはより汎用的です。

Wind River Linuxの価格・ライセンス形態について教えてください。

Wind River Linuxの価格は、プロジェクト単位での価格設定です。製品出荷数単位でのロイヤリティは不要です。


リソース