Mulțumim pentru trimiterea solicitării! Un membru al echipei noastre vă va contacta în curând.
Mulțumim pentru trimiterea rezervării! Un membru al echipei noastre vă va contacta în curând.
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
Mărturii (1)
Posibilitatea de a solicita subiecte avansate chiar dacă acestea nu au fost planificate inițial.
Gabriel Chouinard - Spark Microsystems
Curs - FreeRTOS: Programming for Real Time Operating Systems
Tradus de catre o masina