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
Mărturii (5)
El răspunde la întrebările mele foarte bine explicat.
Khaled Almarzooqi - Beamtrail
Curs - Circuits and Electronics Fundamentals
Tradus de catre o masina
Sean a fost un vorbitor dinamic și exercițiile practice au fost foarte interesante, văd cum vor fi cu adevărat aplicabile.
Temira Koenig - Yeshiva University
Curs - Raspberry Pi for Beginners
Tradus de catre o masina
Înțeleptul instruiector se adaptează nevoilor noastre
Eduardo Fontecha - ORMAZABAL PROTECTION & AUTOMATION S.L.U.
Curs - The Yocto Project - An Overview - hands-on
Tradus de catre o masina
Formatorul a fost cu adevărat amabil și înțelept, depășindu-și limita pentru a-mi explica lucruri pe care nu le cunoșteam
Felix - Microchip Technology Inc
Curs - Embedded C Application Design Principles for Automotive Professionals
Tradus de catre o masina
Acumularea cunoștințelor utile și clarificarea unor aspecte despre care aveam îndoieli anterior.
Kenneth Mahoney - University of Glasgow
Curs - Arduino: Programming a Microcontroller for Beginners
Tradus de catre o masina