Windows also has a similar thread called “Zero Page Thread” which has the lowest priority on the system (even lower than IDLE, IIRC).
Any idea why that's necessary ? So it's preempted by a IDLE process.
The idle task (when there's nothing to run) doesn't have a priority at all, it just gets run when nothing else is available. the "idle" priority is an actual priority, for when there's no higher-priority task to run. The ZPT is prioritized below "idle", so super-duper-low priority.
Also, do not conflate the user-thread idle priority class with the (non-)priorities of Idle Threads.