An Operating System(OS) is a software that manages and handles hardware and
software resources of a computing device.
Manages computer resources such as CPU, memory, and files
Acts as an interface between user and hardware
Performs core functions like process, memory, and file management
Organizes system resources similar to different departments in a government
Examples include Linux, Unix, Windows 11, MS-DOS, Android, macOS, and iOS
Basics
This section introduces the fundamentals of operating systems.
1. Introduction
2. Types of OS
3. Kernel in OS
4. System Call
5. System Initialization
Process Scheduling
Focuses on process management and scheduling in operating systems.
1. Process Introduction
2. Process Control Block
3. Process Table
4. Process Management Introduction
5. Process States
6. Process Scheduler
7. CPU Scheduling Algorithms
8. Preemptive vs Non-Preemptive
9. Dispatcher vs scheduler
[Link] and Aging
Quiz: CPU Scheduling
Process Synchronization
Covers synchronization and IPC concepts.
1. Inter Process Communication
2. Process Synchronization
3. Race Condition
4. Critical Section
5. Solutions to Process Synchronization Problems
6. Peterson’s Algorithm
7. Dekker’s algorithm
8. Bakery Algorithm
9. Hardware Based Solutions
[Link]
[Link] vs. Semaphore
[Link]
[Link] Inversion
[Link] IPC Problems
Quiz: Process Synchronization in OS
Deadlock
Explains deadlock in operating systems.
1. Introduction
2. Deadlock Handling
3. Deadlock Prevention
4. Banker’s Algorithm for Deadlock Avoidance
5. Detection And Recovery
6. Starvation, and Livelock
7. Resource Allocation Graph (RAG)
8. Methods of resource allocation
9. Program for Deadlock free condition
Quiz: Deadlock
Multithreading
Focuses on multithreading concepts in operating systems.
1. Operating System | Thread
2. User Level Vs Kernel Level threads
3. Process-based and Thread-based Multitasking
4. Multi threading models
5. Benefits of Multithreading
Quiz: Multithreading
Memory Management
Introduces the fundamentals of memory management in operating systems.
1. Basics
Introduction to memory and memory units
Memory Management in Operating System
Logical and Physical Address in Operating System
2. Contiguous Allocation
Implementation of Contiguous Memory Management
Internal Fragmentation
External Fragmentation
Program for Next Fit algorithm in Memory Management
Buddy System: Memory allocation technique
3. Non-Contiguous Allocation
Non-Contiguous Allocation in Operating System
Paging
Page Table Entries in Page Table
Segmentation
Segmentation with Paging
4. Advanced Memory Concepts
Overlays in Memory Management
Virtual Memory
Demand Paging
Page Fault Handling
Swap Space
5. Page Replacement & Thrashing
Page Replacement Algorithms
Belady’s Anomaly
Second Chance (or Clock) Page Replacement Policy
Techniques to handle Thrashing
Working Set in Paging
6. Kernel & System-Level Concepts
Allocating kernel memory (buddy system and slab system)
Memory Interleaving
Operating system based Virtualization
Quiz: Memory Management
Disk Management
Explains disk and file management in operating systems.
1. File Systems
2. Unix File System
3. File Directory | Path Name
4. Structures of Directory
5. File Allocation Methods
6. File Access Methods
7. Secondary memory
8. Secondary memory – Hard disk drive
9. Disk Scheduling Algorithms
[Link] for SSTF disk scheduling algorithm
[Link] exactly Spooling is all about?
[Link] vs Buffering
[Link] space management
Introduction to memory and memory units
Last Updated : 30 Oct, 2025
Memory is an essential component of a computer system, responsible for
storing data and instructions needed for processing. It enables the CPU
to execute programs efficiently and ensures smooth system operation.
Memory Cell: Smallest unit storing 1 bit of data with a unique
address.
Word & Byte: A word is a group of bits; 1 byte = 8 bits.
Capacity: Total number of bits a memory can hold.
Classification of Memory
Memory is classified into primary and secondary types based on speed,
accessibility, and volatility.
Primary Memory: Directly accessible by the CPU; fast but limited in
capacity.
Secondary Memory: Used for long-term storage; slower but larger in
capacity.
RAM (Random Access Memory)
RAM is the computer’s main memory used for temporary storage of
active programs and data. Data is lost when power is off. It provides fast
CPU access, improving multitasking and performance.
Types of RAM
SRAM (Static RAM): Fast, used in cache, retains data while powered.
DRAM (Dynamic RAM): Slower, needs periodic refresh; main
memory. Includes SDRAM and DDR series.
Read more about this topic: Random Access Memory (RAM)
ROM (Read-Only Memory)
ROM is non-volatile memory that stores essential instructions
permanently. It holds system firmware and boot instructions.
Types of ROM
Following are types of ROM:
MROM: Pre-programmed at manufacture
PROM: User-programmable once
EPROM: UV-erasable
EEPROM: Electrically erasable
Flash Memory: Fast, used in SSDs and USB drives
Read more about this topic: Read Only Memory (ROM)
Secondary Memory
Secondary memory provides long-term data storage and is not directly
accessed by the CPU.
Examples: HDD, SSD, optical discs (CD/DVD/Blu-ray), USB drives, flash
cards, magnetic tapes, cloud storage.
Characteristics: Non-volatile, slower, high capacity, used for storing
operating systems, software, and user files.
Read more about this topic: Secondary Memory
Differences Among RAM, ROM, and Secondary
Memory
Following table shows major difference among three memory types:
RAM ROM Secondary Memory
Volatile Non-volatile Non-volatile
Temporary workspace Permanent instructions Long-term storage
Fast Moderate Slow
Read/Write Mostly Read-only Read/Write
DRAM, SRAM PROM, EPROM, EEPROM HDD, SSD, USB
Conversions of Units
The following table shows the standard conversions between different
units of digital memory:
Name Equal To
Bit 1 Bit
Nibble 4 Bits
Byte 8 Bits
Kilobyte 1024 Bytes
Megabyte 1024 Kilobytes
Gigabyte 1024 Megabytes
Name Equal To
Terabyte 1024 Gigabytes
Petabyte 1024 Terabytes
Exabyte 1024 Petabytes
Zettabyte 1024 Exabytes
Yottabyte 1024 Zettabytes