7.2 System Threads, Application Threads, and the Idle Thread

There are several types of threads in a typical application. There is a distinction (using priority) between system threads, application threads, and the idle thread.

The PI manager, described in Chapter 8 "Input/Output Functionality," is typical of system threads. It acts as a resource manager, allowing multiple user threads to share a critical resource safely - in this case, the cartridge ROM.

The idle thread, which has the lowest priority (a priority of 0) of any thread in the system, runs only when all other threads are blocked awaiting some event. Note that the idle thread is required; the system will not run without it. The game application itself is composed of user threads. User threads are defined as those threads having priorities between 1 and 127.