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
Noțiuni introductive despre Rust Embedded
- Prezentare generală a no_std, core și a ecosistemului Rust embedded
- Alegerea unei ținte și înțelegerea target triple-urilor
- Configurarea rustup, cargo și a toolchain-urilor pentru țintă
Tooling, Build și Flux de Lucru pentru 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 construirea firmware-ului Rust embedded
Abstractizare Hardware și Acces la Periferice
- Înțelegerea trait-urilor 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 starea 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
Performanță, Putere și Optimizarea 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 low-power
Deployment, Securitate și Cele Mai Bune Practici ale Ecosistemului
- 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 către Rust și resurse ale comunității
Rezumat și Pașii Următori
Cerințe
- Înțelegerea conceptelor de bază 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
Audiență
- Ingineri firmware embedded care doresc să adopte Rust
- Ingineri software cu experiență Rust care trec la sisteme de nivel scăzut
- Lideri tehnici care evaluează Rust pentru dezvoltarea de produse embedded
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