コース概要

組み込みRustの始め方

  • no_std、core、および組み込みRustエコシステムの概要
  • ターゲットの選択とターゲットトリプルの理解
  • rustup、cargo、およびターゲットツールチェーンの設定

ツール、ビルド、デバッグワークフロー

  • cargo、cargo-embed、probe-run、およびOpenOCDワークフローの使用
  • ST-Link、JLinkなどのハードウェアプローブを使用したフラッシュとデバッグ
  • 組み込みRustファームウェアを構築する際のCIに関する考慮事項

ハードウェア抽象化と周辺機器アクセス

  • embedded-halトレイトとドライバーパターンの理解
  • 周辺機器アクセスクレート(PAC)とデバイスクレート(svd2rust)
  • HALドライバーやボードサポートクレート(BSC)の作成と使用

メモリ安全性、並行処理、リアルタイム

  • 割り込み中の共有状態とミュータブル参照の安全なパターン
  • RTICおよび他のリアルタイムシステム向け並行処理モデル
  • ヒープとスタックの使用、アロケータ、動的割り当ての回避

エラーハンドリング、テスト、信頼性

  • 制約のある環境でのエラーハンドリングパターン
  • ホスト上での単体テストとハードウェア上での統合テスト
  • 故障分析、ログ記録、およびポストモーテム戦略

パフォーマンス、電力、リソース最適化

  • ベンチマーク、測定、およびホットパスの最適化
  • コードサイズ削減技術とリンカースクリプト
  • 電力管理戦略と低消費電力設計パターン

デプロイ、セキュリティ、エコシステムのベストプラクティス

  • セキュアブート、ファームウェア署名、およびアップデート戦略
  • サプライチェーンの考慮事項と依存関係管理
  • CファームウェアをRustに移行するためのロードマップとコミュニティリソース

まとめと次なるステップ

要求

  • Rustの主要な概念(所有権、借用、ライフタイム)の理解
  • 非自明なRustプログラムを書く経験(中級者向けRust)
  • メモリマップI/O、割り込み、周辺機器などの組み込み概念の理解

対象者

  • Rustを採用したい組み込みファームウェアエンジニア
  • ローカルシステムに移行したいRustの経験を持つソフトウェアエンジニア
  • 組み込み製品開発にRustを評価している技術リード
 14 時間

参加者の人数


参加者1人あたりの価格

お客様の声 (5)

今後のコース

関連カテゴリー