Cooperative Scheduling

Cooperative scheduling is a style of scheduling in which the OS never interrupts a running process to initiate a context switch from one process to another. Processes must voluntarily yield control periodically or when logically blocked on a resource.

To access this content, you must purchase a Membership - check out the different options here. If you're a member, log in.

Preemptive Scheduling

Preemptive Scheduling is a multitasking strategy which permits the preemption of tasks. Preemption is the act of interrupting a task currently running on the CPU, usually to execute a higher-priority task, with the intention of resuming the interrupted task at a later time.

To access this content, you must purchase a Membership - check out the different options here. If you're a member, log in.

Context Switch

A context switch is the process of storing the state of a process, thread, or processor operating mode so that it can be restored at a later point to resume execution.

To access this content, you must purchase a Membership - check out the different options here. If you're a member, log in.

Priority Inversion

Priority inversion is a scenario in scheduling in which a high priority task is indirectly preempted by a lower priority task effectively inverting the relative priorities of the two tasks.

To access this content, you must purchase a Membership - check out the different options here. If you're a member, log in.

Active Object [AO]

The active object design pattern decouples method execution from method invocation for objects that each reside in their own thread of control. Typically, an active object is constructed using an internal thread and a queue of operations or events that will be executed on the active object’s thread. The goal is to enable concurrency using asynchronous invocation, and to eliminate the need for an object to worry about managing threading details itself: that’s all taken care of under the hood.

From Around the Web

Semaphore

A protected variable that restricts access to a shared resource. Mutexes and conditions are both different types of semaphore.

To access this content, you must purchase a Membership - check out the different options here. If you're a member, log in.