Wwith a prioritized pre-emptive kernel – at any moment, the thread with the highest priority is allowed to run. Threads with identical priorities are “time-sliced” with each being allowed to run for a fixed period before being pre-empted. To understand the key ideas of the kernel, consider the thread states in Figure 16.1. Every thread (task) is in one of four states – Ready, Running, Blocked, or suspended. When a thread is created (0) it is put into the Ready state.