KEMBAR78
WSL for IoT, Microcomputer, and Yocto Project | PPTX
株式会社デバイスドライバーズ
日高亜友
WSL for IoT and Microcomputer
- WSL 使いの裏技 その2–
日本を Smart
に!
今回の内容
• IoT システム開発における WSL
(ハンズオンセミナー紹介)
• Yocto ディスク容量考察
• エクスポートとインポート
• WSL の ネットワークアプリ
• WSL と 組み込みシステム
i.MX8ULP ハンズオン
概要
本セミナでは,以前のインターフェース掲
載記事を元した単純な入門用ドライバと,
オリジナルの汎用 IoT ドライバを教材に,
組み込み Linux におけるドライバ開発の基
本,最近の AI 利用のコーディングから,デ
バッグ手法とパッケージングまでを習得す
ることを目指します.開発環境は PC 1 台で
開発の全てをホストする, Windows と
WSL を使用します.合わせて,その上で
Yocto Project を稼働させて開発するための
ノウハウも伝授します.
60 名 以上応募
i.MX8ULP ハンズオン
経緯・いきさつ
• CQ 出版 編集部から依頼
• AVNET のボードでハンズオンセミナー
• 基板は i.MX 8ULP で開発環境は Yocto
Project
• テーマは Linux ドライバー開発、 1 日
↓
考える、調べる、試す、
確認する、テキスト作成
Yocto ディスク容量考察
Yocto Project ディスク容量
• i.MX 8ULP 用の場合
• Ubuntu 20.04 使用容量: 290GB
• SDK 含めたシステム構築に 2 ~ 6 時間
↓
• WSL で実験:
• 仮想ディスク容量: 96.9GB
• さらに zip 圧縮: 37.1GB
ハンズオンセミナー 手順
• 参加者は事前に WSL 環境を構築
• WSL に作成済 Yocto Project をインポート
• ハンズオンではドライバー開発と
Yocto へのドライバー組み込みに注力
• ターゲットでのドライバー開発経験
• AI の Linux モジュール開発体験
• Yocto で独自ドライバーを組み込み、動作確認
Windows PC 1 台 と配布ターゲットボードで完結
エクスポートとインポート
エクスポート
• WSL 停止後、仮想ディスクを外部出力
• 一般形式:
wsl --export Distribution “Export file
path"
• 例:
wsl --export Ubuntu-20.04 "D:WSL
vdisk.tar"
インポート
• WSL 停止後、仮想ディスクを指定して登録
• 一般形式:
wsl --import New dist-name "Import file
path"
• 例:
wsl --import Ubuntu-20.04cq "D:WSL
vdisk.tar"
WSL のネットワークアプリ
ネットワーク実験環境
WSL
GeneralIoTModules
カーネルモードドライバー
同士の UDP 直接通信実験
注意点: WSL ネットワーク
WSL デフォルト 仮想ネットワーク
Windows
WSL2
Windows IP
Internal IP / port
Internal IP
address
NAT
• 外には出れる
• サービス着信不可
実験例
GeneralIoTModules
WSL と 組み込みシステム
WSL と組み込みシステム
• Windows 開発ツールが便利
• 複数ユーザー、複数 Distribution 使い分け
• Yocto Project が安定動作
• Yocto Project がより使い易くなる
(vs. Docker, VM, …)
• エクスポートとインポート
• USB とシリアルポート も使える
余談:久々の Yocto Project
で
• Yocto Project は順調に肥大化、複雑化、…
• 組み込みシステムはトラブルが当たり前 (X Raspberry …)
• 組み込みシステムは、問題究明、抜け道探し、
裏技発見 のワクワク感が楽しい!
• WSL は超強力な味方
• SSD, M.2 / NVMe が当たり前
• ホストは大容量メモリー、マルチコアが当たり前
まとめ
• IoT システム開発における WSL
(ハンズオンセミナー紹介)
• Yocto ディスク容量考察
• エクスポートとインポート
• WSL の ネットワークアプリ
• WSL と 組み込みシステム
ありがとうございました。
チャンネル登録、いいね ボタン、よろしくお願いします
日本を Smart に!資料 https://www.slideshare.net/
NETMF/
GitHub
https://github.com/ahidaka/

WSL for IoT, Microcomputer, and Yocto Project