Intrati in legatura

Schița de curs

Introducere în Rust embedded

  • Prezentare generală a ecosistemului no_std, core și Rust embedded
  • Alegerea unei ținte și înțelegerea target triple-urilor
  • Configurarea rustup, cargo și a toolchain-urilor pentru țintă

Tooling, flux de build și debug

  • Utilizarea fluxurilor de lucru cargo, cargo-embed, probe-run și OpenOCD
  • Flashing și debugging cu sonde hardware (ST-Link, JLink)
  • Considerații CI pentru build-ul firmware-ului Rust embedded

Abstractizare hardware și acces la periferice

  • Înțelegerea trăsăturilor embedded-hal și a modelelor de drivere
  • Crate-uri de acces la periferice (PAC) și crate-uri de dispozitiv (svd2rust)
  • Scrierea și utilizarea driverelor HAL și a crate-urilor de suport pentru plăci (BSC)

Siguranța memoriei, concurență și timp real

  • Modele sigure pentru stare partajată și referințe mutabile în întreruperi
  • RTIC și alte modele de concurență pentru sisteme în timp real
  • Utilizarea heap vs. stack, alocatori și evitarea alocării dinamice

Gestionarea erorilor, testare și fiabilitate

  • Modele de gestionare a erorilor în medii cu constrângeri
  • Testare unitară pe host vs. testare de integrare pe hardware
  • Analiza defectelor, logging și strategii post-mortem

Optimizarea performanței, consumului și resurselor

  • Benchmarking, măsurare și optimizarea căilor fierbinți
  • Tehnici de reducere a dimensiunii codului și linker scripts
  • Strategii de gestionare a energiei și modele de design pentru consum redus

Deployment, securitate și bune practici în ecosistem

  • Secure boot, semnarea firmware-ului și strategii de update
  • Considerații legate de supply-chain și gestionarea dependențelor
  • Foaie de parcurs pentru migrarea firmware-ului C la Rust și resurse ale comunității

Rezumat și pașii următori

Cerințe

  • Înțelegerea conceptelor de bază din Rust: ownership, borrowing, lifetimes
  • Experiență în scrierea de programe Rust non-triviale (Rust intermediar)
  • Familiaritate cu concepte embedded: I/O mapat în memorie, întreruperi, periferice

Public țintă

  • Ingineri de firmware embedded care doresc să adopte Rust
  • Ingineri software cu experiență în Rust care fac tranziția către sisteme de nivel scăzut
  • Lideri tehnici care evaluează Rust pentru dezvoltarea de produse embedded
 14 Ore

Numărul de participanți


Pret per participant

Mărturii (1)

Cursuri viitoare

Categorii înrudite