Cyclic executive
From Wikipedia, the free encyclopedia
A cyclic executive is an alternative to a real-time operating system. It is a form of cooperative multitasking, in which there is only one task. The sole task is typically realized as an infinite loop in main(), e.g. in C/C++.
The basic scheme is to cycle through a repeating sequence of activities, at a set frequency. For example, let us consider the example of an embedded system designed to monitor a temperature sensor and update an LCD display. The LCD may need to be written ten times a second (i.e., every 100 ms). If the temperature sensor must be read every 50 ms for other reasons, we might construct a loop of the following appearance:
main()
{
// initialization code here
while (1)
{
currTemp = tempRead();
lcdWrite(currTemp);
// waste CPU cycles until 50 ms
currTemp = tempRead();
// do other stuff
// waste CPU cycles until 100 ms
}
}
The outer 100 ms cycle is called the major cycle. In this case, there is also an inner minor cycle of 50 ms.

