Essential Operating System Concepts: From Kernel Mode to Virtualization
This article provides a comprehensive, numbered glossary of core operating‑system concepts—including OS fundamentals, kernel and user modes, memory hierarchy, process management, I/O mechanisms, virtualization, and networking—each defined succinctly and illustrated with diagrams to aid understanding.
Operating System Fundamentals
Operating System (OS): Manages hardware and software resources, provides core services such as memory management, scheduling, I/O control, and a user interface. Shell: A program that reads commands from the keyboard and passes them to the OS; historically the only UI on Unix‑like systems, now complemented by GUIs. GUI (Graphical User Interface): A visual interface allowing interaction via icons, windows, and audio cues. Kernel Mode (Supervisor Mode): The privileged CPU mode where code can access all hardware without restriction; crashes in this mode are catastrophic. User Mode: The normal execution mode for applications; transitions to kernel mode occur via system calls or interrupts. Computer Architecture: Describes the organization of a computer system, covering instruction sets, memory management, I/O, and bus structures. SATA (Serial ATA): A bus standard for connecting storage devices such as hard drives and optical drives. Multiplexing: Sharing a resource by allowing multiple programs or users to use it in turn. Mainframes: Large, highly reliable computers used for critical, high‑volume data processing. Batch System: Executes jobs submitted on offline media without direct user interaction, grouping similar jobs to improve throughput. OS/360: IBM's historic batch operating system for the System/360 mainframe. Multitasking: Enables a computer to run multiple programs concurrently by saving and restoring CPU state. Time‑Sharing: Allows many users to share computing resources simultaneously via multiple programs. Compatible Time‑Sharing System (CTSS): The first time‑sharing OS, developed at MIT. Cloud Computing: On‑demand availability of computing resources (storage, processing) over the Internet, often distributed across multiple data‑center locations. UNIX: A powerful, multi‑user, multitasking OS supporting many processor architectures. UNIX System V: A major UNIX branch. BSD (Berkeley Software Distribution): A UNIX derivative. POSIX: A set of IEEE standards defining portable OS interfaces for UNIX‑like systems. MINIX: A minimal, educational UNIX‑like OS. Linux: A widely used, open‑source operating system kernel. Windows NT: Microsoft’s 32‑bit OS kernel introduced in 1993. Service Pack (SP): A collection of updates, fixes, and enhancements released as a single installable package. DRM (Digital Rights Management): Technical measures that restrict the use of copyrighted hardware or software. x86: An instruction‑set architecture originally from Intel, including 16‑, 32‑, and 64‑bit extensions. FreeBSD: A UNIX‑like OS developed by the FreeBSD project. X Window System (X11): A bitmap‑based window system common on UNIX‑like platforms. GNOME: A free desktop environment primarily for Linux. Network Operating System (NOS): OS specialized for network devices such as routers and firewalls. Distributed Operating System: Software that makes a collection of independent computers appear as a single coherent system. Program Counter: A CPU register indicating the address of the next instruction to execute. Stack Pointer: A register that tracks the call stack. Program Status Word: Holds the current state of the CPU (flags, mode, etc.). Pipeline: A series of processing stages where the output of one stage feeds the next, often executed in parallel. Superscalar: CPU architecture that can execute multiple instructions per clock cycle. System Call: Interface for user‑space programs to request privileged services from the kernel. Multithreading: Running multiple threads concurrently, either via hardware support or software scheduling. CPU Core: An independent processing unit within a CPU that executes instructions. GPU (Graphics Processing Unit): Specialized processor for rendering graphics and performing parallel computations. Cache Lines: Fixed‑size blocks into which a CPU cache is divided. Cache Hit: When requested data is found in the cache, avoiding a slower memory access. L1 Cache: The fastest, smallest cache located on the CPU die. L2 Cache: A larger, slower cache that backs L1. L3 Cache: An even larger cache, often shared among cores. RAM (Random Access Memory): Volatile main memory used for temporary data storage. ROM (Read‑Only Memory): Non‑volatile memory that retains data without power. EEPROM: Electrically erasable programmable read‑only memory, rewriteable many times. Flash Memory: Rewritable non‑volatile storage used in USB drives, SSDs, etc. SSD (Solid State Drive): Storage device using flash memory for persistent data. Virtual Memory: Memory‑management technique that gives processes the illusion of a large, contiguous address space, swapping pages to disk as needed. MMU (Memory Management Unit): Hardware that translates virtual addresses to physical addresses and enforces protection. Context Switch: Saving the state of a running process and restoring another's state. Device Driver: Software that provides an interface between the OS and hardware devices. Busy Waiting (Spin): Repeatedly checking a condition in a loop until it becomes true. Interrupt: Asynchronous signal from hardware or software that causes the CPU to pause current execution and run an interrupt handler. Interrupt Vector: Table entry that holds the address of an interrupt service routine. DMA (Direct Memory Access): Allows hardware subsystems to transfer data to/from memory without CPU involvement. Bus: A communication system that transfers data between components. PCIe (Peripheral Component Interconnect Express): High‑speed serial expansion bus. DMI (Direct Media Interface): Intel‑specific bus connecting northbridge and southbridge chips. USB (Universal Serial Bus): Standard serial bus for connecting peripherals. BIOS: Firmware that initializes hardware and boots the operating system. Hard Real‑Time System: Guarantees that deadlines are always met (e.g., nuclear control, medical devices). Soft Real‑Time System: Missed deadlines degrade performance but do not cause catastrophic failure. Process: An executing instance of a program, with its own memory space and resources. Address Space: The range of memory addresses a process can use. Process Table: OS data structure storing information about all active processes. Command‑Line Interface (CLI): Text‑based user interface where commands are typed. UNC (Uniform Naming Convention): Syntax for specifying network resource paths (e.g., \\server\share). Mounting: Making a filesystem on a storage device accessible at a directory path. Error Handling: Strategies for detecting, reporting, and recovering from runtime errors. Synchronous (Blocking): Operations where the caller must wait for completion. Asynchronous: Operations driven by interrupts, allowing the CPU to continue other work. Buffering: Temporary storage of data to improve I/O performance. Programmed I/O (PIO): CPU‑directed data transfer between memory and devices. Polling: Actively checking device status in a loop. Reentrant: Code that can be safely called again before its previous execution completes. Major/Minor Device Numbers: Identifiers that classify device types and specific instances. Double Buffering: Using two buffers to allow one to be filled while the other is processed. Circular Buffer: A wrap‑around buffer useful for streaming data. Spooling: Queuing data for devices that operate slower than the CPU (e.g., printers). Daemon: Background process not directly controlled by a user. Logical Block Addressing (LBA): Method of specifying the location of blocks on storage devices. RAID: Redundant Array of Inexpensive Disks, providing data redundancy and performance. MBR (Master Boot Record): First sector of a storage device containing bootloader information. FCFS (First‑Come, First‑Served): Scheduling algorithm that services requests in arrival order. SSF (Shortest Seek First): Disk scheduling that reduces average seek time. Stable Storage: Storage that guarantees atomic writes. Clock: Timing device that regulates CPU speed and system timing. Two‑Phase Locking (2PL): Concurrency control protocol with expanding and shrinking phases. Livelock: Situation where processes continuously change state without making progress. Starvation: Condition where a process never obtains needed resources. Sandboxing: Isolating applications from critical system resources for security. VMM (Virtual Machine Monitor / Hypervisor): Software that creates and manages virtual machines. Virtualization: Abstracting physical resources to create multiple logical machines. Cloud: Large‑scale virtualization offering on‑demand computing resources. Interpreter: Executes program code line‑by‑line, translating each instruction at runtime. Paravirtualization: Provides a software interface that mimics hardware for guest OSes. Full Virtualization: Emulates complete hardware, allowing unmodified guest OSes to run. Guest Operating System: OS running inside a virtual machine. Host Operating System: The primary OS that controls the physical hardware. API (Application Programming Interface): Set of definitions for building software components. VMI (Virtual Machine Interface): High‑speed communication channel between VMs and the host kernel. I/O MMU: Manages address translation for DMA operations. Device Pass‑Through: Directly assigns a physical device to a specific VM. Device Isolation: Ensures a device’s memory accesses affect only its assigned VM. IaaS (Infrastructure as a Service): Cloud model providing virtualized compute, storage, and networking. PaaS (Platform as a Service): Cloud model offering a platform for developing and running applications. SaaS (Software as a Service): Cloud‑delivered software accessed via a subscription model. Live Migration: Moving a running VM between physical hosts without downtime. Copy‑On‑Write (COW): Defers copying of shared resources until a write occurs, saving memory. Master‑Slave Model: Asymmetric control where a master coordinates one or more slaves. Distributed System: Multiple independent computers that appear as a single coherent system. LAN (Local Area Network): Network confined to a limited geographic area. WAN (Wide Area Network): Network spanning large geographic distances, connecting multiple LANs. Ethernet: Standard LAN technology defining physical and data‑link layers. Bridge: Device that connects two LAN segments at the data‑link layer. Host: Computer or device connected to a network, often providing services. Router: Device that forwards packets between different networks. Connection‑Oriented Service: Requires establishing a dedicated connection before data transfer (e.g., TCP). Connectionless Service: Sends packets without a prior connection (e.g., UDP). QoS (Quality of Service): Metrics describing the performance of a network service. Acknowledgement Packet: Signal confirming receipt of data. Request‑Reply Service: Basic communication pattern where a request is answered by a response. Protocol Stack: Layered set of protocols that together provide network communication. IP Address: Numerical identifier for a host on an IP network (IPv4 or IPv6). Hyperlink: Clickable reference that navigates to another document or location. Web Page: Document formatted for display in a web browser. Web Browser: Application used to retrieve and render web pages. Vulnerability: Security flaw that can be exploited. Exploit: Code that takes advantage of a vulnerability. Virus: Self‑replicating program that infects other software. CIA (Confidentiality, Integrity, Availability): Core principles of information security. Hacker (Cracker): Person who attempts unauthorized access to computer systems. Port Scan: Technique for probing a host to discover open network ports. Botnet: Network of compromised machines controlled by an attacker. Domain: Human‑readable name that maps to an IP address. Salt: Random data added to a password hash to improve security. Logic Bomb: Malicious code that triggers under specific conditions. Time Bomb: Code that activates or deactivates at a predetermined time. Login Spoofing: Fake login prompt used to steal credentials. Backdoor: Hidden method of bypassing normal authentication. Firewall: Security system that monitors and controls incoming and outgoing network traffic.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Liangxu Linux
Liangxu, a self‑taught IT professional now working as a Linux development engineer at a Fortune 500 multinational, shares extensive Linux knowledge—fundamentals, applications, tools, plus Git, databases, Raspberry Pi, etc. (Reply “Linux” to receive essential resources.)
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
