The global scheduler is a fair round-robin scheduler with two priorities. Trusted system components can register at high priority, and take absolute precedence over other lower priority strands. For instance, the kernel strand scheduler can register at high priority and execute interrupt event handlers as soon as the interrupt is raised. The second priority level can be used for user-level schedulers or by the kernel strand scheduler to execute low-priority handlers.