Professional Documents
Culture Documents
program code and its current activity. Depending on the operating system (OS).
Kernel: The kernel is the central component of most computer operating systems; it is a bridge
between applications and the actual data processing done at the hardware level.
Context Switch: A context switch is the computing process of storing and restoring state
(context)
of a CPU so that execution can be resumed from the same point at a later time.
Multitasking: Multitasking is the ability of an operating system to execute more than one
program simultaneously.
The Cost of Context Switching: Context switching represents a substantial cost to the system
in terms of CPU time and can, in fact, be the most costly operation on an operating system.
BIOS: The BIOS software is built into the PC, and is the first code run by a PC when powered
on (boot firmware). The primary function of the BIOS is to load and start an operating
system.
CPU Scheduling: CPU scheduling algorithms have different properties, and the choice of a
particular algorithm may favor one class of processes over another.
Scheduling Algorithm: A scheduling algorithm is the method by which threads, processes or
data
flows are given access to system resources (e.g. processor time, communications bandwidth).
Memory Management Unit (MMU): Memory management units that enable individual threads
of software to run in hardware-protected address spaces.
Real Time Operating System (RTOS): A Real-Time Operating System is a computing
environment
that reacts to input within a specific time period.
Rate Monotonic Analysis (RMA): Rate monotonic analysis is frequently used by system
designers
to analyze and predict the timing behavior of systems.
Deadlock: A deadlock is a situation in which two computer programs sharing the same
resource
are effectively preventing each other from accessing the resource, resulting in both programs
ceasing to function.
Resource Allocation Graph: Deadlocks can be described more precisely in terms of a directed
graph called a system resource-allocation graph.
Deadlock Avoidance: A deadlock-avoidance algorithm dynamically examines the
resourceallocation state to ensure that a circular wait condition can never exist.
Claim Edge: Resource-allocation graph can be used for deadlock avoidance. In addition to the
request and assignment edges, we introduce a new type of edge, called a claim edge.
Compile Time: It refers to either the operations performed by a compiler (the compile-time
operations), programming language requirements that must be met by source code for it to
be successfully compiled (the compile-time requirements), or properties of the program that
can be reasoned about at compile time.
Fragmentation: A multiprogrammed system will generally perform more efficiently if it
has a higher level of multiprogramming. For a given set of processes, we can increase the
multiprogramming level only by packing more processes into memory. To accomplish this task,
we must reduce memory waste or fragmentation. Systems with fixed-sized allocation units,
such as the single-partition scheme and paging, suffer from internal fragmentation. Systems
with variable-sized allocation units, such as the multiple-partition scheme and segmentation,
suffer from external fragmentation.
Global Descriptor Table (GDT): Is specific to the IA32 architecture. It contains entries telling
the CPU about memory segments. A similar Interrupts Descriptor Table exists containing tasks
and interrupts descriptors. Read the GDT Tutorial.
Hashed Page Tables: A common approach for handling address spaces larger than 32 bits.
Local Descriptor Table (LDT): Is a memory table used in the x86 architecture in protected
mode and containing memory segment descriptors: start in linear memory, size, executability,
writability, access privilege, actual presence in memory.