Cyclic executives for bare hardware

Small cyclic systems are based on the test-and-skip looping scheme, but include interrupt and 'burn' routines to maintain accurate loop timing. This chapter discusses how they can be implemented using a function pointer table, with an associated dispatcher routine. The function names are all held in an array, and evoked in round-robin sequence by the dispatcher code. This simple scheme enables subsequent modifications to be readily undertaken. An example keypad application is used to describe the structure and function of small cyclic executives, implemented on bare hardware. Only three fixed levels of priority are readily supported: interrupt, clock and base. This can be judged as too inflexible for many of the more complex real time applications. But this scheme does offer the developer good testability and low cost which may be significant for high distribution products.