Návrh Školení

Začínáme s Embedded Rustem

  • Přehled no_std, core a ekosystému embedded Rustu
  • Volba cíle a pochopení cílových trojic (target triples)
  • Nastavení rustup, cargo a cílových toolchainů

Nástroje, sestavovací a ladící pracovní postupy (build & debug workflow)

  • Použití cargo, cargo-embed, probe-run a OpenOCD pracovních postupů
  • Flashování a ladění s hardwarovými sondami (ST-Link, JLink)
  • Aspekty CI při vytváření firmware ve embedded Rustu

Abstrakce hardwaru a přístup k perifériím (peripheral access)

  • Pochopení embedded-hal traitů a vzorů pro ovladače (drivers)
  • Přístupové knihovny periférií (PACs) a zařízení (svd2rust)
  • Psaní a používání HAL ovladačů a knihoven podpory desek (BSCs)

Bezpečnost paměti, konkurenční programování & reálný čas (real-time)

  • Bezpečné vzory pro sdílené stavy a mutabilní odkazy v přerušeních (interrupts)
  • RTIC a jiné konkurenční modely pro systémy v reálném čase
  • Použití haldy vs. zásobníku, alokační přístupy a vyhýbání se dynamickému alokaci paměti (dynamic allocation)

Zpracování chyb, testování & spolehlivost (reliability)

  • Vzory pro zpracování chyb v omezených prostředích (constrained environments)
  • Unit testing na hostitelské platformě vs. integrační testování na hardwaru
  • Analýza selhání, logování a post-mortem strategie (post-mortem strategies)

Výkon, spotřeba energie & optimalizace zdrojů (resource optimization)

  • Benchmarkování, měření a optimalizace klíčových částí kódu (hot paths)
  • Techniky pro snižování velikosti kódu a linker skripty (linker scripts)
  • Strategie správy energie a návrhy na nižší spotřebu (low-power design patterns)

Nasazení, bezpečnost & osvědčené postupy ekosystému (ecosystem best practices)

  • Bezpečný start, podpis firmware a strategie aktualizace firmwaru (secure boot, firmware signing, and update strategies)
  • Aspekty dodavatelské řetězce a správa závislostí (supply-chain considerations and dependency management)
  • Plán pro přechod firmware v C na Rust a komunitní zdroje (roadmap for migrating C firmware to Rust and community resources)

Shrnutí a další kroky (next steps)

Požadavky

  • Chápání základních konceptů jazyka Rust: vlastnictví, půjčování, životní cykly
  • Zkušenosti s psaním nezřetězených programů v Rustu (pokročilý Rust)
  • Odborné znalosti v oblasti vestavěných systémů: paměťově mapované I/O, přerušení, periférie

Cílová skupina

  • Inženýři vestavěných firmware hledající přechod k Rustu
  • Softwaroví inženýři s zkušenostmi v Rustu přecházející na nízkoúrovňové systémy
  • Techničtí vedoucí hodnotící Rust pro vývoj vestavěných produktů
 14 hodiny

Počet účastníků


Cena za účastníka

Reference (5)

Nadcházející kurzy

Související kategorie