# Finite State Machine

A collection of states, events, actions, and transitions between states defined in software as a function. This function takes the current state and a specific input event and returns a new set of output events along with the next state. Newton OS uses a finite-state machine to simplify the design of communication-based applications which manage both the endpoint and the related user interaction.

Also referred to as FSM or state machine.

## Addition Information

Newton Technology Journal: Finite-State Machines: A Model for Newton Communications (PDF)