Scheduler activations

Short description: Operating system threading mechanism

Scheduler activations are a threading mechanism that, when implemented in an operating system's process scheduler, provide kernel-level thread functionality with user-level thread flexibility and performance. This mechanism uses a so-called "N:M" strategy that maps some N number of application threads onto some M number of kernel entities, or "virtual processors." This is a compromise between kernel-level ("1:1") and user-level ("N:1") threading. In general, "N:M" threading systems are more complex to implement than either kernel or user threads, because both changes to kernel and user-space code are required.

Scheduler activations were proposed by Anderson, Bershad, Lazowska, and Levy in Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism (1991).[1] Support was implemented in the NetBSD kernel by Nathan Williams[2], but has since been abandoned in favor of 1:1 threading.[3][4] FreeBSD had a similar threading implementation called Kernel Scheduled Entities which is also being retired in favor of 1:1 threading. Scheduler activations were also implemented as a patch for the Linux kernel by Vincent Danjean: Linux Activations, the user-level part being done in the Marcel thread library.

## References

1. ↑ Anderson, Thomas E.; Bershad, Brian N.; Lazowska, Edward D.; Levy, Henry M. (September 1991). "Scheduler activations: Effective kernel support for the user-level management of parallelism". Proceedings of the thirteenth ACM symposium on Operating systems principles. pp. 95–109. doi:10.1145/121132.121151. ISBN 0897914473. https://dl.acm.org/doi/10.1145/121132.121151.
2. ↑ An Implementation of Scheduler Activations on the NetBSD Operating System
3. ↑ Significant changes from NetBSD 4.0 to 5.0
4. ↑ Thread scheduling and related interfaces in NetBSD 5.0

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Scheduler activations. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Scheduler_activations&oldid=4229075"