Yoctoをベースとした組み込みLinuxシステム開発

Yoctoをベースとした組み込みLinuxシステム開発

1. yoctoの紹介

Yocto プロジェクトは単一のオープンソース プロジェクトではなく、その傘下で開発および保守されているものを表します完整项目家族

Linux ディストリビューションをカスタマイズするためのいくつかのポイント:

正直に言うと、オペレーティング システムの構築と保守は簡単な作業ではありません。完全に機能するコンピュータ システムを作成するには、オペレーティング システムのさまざまな側面を考慮する必要があります。
引导加载程序(Bootloader):ブートローダーは、ハードウェアの初期化、オペレーティング システム カーネルのメモリへのロード、およびカーネルの起動を担当する最初のソフトウェアです。ブートローダーは通常マルチレベルであり、その最初のレベルは不揮発性メモリに保存されます次に、最初のレベルは、マウントされたストレージ (フラッシュ、ハードディスクなど) から 2 番目のレベルをロードします。等々。
内核:カーネルは、その名前が示すように、オペレーティング システムの中心です。システムのハードウェア リソースを管理し、アプリケーション プログラミング インターフェイスを通じて他のソフトウェアにハードウェアの抽象化を提供します。内核的主要功能是内存管理、 设备管理和响应来自应用软件的系统调用これらの機能がどのように実装されるかは、プロセッサ アーキテクチャ、周辺機器、およびその他のハードウェア構成によって異なります。
设备驱动: デバイス ドライバーはカーネルの一部です。これらは、カーネル システム コールを通じて構造化ソフトウェア内のハードウェア デバイスへのアクセスを提供します。デバイス ドライバーを通じて、アプリケーション ソフトウェアはハードウェアを構成したり、ハードウェアからデータを取得したり、ハードウェアにデータを書き込んだりできます。
生命周期管理(Life Cycle Management): コンピュータ システムは、電源オンから電源オフまで、さまざまなサービス セットをアプリケーション ソフトウェアに提供する複数の状態を想定します。ライフサイクル管理は、一貫した動作環境を維持するために、どのサービスがどの状態で実行され、どの順序で開始する必要があるかを決定します。ライフサイクル管理の重要な部分は電源管理でもあり、すべての機能が必要ない場合はシステムを省電力モードに設定し、要求された場合はフル動作モードに戻ります。
应用软件管理: アプリケーションとライブラリは、一般的なシステムにインストールされるソフトウェアの大部分を占め、ほとんどのユーザーに機能を提供します。完全なオペレーティング システムを構築するには、通常、数百から数千のソフトウェア パッケージが必要です。

Yocto プロジェクトの強み:
これが Yocto プロジェクトの強みです。これは、完全なツールセットとブループリントを提供することで、両方のアプローチの長所を組み合わせたもので、独自の Linux ディストリビューションを最初から作成するのに役立ちます (アップストリーム プロジェクトからのソース コードのダウンロードから開始します)。Yocto Project ツールに付属するさまざまなシステムのブループリントを使用すると、次のことが可能になります在几个小时内构建完整的操作系统栈


2. yoctoの簡単な使い方

Yocto の正式名称は Yocto Project (正式名称 YP) で、2010 年に Linux Foundation によって立ち上げられたオープンソースの共同プロジェクトです。提供模板、工具和方法以创建定制的 Linux 系统和配套工具、ハードウェア システムを気にする必要はありません。主に Poky とその他のツールで構成されています。
  
  ここに画像の説明を挿入
  
  歴史的に、Yocto プロジェクトは OpenEmbedded プロジェクトから発展しました。元々は 2 つの異なるプロジェクトでした (左側の分離ビュー) が、OpenEmbedded を単独で使用することは珍しいため、現在の OpenEmbedded プロジェクトと Yocto プロジェクトは 1 つに統合されました (右側の統合ビュー)。


おすすめ

転載: blog.csdn.net/weixin_48433164/article/details/126945770