トレーニング > IoT&組み込み開発 > Embedded Linux Platform Development with Yocto Project (LFD460)
インストラクター主導のコース

Embedded Linux Platform Development with Yocto Project (LFD460)

このインストラクター主導のコースでは、Yocto Projectを使用して繰り返し可能な組み込みLinuxターゲットを構築する方法について、しっかりと理解します。ビルドシステムの学習に加えて、toaster、devtool、wic、eSDK、Eclipse IDE統合などのより高度なツールについても学習します。このコースは、LFD450クラスで学習した組み込みLinuxトピックに基づいています。

対象者

このコースは主に、組み込みLinuxシステムを繰り返し構築する方法を学ぶことに関心のある、経験豊富な組み込みLinuxエンジニアを対象としています。このコースは、ブートローダー、カーネル、ユーザースペース ソフトウェアの構築とインストールなど、組み込みLinuxシステムの基本的な知識があることを前提としています。コマンドライン、基本的なLinuxユーティリティ、テキスト エディターからのコードの作成についても理解している必要があります。 Pythonの経験は役立ちますが、必須ではありません。
少なく読む 続きを読む
学習内容

このYoctoトレーニングコースでは、PokyおよびBitbakeビルドプロセスの使用方法と、そのレシピとレイヤーを使用して、カスタム組み込みアプリケーション用にLinuxカーネルとパッケージをカスタマイズする方法、組み込みボード上でLinuxをビルドする方法、検証にエミュレーターを使用する方法を学習します。 、ターゲット ハードウェア用のボード サポート パッケージ(BSP)の作成方法など。
少なく読む 続きを読む
身につく知識

