1/59
These flashcards cover essential vocabulary from Chapters 1.1 through 5.2 of the Operating Systems lecture notes, including definitions of hardware, kernel functions, process management, memory optimization techniques, storage algorithms, and security protocols.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
operating system
Software that manages a computer’s hardware, helps applications work, and lets users interact with the computer.
Moore’s law
The idea that the number of parts on a computer chip doubles about every 18 months.
kernel
The main part of an operating system that starts running as soon as a computer turns on.
interrupt
A signal from a device telling the computer’s brain (the CPU) that something important needs attention right away.
non-maskable interrupt
An urgent signal that the CPU must deal with immediately, like a major error.
maskable
Describes an interrupt that the CPU can choose to ignore briefly, usually when it’s busy doing something very important.
volatile
Describes memory that loses its information when the computer turns off.
bootstrap program
The first program that starts a computer by getting everything ready for the main software to run when the computer is turned on.
bit
The smallest unit of data storage containing one of two values, 0 (off) or 1 (on).
word
A unit of data representing multiple bytes, such as 4 bytes in a 32-bit system or 8 bytes in a 64-bit system.
trap
A software interrupt caused either by an error (e.g., division by zero or invalid memory access) or by a specific request from a user program for an operating-system service; also called an exception.
kernel mode
A CPU mode in which all instructions are enabled. Also called supervisor mode, system mode, or privileged mode.
mode bit
A CPU status bit used to indicate the current mode: kernel (0) or user (1).
multiprogramming
Keeps multiple programs in memory to maximize CPU usage by switching between them.
fault tolerance
The ability of a multiprocessor system to handle the failure of a processor by redistributing its tasks to other processors, ensuring continuous operation.
GUI (graphical user interface)
A computer interface comprising a window system with a pointing device to direct I/O, choose from menus, and make selections.
shell
One of the command interpreters on a system with multiple command interpreters to choose from.
API (application programming interface)
A set of commands, functions, and other tools that can be used by a programmer in developing a program.
process
A program loaded into memory and executing.
heap section
The section of process memory that is dynamically allocated during process run time; it stores temporary variables.
stack section
The section of process memory that contains activation records and other temporary data.
process control block
A per-process kernel data structure containing many pieces of information associated with the process; also called a task control block.
zombie
A process that has terminated but whose parent has not yet called wait() to collect its state and accounting information.
orphan
The child of a parent process that terminates in a system that does not require a terminating parent to cause its children to be terminated.
rendezvous
In interprocess communication, the meeting point at which a send is picked up by a receive when blocking mode is used.
fork()
A system call that creates a new process by duplicating the existing process.
mutex
Short for mutual exclusion, a lock that ensures only one process can access a critical section or resource at a time.
starvation
A situation where a process is perpetually denied access to resources because other processes continuously acquire them.
busy waiting
A practice that allows a thread or process to use CPU time continuously while waiting for something, such as an I/O loop reading status information.
semaphore
An integer variable that is accessed only through two standard atomic operations: wait() and signal().
throughput
In scheduling, the number of threads completed per unit time.
convoy effect
A scheduling phenomenon in which many other threads wait for one thread to get off a core, causing suboptimal device and CPU utilization.
aging
A solution to scheduling starvation involving gradually increasing the priority of threads as they wait for CPU time.
deadlock
A condition where two or more processes or threads are unable to proceed because each is waiting for the other to release a required resource.
Banker's algorithm
An algorithm that prevents deadlocks by ensuring resource allocation does not lead to an unsafe state.
logical address
Address generated by the CPU that requires translation to a physical address; essentially the same as a virtual address.
MMU (memory management unit)
Hardware enabling a CPU to access and translate addresses between logical and physical memory.
external fragmentation
Fragmentation where available memory contains holes that together have enough free space for a request, but no single hole is large enough.
internal fragmentation
Wasted memory within allocated regions due to fixed-size partitions.
50-percent rule
A statistical finding that fragmentation may result in the loss of 50% of space (or 1/3 of total memory space).
page table
In paged memory, a table containing the base address of each frame of physical memory, indexed by the logical page number.
TLB (translation look-aside buffer)
A small, fast-lookup hardware cache used in paged memory address translation to provide fast access to a subset of addresses.
virtual memory
A technique that allows the execution of a process that is not completely in memory.
page fault
An event that occurs when a process tries to access a page not currently loaded in physical memory, causing the OS to load it from secondary storage.
modify bit
An MMU bit used to indicate that a frame has been modified and must be saved before replacement; also called a dirty bit.
Belady's anomaly
A phenomenon where increasing the available number of page frames in memory may result in an increase in the number of page faults.
thrashing
Excessive paging due to insufficient physical memory.
DMA (direct memory access)
A performance-improving operation allowing devices to transfer large amounts of data directly to and from main memory.
rotational latency
On an HDD, the time it takes the read-write head, once over the desired cylinder, to access the desired track.
SCAN algorithm
An HDD I/O scheduling algorithm where the disk head moves from one end to the other performing I/O, then reverses direction.
inode
In many file systems, a per-file data structure holding most of the metadata of the file.
bitmap
A string of n binary digits representing the status of n items, where 1 means available and 0 means unavailable (or vice-versa).
ransomware
Malicious software that encrypts files and demands payment for decryption.
phishing
A class of social engineering attacks in which a legitimate-looking e-mail or website tricks a user into breaching confidentiality.
AES (advanced encryption standard)
The NIST cipher designed to replace DES and triple DES; it uses symmetric encryption.
RSA
The most widely used public key cipher.
principle of least privilege
A design principle stating that every program and user should operate using the minimum privilege necessary to complete the job.
defense in depth
The theory that more layers of defense provide stronger defense than fewer layers.
Ring 0
The innermost protection ring with the highest privileges, where the kernel operates with full access.
RBAC (role-based access control)
A method of access control in which roles, rather than individual users, directly receive permissions.