Fundamentals 25 min read

Fundamental Concepts of Operating Systems and Computer Architecture

This article provides a comprehensive overview of operating system fundamentals and computer architecture, covering topics such as OS components, kernel and user modes, memory management, process handling, hardware interfaces, storage hierarchies, virtualization, and related historical and modern systems in roughly eighty concise entries.

Full-Stack Internet Architecture
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Fundamental Concepts of Operating Systems and Computer Architecture

Operating System (OS) : Manages computer hardware and software resources, handling memory allocation, process scheduling, I/O control, file systems, and providing user interfaces.

Shell : A program that receives commands from the keyboard and passes them to the OS for execution; historically the primary user interface on Unix-like systems.

GUI (Graphical User Interface) : Allows users to interact with the system via graphical icons and visual indicators instead of text commands.

Kernel mode (supervisor mode) : Executes with unrestricted access to hardware, enabling privileged instructions and direct memory access; failures in this mode can crash the entire system.

User mode : Runs regular applications with limited privileges; transitions to kernel mode occur via system calls or interrupts.

Computer architecture : Defines the functional organization of a computer system, including instruction set, memory management, I/O, and bus structures.

SATA (Serial ATA) : A bus standard for data transfer between the motherboard and storage devices such as hard drives and optical drives.

Multiplexing : Shares limited resources (time or space) among multiple programs or users, allowing them to use the resource in turn.

Mainframe : Large, high‑capacity computers known for reliability and used by enterprises for critical data processing.

Batch system : Executes jobs submitted on offline media without direct user interaction, grouping similar tasks for efficiency.

OS/360 : IBM’s historic batch operating system for the System/360 mainframe, now discontinued.

Multitasking : Enables a computer to run multiple programs concurrently by interleaving execution slices.

Time‑sharing : Allows many users to share a computer simultaneously by rapidly switching between tasks.

Compatible Time‑Sharing System (CTSS) : One of the earliest time‑sharing operating systems, developed at MIT.

Cloud computing : Provides on‑demand access to computing resources (storage, processing) over the Internet without direct management by the user.

UNIX : A powerful, multi‑user, multi‑tasking OS supporting many processor architectures.

UNIX System V : A major UNIX variant that introduced many standard system interfaces.

BSD (Berkeley Software Distribution) : A Unix‑derived operating system family.

POSIX : A set of standards defining portable OS interfaces for Unix‑like systems.

MINIX : A minimal Unix‑like OS used for educational purposes.

Linux : A widely used, open‑source Unix‑like operating system kernel.

DOS (Disk Operating System) : Early operating systems that manage disk storage and provide basic file handling.

MS‑DOS : Microsoft’s dominant DOS variant for IBM‑compatible PCs before Windows.

macOS X : Apple’s graphical operating system for Macintosh computers.

Windows NT : Microsoft’s 32‑bit, fully preemptive kernel architecture.

Service Pack (SP) : A collection of updates, fixes, and enhancements distributed as a single installable package.

DRM (Digital Rights Management) : Technologies that restrict the use and distribution of copyrighted content.

x86 : An instruction‑set architecture originally developed by Intel, supporting 16‑, 32‑, and 64‑bit extensions.

FreeBSD : An open‑source Unix‑like operating system derived from BSD.

X Window System : A network‑transparent windowing system for bitmap displays on Unix‑like OSes.

GNOME : A free desktop environment built on top of the X Window System.

Network Operating System (NOS) : Specialized OSes for network devices such as routers and switches.

Distributed Operating System : Software that makes a collection of independent computers appear as a single coherent system.

Program Counter : A CPU register that holds the address of the next instruction to execute.

Stack Pointer : A register that points to the top of the current call stack.

Program Status Word (PSW) : Holds the current state of the processor, including condition codes and interrupt flags.

Pipeline : A technique where multiple instruction processing stages operate in parallel, improving throughput.

Superscalar : CPU architecture that can issue multiple instructions per clock cycle.

System Call : An interface that allows user‑mode programs to request services from the kernel.

Multithreading : Executes multiple threads of execution concurrently within a single process.

CPU Core : An independent processing unit within a CPU that can execute instructions.

GPU (Graphics Processing Unit) : A specialized processor for handling graphics and parallel compute workloads.

Cache hierarchy : Includes L1, L2, and L3 caches that store frequently accessed data to reduce memory latency.

RAM (Random Access Memory) : Volatile main memory used for temporary storage of program data and instructions.

ROM (Read‑Only Memory) : Non‑volatile memory that retains data without power, typically used for firmware.

EEPROM : Electrically erasable programmable read‑only memory that can be rewritten multiple times.

Flash memory : Non‑volatile storage used in SSDs, USB drives, and memory cards.

SSD (Solid State Drive) : Storage device that uses flash memory for fast, durable data access.

Virtual memory : An abstraction that gives processes the illusion of a large, contiguous address space, backed by physical RAM and disk storage.

MMU (Memory Management Unit) : Hardware that translates virtual addresses to physical addresses and enforces protection.

Context switch : Saves the state of a running process and restores the state of another, enabling multitasking.

Device driver : Software that mediates communication between the OS and hardware devices.

Busy waiting (spin) : A technique where a process repeatedly checks a condition, consuming CPU cycles.

Interrupt : An asynchronous signal that causes the CPU to pause current execution and handle an event.

Interrupt vector : A table that maps interrupt requests to their corresponding handler addresses.

DMA (Direct Memory Access) : Allows hardware subsystems to transfer data directly to/from memory without CPU intervention.

Bus : A communication system that transfers data between components inside a computer.

PCIe (Peripheral Component Interconnect Express) : A high‑speed serial expansion bus standard.

DMI (Direct Media Interface) : Intel’s proprietary bus linking the northbridge and southbridge on a motherboard.

USB (Universal Serial Bus) : A widely adopted serial bus for connecting peripherals.

BIOS (Basic Input/Output System) : Firmware that initializes hardware during boot and provides low‑level services to the OS.

Hard real‑time system : Guarantees that critical tasks meet strict deadlines.

Soft real‑time system : Allows occasional deadline misses with degraded performance.

Process : An executing instance of a program, containing its own memory space and resources.

Address space : The range of memory addresses a process can use.

Process table : Kernel data structure that tracks all active processes and their attributes.

Command‑line interpreter : A text‑based interface for entering commands, preceding modern GUIs.

Directory : A container that holds files and sub‑directories.

Path name : A string that uniquely identifies the location of a file or directory.

Root directory : The top‑most directory in a file system hierarchy.

Working directory : The current directory in which a user or process operates.

File descriptor : An abstract handle used by programs to access files or I/O resources.

Inode : A data structure in Unix‑like file systems that stores metadata about a file.

Shared library : A library that can be loaded by multiple programs at runtime.

DLL (Dynamic‑Link Library) : Windows’ implementation of shared libraries.

Client and Server : Roles in a client‑server architecture where clients request services from servers.

Client‑server (C/S) architecture : A network model separating requestors (clients) from providers (servers).

Virtual Machine (VM) : Software that emulates a complete hardware environment, allowing multiple OS instances on a single physical machine.

JVM (Java Virtual Machine) : Executes Java bytecode on any platform by abstracting underlying hardware.

Object file : Contains compiled machine code that is not yet linked into an executable.

C preprocessor : Performs macro expansion, file inclusion, and conditional compilation before C/C++ compilation.

Memory ManagementKernelOperating SystemProcessVirtual MachineInterruptComputer Architecture
Full-Stack Internet Architecture
Written by

Full-Stack Internet Architecture

Introducing full-stack Internet architecture technologies centered on Java

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.