Event Queue System

It is very common to use finite-state machines to define behaviors in real-time and embedded systems. Students investigate finite-state machine implementations in SE462 - Modeling of Real-Time Systems.

Event Queue System

Finite-state machines are driven by events that cause the machine to take a transition from one state to the next. The event queue system is a general-purpose mechanism that could be built and used by all finite-state machines. When teams implement the finite-state machines that define the system's behavior, it would be useful for them to use a robust event mechanism, rather than each team creating one from scratch. A team that went in this direction would design and implement an event system running on QNX that all teams could use. Even though the deliverable will be on QNX, a team assigned this project should strive for portability by using non-QNX specific features. The event system will need to accept registrations for receiving events, a filtering mechanism to categorize events, and delivery of events to registered finite-state machines. The team, in conjunction with the instructor, will define the exact features for this event queue and its public API. The event queue mechanism may need to be threaded. This project would also require the team to demonstrate the use of the event queue with a system of simple finite-state machines including one with an orthogonal (concurrent) region.

Deliverables


$Id: EventQueueSystem.html 138 2013-03-31 05:10:48Z jrv $