このコースでは、特定のハードウェア アーキテクチャに関係なく、組み込み製品用のカスタムLinuxベースのシステムの作成と維持に役立つテンプレート、ツール、およびメソッドを提供するオープンソースのコラボレーション作業であるYoctoプロジェクトを活用する準備をします。
少なく読む 続きを読む
おもなテーマ
すべて展開
すべて折りたたむ
はじめに
- 目的
- 目標
- 視聴者
- 対象受講者
- The Linux Foundation
-著作権および機密情報なし
- Linux Foundationトレーニング
- 認定プログラムおよびデジタルバッジ
- Linuxディストリビューション
- プラットフォーム
- システムの準備
- Linux とオープン ソース プロジェクトの変化
- ドキュメントとリンク
準備
- Linuxディストリビューション
- プロシージャ
- 演習
OSSプロジェクトでの作業方法**
- 適切に貢献するには
-コードがどこから来ているかを知る:DCOとCLA
- メインラインの近くでセキュリティと品質を保つ
- プロジェクトのDNAを研究して理解する
- スクラッチするべき部分を見つけ出す
- メンテナーおよび彼らのワークフローやメソッドを特定する
- 早い段階で意見を訊き、オープンに作業する
- 大きなコード ダンプではなく、差分のコードをコントリビュートする
- エゴを捨てよう。敏感にならないように。
- 忍耐強く、長期的な関係を築き、助けの手を差し伸べよう
YoctoプロジェクトとOpenEmbedded
- Yocto Projectとは何か?
- OpenEmbeddedとは何か?
- Yocto Projectファミリー
- Yocto Projectの条件
- Yocto Projectのリリース
- リソース
Poky
- Pokyの発音
- PokyとBitBakeの概念
- Yocto/OE のアーキテクチャ
Bitbake
- 入手とインストール
- メタデータ
- メタデータ レイヤー
- メタデータの構文
- イベント
- バリアント(Variants)
- ファイルのダウンロード
- フェッチャー(Fechers)
- ビルトインのデフォルト メタデータ
- チェックサム
- イベントの実装
- タスク
- プロジェクトのレイアウト
- プロビジョニングと依存関係の処理
- BitBakeコマンドライン
- 演習
Yocto Projectビルド システムのセットアップ
- Yocto Projectリファレンス システムの構造
- A. Pokyのコア コンポーネント
- B. OpenEmbedded-Coreのメタデータ レイヤー
- C. Pokyメタデータ レイヤー
- D. Yocto Board Support Package (BSP) レイヤー
- 演習
x86エミュレーション イメージのビルド
- 環境構造のビルド
- 演習
ビルド エラーのトラブルシューティング
- 問題が起きたら
- タスク ログ
- 特定のタスクの実行
- デバッグ ステートメント
- 依存関係のグラフ
- 変数とメタデータの表示
- Bitbakeデバッグ出力
- デベロッパー シェル
画像のカスタマイズ
- 事前定義されたイメージの拡張
- コア イメージの継承
- パッケージ グループ
- 画像機能の使用
- 演習
toaster
- toaster とは?
- 依存関係とtoasterのセットアップ
- toasterの実行(ローカル)
- リモートまたはホステッド セットアップ
パッケージの追加
- レシピの慣習とベストプラクティス
- 単一のCファイル パッケージ
- Makefileベースのパッケージ
- オートツール パッケージ
- 演習
レイヤー
- なぜレイヤーか?
- レイヤーの操作
- 演習
カーネル レシピ
- Yoctoカーネル レシピ
- Yocto Projectのカーネルの構成
- カスタムカーネルのビルド
- Yocto Projectのカーネルの拡張
- 演習
選択したBBCLASSの概要
- rm work.bbclass
- allarch.bbclass
- buildhistoryとbuildstats
- cve-check.bbclass
- archiver.bbclass
開発ツール
- devtool
- wic
ライセンスとコンプライアンス
- Yoctoによるライセンス管理
- ライセンスの追跡
- 商用ライセンス レシピの有効化
- 演習
クロージングと評価サーベイ
- 評価サーベイ
Kbuildシステム
- 前書き
-Kbuild Makefile
-Kconfigの基本
-Kconfigの検索
クロス開発ツールチェーン
-コンパイラトリプレット
-組み込みのLinuxディストリビューションクロスコンパイラ
-リナロ
-CodeSourcery
--crosstool-ng
-ビルドルート
-OpenEmbedded
-Yocto Project
- 演習
イーサネットを介したターゲット開発ボードの起動
-仮想ハードウェアの使用
-開発するためのより簡単な方法
-TFTPおよびNFSrootを使用したブートシーケンス
-ラボの目的
- 演習
ターゲットファイルシステムのパッケージング
-組み込みファイルシステムの目標
-ディレクトリ:調査
-組み込みファイルシステムタイプ
ルートファイルシステムの選択
-SysVinitとBusyBoxinit
--udevとBusyBoxmdev
--Systemd
-Cライブラリの選択
- 演習
適切なサイズ
-頻繁に必要とされる組み込みコンポーネント
-カーネルサイズのインベントリを作成する

前提条件
このコースの主な目的は 組み込みLinuxシステムを繰り返し構築する方法を学ぶことに興味がある経験豊富な組み込みLinuxエンジニア。このコースでは、ブートローダー、カーネル、ユーザースペースソフトウェア(LFD450:Embedded Linux Developmentで学んだこと)の構築とインストールなど、Embedded Linuxシステムの基本的な知識があることを前提としています。また、コマンドラインからコードをビルドすることにも精通している必要があります。 基本的なLinuxユーティリティとテキストエディタ。 Pythonのある程度の経験は役立ちますが、必須ではありません。
レビュー
2024年4月
Very appreciative of the material, its organization, and practical insights to provide a solid mental framework to build from.
2024年4月
The course condensed Yocto into manageable pieces that I could understand. I previously tried reading the documentation, and was overwhelmed and had very little idea on where to start. I liked the alternatives presented towards achieving various goals.
2024年4月
Tom was fantastic. 100% knowledgeable, helpful, enthusiastic, and willing and able to answer all questions, even when veering off-topic.
2024年4月
Labs were very helpful as I am more of a hands-on learner, and they helped me visualize the concepts.
2024年4月
Our instructor Tom had extensive knowledge and experience in the industry, in addition to the course's topics, and was more than able to provide answers to our questions.