Schița de curs

Începutul cu Rust Încorporate

  • Prezentare generală a no_std, core și ecosistemului Rust încorporate
  • Alegerea unui țintă și înțelegerea tripletelor de țintă
  • Configurarea rustup, cargo și lanțurilor de unelte pentru țintă

Unelte, Flux de Lucru pentru Construcție și Depanare

  • Utilizarea fluxurilor de lucru cargo, cargo-embed, probe-run și OpenOCD
  • Flashare și depanare cu sonde hardware (ST-Link, JLink)
  • Considerații pentru CI în construirea firmware Rust încorporate

Abstracție Hardware și Acces la Periferice

  • Înțelegerea trăsăturilor embedded-hal și modelelor de drivere
  • Crate de acces la periferice (PACs) și crate de dispozitive (svd2rust)
  • Scrierea și utilizarea drivelor HAL și crate de suport pentru plăci (BSCs)

Siguranța Memoriei, Concurența & Timp Real

  • Modele sigure pentru stări partajate ș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 & Fiabilitate

  • Modele de gestionare a erorilor în medii constrânse
  • Testare unitară pe gazdă vs. testare de integrare pe hardware
  • Analiza defecțiunilor, înregistrare și strategii post-mortem

Performanță, Optimizare a Energiei & Resurselor

  • Benchmarking, măsurare și optimizare a căilor critice
  • Tehnici de reducere a dimensiunii codului și scripturi de linkare
  • Strategii de gestionare a energiei și modele de design pentru consum redus

Implementare, Securitate & Cele Mai Bune Practici din Ecosistem

  • Pornire securizată, semnarea firmware și strategii de actualizare
  • Considerații privind lanțul de aprovizionare și gestionarea dependențelor
  • Plan de migrare a firmware C la Rust și resurse ale comunității

Rezumat și Pași Următori

Cerințe

  • Înțelegerea conceptelor de bază din Rust: proprietate, împrumut, durate de viață
  • Experiență în scrierea de programe Rust non-triviale (Rust intermediar)
  • Familiaritate cu conceptele de sisteme încorporate: I/O mapat în memorie, întreruperi, periferice

Publicul Țintă

  • Ingineri de firmware încorporate care doresc să adopte Rust
  • Ingineri software cu experiență în Rust care trec la sisteme de nivel scăzut
  • Lead-uri tehnice care evaluează Rust pentru dezvoltarea de produse încorporate
 14 Ore

Numărul de participanți


Pret per participant

Mărturii (5)

Cursuri viitoare

Categorii înrudite