Context switch
Process of storing the state of a process or thread, so that it can be restored and resume execution at a later point.
- Context switch128 related topics
Thread (computing)
Smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system.
Processes are typically preemptively multitasked, and process switching is relatively expensive, beyond basic cost of context switching, due to issues such as cache flushing (in particular, process switching changes virtual memory addressing, causing invalidation and thus flushing of an untagged translation lookaside buffer, notably on x86).
Preemption (computing)
Act of temporarily interrupting an executing task, with the intention of resuming it at a later time.
Such a change in the currently executing task of a processor is known as context switching.
Linux kernel
Free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel.
He started with a task switcher in Intel 80386 assembly language and a terminal driver.
Interrupt
Interrupt is a request for the processor to interrupt currently executing code (when permitted), so that the event can be processed in a timely manner.
In some usages, the term trap refers specifically to a breakpoint intended to initiate a context switch to a monitor program or debugger.
Synchronization (computer science)
In computer science, synchronization refers to one of two distinct but related concepts: synchronization of processes, and synchronization of data.
If proper synchronization techniques are not applied, it may cause a race condition where the values of variables may be unpredictable and vary depending on the timings of context switches of the processes or threads.
Scheduling (computing)
Action of assigning resources to perform tasks.
Context switches, in which the dispatcher saves the state (also known as context) of the process or thread that was previously running; the dispatcher then loads the initial or previously saved state of the new process.
Protection ring
In computer science, hierarchical protection domains, often called protection rings, are mechanisms to protect data and functionality from faults (by improving fault tolerance) and malicious behavior (by providing computer security).
At least one embedded database management system, eXtremeDB Kernel Mode, has been developed specifically for kernel mode deployment, to provide a local database for kernel-based application functions, and to eliminate the context switches that would otherwise occur when kernel functions interact with a database system running in user mode.
Kernel (operating system)
Computer program at the core of a computer's operating system and generally has complete control over everything in the system.
Important decisions have to be made when designing the device management system, as in some designs accesses may involve context switches, making the operation very CPU-intensive and easily causing a significant performance overhead.
Computer multitasking
Concurrent execution of multiple tasks over a certain period of time.
This "context switch" may be initiated at fixed time intervals (pre-emptive multitasking), or the running program may be coded to signal to the supervisory software when it can be interrupted (cooperative multitasking).
Process (computing)
Instance of a computer program that is being executed by one or many threads.
However, multitasking allows each processor to switch between tasks that are being executed without having to wait for each task to finish (preemption).