Scheduler activations
Encyclopedia
Scheduler Activations is a thread
Thread (computer science)
In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. The implementation of threads and processes differs from one operating system to another, but in most cases, a thread is contained inside a process...

ing mechanism that, when implemented in an operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

's process scheduler
Scheduling (computing)
In computer science, a scheduling is the method by which threads, processes or data flows are given access to system resources . This is usually done to load balance a system effectively or achieve a target quality of service...

, provides 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 was proposed by Anderson, Bershad, Lazowska
Edward D. Lazowska
Edward D. Lazowska is an American computer scientist. He holds the Bill & Melinda Gates Chair in Computer Science & Engineering at the University of Washington, and is the founding Director of the University of Washington eScience Institute...

, and Levy
Hank Levy (computer scientist)
Henry M. Levy is an American computer scientist. He holds the Wissner-Slivka Chair in Computer Science and Engineering at the University of Washington ....

 in Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism in 1991. It was implemented in the NetBSD
NetBSD
NetBSD is a freely available open source version of the Berkeley Software Distribution Unix operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed. The NetBSD project is primarily focused on high quality design,...

 kernel by Nathan Williams but has since been abandoned in favor of 1:1 threading. FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...

 had a similar threading implementation called Kernel Scheduled Entities
Kernel Scheduled Entities
Kernel Scheduled Entities, or KSE, is a kernel-supported threading system found in FreeBSD, which allows a single process to have multiple kernel-level threads....

 which is also being retired in favor of 1:1 threading. Scheduler activations were also implemented as a patch for the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

by Vincent Danjean: Linux Activations, the user-level part being done in the Marcel thread library.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK