NSF CyberTraining: Pilot · Collaborative Research
Concurrent Computing Curricula for Cyber-Physical Systems
Learning modules and open tools that teach engineers to reason about concurrency, timing, and fault tolerance in the software that runs cars, aircraft, and robots.
Why this project
Automobiles, aircraft, and other safety-critical systems depend on software that performs many tasks at once. Small timing or coordination mistakes such as race conditions, deadlocks, and stale data can go unnoticed in testing and later cause unsafe behavior.
The engineers who build these systems are often trained in mechanics and electronics rather than concurrent programming. This project develops a modular curriculum and open educational tools that give them hands-on experience with concurrent and distributed computing, grounded in the platforms they use: POSIX threads, FreeRTOS, and ROS 2.
Explore
Jump to any part of the project.