This table defines some basic types but is by no means either all inclusive or proscriptive. The functionality of any particular MASCOT machine beyond the required behaviours will depend on the design constraints imposed by the host platform.
Aside from implementing Control Queues and their associated behaviours, a MASCOT Machine also provides a limited set of control functions in the form of console commands. Detail regarding these commands along with the primitives associated with control queues are shown in the ‘MASCOT Machine ’ page
A MASCOT Machine is the target for any MASCOT system. Because the machine virtualizes the underlying hardware/software it clearly imposes some overhead on an application. However, this has to be considered in the context of the application itself. In all but the simplest there will be either explicit or implicit synchronization code and so it is generally the case that any application will suffer from synchronization overheads. In truth, because this code is usually scattered throughout the application it is often error prone and hard to debug. MASCOT admits up front that any significant application can (and possibly should) be implemented as a collection of cooperating tasks. ACP diagrams provide a design tool for such systems and the MASCOT Machine provides the vehicle that translates a design (as expressed in a SET document) on to a target platform.