Operating Systems
Learn about processes, threads, memory management, scheduling, and kernel internals.
Boot Process
Read →Understand the operating system boot process: BIOS/UEFI, bootloader, kernel initialization.
Caching in OS (L1/L2/L3)
Read →Understand CPU cache hierarchy: L1, L2, L3 caches and cache coherence.
Containers vs VMs (Namespaces, Cgroups)
Read →Compare containers and VMs: namespaces, cgroups, and virtualization technologies. Understand isolation, resource management, and when to use each.
Context Switching
Read →Understand how the OS switches between processes: saving and restoring CPU state, PCB (Process Control Block), and performance implications.
Deadlock (Conditions, Prevention)
Read →Understand deadlock conditions (mutual exclusion, hold and wait, no preemption, circular wait) and prevention strategies.
Disk Scheduling (SCAN, C-SCAN)
Read →Master disk scheduling algorithms: SCAN, C-SCAN, FCFS, SSTF for optimizing disk I/O.
DMA (Direct Memory Access)
Read →Learn DMA: allows devices to access memory directly without CPU intervention.
File Systems (EXT4, NTFS, FAT32)
Read →Compare file systems: EXT4 (Linux), NTFS (Windows), FAT32 and their characteristics, features, and use cases.
Inodes
Read →Learn inodes: data structures that store file metadata in Unix/Linux file systems.
Interrupts & Traps
Read →Understand interrupts (hardware events) and traps (software exceptions) in operating systems.
I/O Management
Read →Learn I/O management: device drivers, I/O scheduling, and interrupt handling.
Kernel Mode vs User Mode
Read →Learn CPU privilege levels: kernel mode (privileged) vs user mode (restricted) for security.
Linux Basic Commands
Read →Learn essential Linux commands: file operations, process management, networking, and system info.
Memory Management
Read →Learn how operating systems manage memory: allocation, deallocation, protection, virtual memory, and memory hierarchy.
Networking Stack in OS (Socket APIs)
Read →Understand the networking stack in OS: socket APIs, TCP/IP implementation, and network layers.
OS Architecture (Monolithic vs Microkernel)
Read →Compare monolithic and microkernel operating system architectures and their trade-offs.
Page Faults & Page Replacement Algorithms
Read →Learn page faults and replacement algorithms: LRU, FIFO, Optimal for virtual memory management and efficient page swapping.
Paging & Segmentation
Read →Master memory management techniques: paging (fixed-size) and segmentation (variable-size), their advantages, disadvantages, and when to use each.
PCB (Process Control Block)
Read →Learn Process Control Block structure that stores process state and context information for process management and context switching.
Process vs Thread
Read →Understand the fundamental differences between processes and threads: isolation, memory sharing, context switching, and when to use each.
Scheduling Algorithms (RR, FCFS, SJF, Priority)
Read →Master CPU scheduling algorithms: Round Robin (RR), First Come First Served (FCFS), Shortest Job First (SJF), and Priority scheduling. Understand their characteristics, advantages, and disadvantages.
Shared Memory vs Message Passing
Read →Compare inter-process communication: shared memory (fast) vs message passing (safe).
Shell vs Kernel
Read →Understand the difference between shell (user interface) and kernel (core OS).
Signals
Read →Learn Unix signals: software interrupts for inter-process communication and control.
Synchronization (Mutex, Semaphore)
Read →Learn synchronization primitives: mutexes and semaphores for thread synchronization, preventing race conditions, and coordinating access to shared resources.
System Calls
Read →Understand system calls: interface between user programs and the operating system kernel.
Threads Models (1:1, N:1, M:N)
Read →Compare thread models: 1:1 (kernel threads), N:1 (user threads), M:N (hybrid).
Virtual Memory
Read →Understand virtual memory: how operating systems provide larger address space than physical memory using paging, swapping, and address translation.