Gracias por enviar su consulta! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Gracias por enviar su reserva! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Temario del curso
Inicio con Rust embebido
- Resumen del ecosistema de Rust embebido, no_std y core.
- Elegir un objetivo de compilación (target) y comprender las tripletes de objetivos (target triples).
- Configuración de rustup, cargo y las cadenas de herramientas específicas para el objetivo.
Herramientas, flujo de construcción y depuración
- Uso de los flujos de trabajo con cargo, cargo-embed, probe-run y OpenOCD.
- Carga y depuración con sondas de hardware (ST-Link, JLink).
- Consideraciones de CI (Integración Continua) para construir firmware Rust embebido.
Abstracción de hardware y acceso a periféricos
- Comprensión de los traits embedded-hal y patrones de controladores.
- Cajas de acceso a periféricos (PAC) y cajas de dispositivo (svd2rust).
- Escritura y uso de controladores HAL y cajas de soporte para placas (BSC).
Seguridad de memoria, concurrencia y tiempo real
- Patrones seguros para el estado compartido y referencias mutables en interrupciones.
- RTIC y otros modelos de concurrencia para sistemas en tiempo real.
- Uso de la pila frente a montículo (heap), asignadores y evitar la asignación dinámica.
Manejo de errores, pruebas y fiabilidad
- Patrones de manejo de errores en entornos con recursos limitados.
- Pruebas unitarias en el host frente a pruebas de integración en hardware.
- Análisis de fallos, registro de eventos (logging) y estrategias post-mortem.
Rendimiento, consumo de energía y optimización de recursos
- Ejecución de pruebas de rendimiento, medición y optimización de rutas críticas (hot paths).
- Técnicas de reducción del tamaño del código y scripts del enlazador (linker scripts).
- Estrategias de gestión de energía y patrones de diseño para bajo consumo.
Despliegue, seguridad y mejores prácticas del ecosistema
- Arranque seguro (secure boot), firma de firmware y estrategias de actualización.
- Consideraciones sobre la cadena de suministro y gestión de dependencias.
- Hojas de ruta para migrar firmware en C a Rust y recursos de la comunidad.
Resumen y próximos pasos
Requerimientos
- Comprensión de los conceptos centrales de Rust: propiedad, préstamo y duraciones (lifetimes).
- Experiencia escribiendo programas en Rust no triviales (nivel intermedio).
- Conocimiento familiar de conceptos de sistemas integrados: E/S mapeada en memoria, interrupciones y periféricos.
Público objetivo
- Ingenieros de firmware embebido que buscan adoptar Rust.
- Ingenieros de software con experiencia en Rust que transicionan hacia sistemas de bajo nivel.
- Líderes técnicos que evalúan Rust para el desarrollo de productos integrados.
14 Horas
Testimonios (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