Temario del curso
Introducción al uso de Rust en sistemas embebidos
- Principales conceptos: no_std, core y el ecosistema Rust para entornos embebidos.
- Cómo elegir una plataforma objetivo y comprender la sintaxis de triples de destino.
- Instalación y configuración básica de rustup, Cargo y otros elementos del entorno.
Herramientas, compilación y procesos de depuración
- Trabajo con herramientas como Cargo, cargo-embed, probe-run y OpenOCD.
- Instalación y uso de dispositivos de depuración como ST-Link o JLink.
- Estrategias recomendadas para la integración continua en proyectos embebidos.
Abstracción del hardware y gestión de periféricos
- Familiarización con las características de embedded-hal así como la lógica subyacente a los controladores.
- Descripción de paquetes PACs y herramientas como svd2rust para el acceso directo al hardware.
- Técnicas para crear y emplear controladores HAL o módulos específicos para determinadas placas.
Seguridad de memoria, concurrencia y requisitos temporales estrictos
- Métodos prácticos para manejar referencias compartidas o mutables dentro de bloques interrumpibles.
- Evaluación de opciones tales como RTIC al programar sistemas con exigencias temporales claras.
- Estudios sobre uso adecuado del stack y el heap, así como evitar prácticamente la asignación dinámica.
Manejo de errores, evaluaciones y robustez del software
- Estrategias habituales para abordar anomalías en contextos con restricciones de recursos.
- Diferencias entre pruebas unitarias sobre entornos anfitriónes y ensayos combinados sobre hardware real.
- Métodos para rastrear fallas, implementar registros eficaces e intervenir post-fallo.
Mejora del rendimiento y optimización de consumo energético
- Aplicación correcta de técnicas para evaluar la velocidad operativa y la reducción de gargantas.
- Métodos recomendados para disminuir el volumen total del código generado mediante el ajuste en scripts del linker.
- Consejos técnicos para optimizar diseños con requerimientos de bajo consumo energético.
Despliegue, ciberseguridad y buenas prácticas del ecosistema Rust
- Cómo activar arranque seguro, firmar código ejecutable y organizar flujos de actualización.
- Consideraciones fundamentales respecto a la cadena de suministro software y gestión adecuada de dependencias.
- Perspectivas clave para migrar aplicaciones previamente escritas en C hacia Rust, así como recursos valiosos de su comunidad.
Síntesis final y orientación futura del aprendizaje
Requerimientos
- Conocimiento básico de los conceptos fundamentales de Rust: propiedad, préstamos y ciclos de vida
- Experiencia previa desarrollando programas complejos en Rust (nivel intermedio)
- No ignorar nociones clave sobre sistemas embebidos: acceso a memoria mediante mapeo, manejo de interrupciones y periféricos
Público objetivo
- Ingenieros especializados en firmware que desean incorporar Rust a sus proyectos.
- Programadores con experiencia en Rust que buscan trabajar en entornos de bajo nivel.
- Líderes técnicos evaluando las ventajas del uso de Rust para el desarrollo de productos embebidos.
Formación Corporativa a Medida
Soluciones de formación diseñadas exclusivamente para empresas.
- Contenido personalizado: Adaptamos el temario y los ejercicios prácticos a los objetivos y necesidades reales del proyecto.
- Calendario flexible: Fechas y horarios adaptados a la agenda de su equipo.
- Modalidad: Online (en directo), In-company (en sus oficinas) o Híbrida.
Precio por grupo privado (formación online) desde 2900 € + IVA*
Contáctenos para obtener un presupuesto exacto y conocer nuestras promociones actuales
Reseñas (1)
Ser capaz de solicitar temas avanzados incluso si no estaban planificados inicialmente.
Gabriel Chouinard - Spark Microsystems
Curso - FreeRTOS: Programming for Real Time Operating Systems
Traducción Automática