To see details about how to operate the program, please see the non-markdown README file in the current directory. This is a micro-kernel written for CS452 (Real-Time Programming) at the University of Waterloo. The purpose of the kernel is to provide tools for driving trains on a track; routing them to destinations, determining where they are on the track, and writing programs that interact with the train set.
- TrainController - Routing of trains and synchronization of track resources.
- ClockServer - Keeps track of time and provides wait functionality.
- SensorServer - Listens for sensors being triggerd on teh track and provies tools to wait on them.
- NameServer - Provides lookup/registration services for tasks to find one another.
- RPSServer - An implementation of a RockPaperScissors game engine.
Max Chen: http://github.com/maxqchen
Ford Peprah: http://github.com/hkpeprah
Run make upload
Note: This also compiles.
Run make
Run make test TEST="testfilename"
Run make debug
SILENT
- Pass eitherfalse
ortrue
to disableDEBUG
if making test, otherwise to disable Makefile linking output.PROFILING
- Pass additional profiling defines.
Run doxygen Doxyfile
- Kernel Description: http://www.cgl.uwaterloo.ca/~wmcowan/teaching/cs452/pdf/kernel.pdf