1/46
Vocabulary practice flashcards covering fundamental concepts, architecture, process scheduling, memory, file systems, administration, and security for Operating Systems (DIT 0103).
Operating System (OS)
System software that acts as an intermediary between computer hardware and the user/application programs, managing hardware resources and providing a stable environment for applications.
Batch Systems
Systems from the 1950s where jobs were collected and executed in groups without direct user interaction, historically fed by operators using punch cards.
Multiprogramming
A technique developed in the 1960s where multiple jobs are kept in memory simultaneously, allowing the CPU to switch between them to maximize utilization.
Time-sharing
An operating system model where CPU time is divided among multiple users in real time, giving the illusion of simultaneous access across interactive terminals.
Multitasking
The execution of multiple tasks or processes seemingly at the same time on a single CPU.
Multiprocessing
The use of two or more CPUs or cores to execute multiple processes simultaneously.
Distributed OS
An operating system that manages a group of independent computers and presents them as a single system over a network, such as in cluster computing.
Network OS (NOS)
An operating system that manages network resources and provides services such as file and printer sharing (e.g., Windows Server, Novell NetWare).
Kernel
The core component of the operating system that possesses complete control over the system, managing CPU scheduling, memory, and devices.
Monolithic Kernel
A kernel architecture where all operating system services run in kernel space as a single large, fast program.
Microkernel
A kernel architecture where only essential services like IPC and basic scheduling run in kernel space, while all other services run in user space for increased stability and security.
Hybrid Kernel
A kernel architecture that combines the execution speed of a monolithic kernel with the modularity of a microkernel (e.g., Windows NT, macOS XNU).
Kernel Mode (Supervisor Mode)
A privileged CPU execution mode with unrestricted access to hardware and memory where the kernel and drivers run.
User Mode
A restricted execution mode where applications run without direct hardware access, preventing program crashes from bringing down the entire OS.
System Call
The programming interface through which a user-mode application requests a service directly from the kernel.
Device Driver
Specialized software, typically running in kernel mode, that translates generic operating system commands into device-specific instructions.
BIOS (Basic Input/Output System)
Legacy motherboard firmware that operates in 16-bit mode, uses the Master Boot Record (MBR) partitioning scheme, and is limited to disks up to 2TB.
UEFI (Unified Extensible Firmware Interface)
Modern firmware replacing BIOS that supports GPT partitioning, disks larger than 2TB, faster booting, Secure Boot, and a graphical pre-boot interface.
Boot Loader
A small program (such as GRUB or Windows Boot Manager) that loads the operating system kernel into memory after firmware hands off control.
Shell
The user-facing interface that interprets user commands and passes them to the operating system kernel.
Process
A program in execution that possesses its own dedicated memory space, program counter, and system resources.
Thread
The smallest unit of execution within a process that shares the parent process's memory space while executing concurrently.
First-Come, First-Served (FCFS)
A simple scheduling algorithm where processes run in order of arrival, which can cause long wait times due to the convoy effect.
Shortest Job First (SJF)
A scheduling algorithm that selects the process with the smallest execution time next, minimizing average waiting time but requiring execution time prediction.
Round Robin (RR)
A fair scheduling algorithm designed for time-sharing systems where each process receives a fixed time slice (quantum) in rotation.
Priority Scheduling
A scheduling algorithm where processes run based on assigned priority rankings, carrying a risk of starvation for low-priority processes.
Context Switching
The procedure of saving the state of a currently executing process and loading the state of another so the CPU can transition between tasks.
Deadlock
A condition occurring when two or more processes are blocked indefinitely because each is holding a resource while waiting for another held by another process.
Coffman Conditions
The four necessary conditions for a deadlock: mutual exclusion, hold and wait, no preemption, and circular wait.
Semaphore
A signaling mechanism used in process synchronization to control concurrent access to shared system resources.
Mutex
A mutual exclusion locking mechanism that ensures only one thread or process can access a critical section at any given time.
Virtual Memory
A memory management technique that extends physical RAM using secondary disk storage, providing each process with its own virtual address space via page tables.
Paging
A memory allocation scheme that divides virtual memory into fixed-size blocks called pages and physical RAM into equally sized blocks called frames to eliminate external fragmentation.
Page Fault
An exception raised when a running program accesses a memory page that is not currently loaded into physical RAM and must be retrieved from disk.
Segmentation
A memory management technique that divides a program into variable-sized logical units (such as code, data, and stack), which can result in external fragmentation.
Thrashing
A pathological state where an operating system spends more time swapping data between RAM and disk than executing instructions due to excessive memory demand.
FAT32
A simple, widely compatible file system that lacks file permissions and journaling, with a maximum file size limit of 4GB.
NTFS
A Windows file system that supports large files, permissions, compression, encryption, and crash recovery via journaling.
Mounting
The process of attaching a storage device's file system to a specific directory path (mount point) to make its contents accessible within the directory tree.
RAID 0 (Striping)
A RAID configuration that divides data across multiple disks to improve performance, offering no redundancy or fault tolerance.
RAID 1 (Mirroring)
A RAID configuration that duplicates data across two or more disks to provide redundancy without increasing overall storage capacity.
RAID 5 (Striping with parity)
A RAID configuration that distributes data and parity information across three or more disks (≥3), providing fault tolerance against a single disk failure.
Windows Registry
A centralized, hierarchical database used in Windows to store low-level system configuration parameters, hardware preferences, and application settings.
systemd
A service and system manager widely used in modern Linux distributions, controlled via the systemctl command to manage service states and boot targets.
Discretionary Access Control (DAC)
An access control framework where resource owners have the authority to define access rights and permissions for their files.
Mandatory Access Control (MAC)
A strict access control mechanism where access permissions are dictated by centralized system policies that individual users cannot override.
3-2-1 Rule
A standard backup methodology recommending that data be maintained in 3 total copies, across 2 different storage media types, with at least 1 copy kept offsite.