Getting Started

This Operating System tutorial will cover all the basic to advance operating system concepts like System Structure, CPU Scheduling, Deadlock, file and disk management, and many more.


Why Operating System

An Operating System(OS) is software that manages and handles the hardware and software resources of a computer system. It provides interaction between users of computers and computer hardware. An operating system is responsible for managing and controlling all the activities and sharing of computer resources. An operating system is a low-level Software that includes all the basic functions like processor management, memory management, Error detection, etc.

Recent Articles on Operating Systems













Basics :

System Structure :

CPU Scheduling :

Process Synchronization :

Deadlock :

Processes & Threads :

Memory Management :

  1. Memory Hierarchy Design and its Characteristics
  2. Introduction to memory and memory units
  3. Different Types of RAM (Random Access Memory)
  4. Buddy System: Memory allocation technique
  5. Memory Management | Partition Allocation Method
  6. Fixed (or static) Partitioning in Operating System
  7. Variable (or dynamic) Partitioning in Operating System
  8. Non-Contiguous Allocation in Operating System
  9. Logical vs Physical Address in Operating System
  10. Paging
  11. Requirements of memory management system
  12. Memory management – mapping virtual address to physical addresses
  13. Page Table Entries
  14. Virtual Memory
  15. Memory Interleaving
  16. Virtual Memory Questions
  17. Operating system based Virtualization
  18. Inverted Page Table
  19. Swap Space
  20. Page Fault Handling
  21. Fixed (or static) Partitioning in Operating System
  22. Segmentation
  23. Memory Segmentation in 8086 Microprocessor
  24. Program for Next Fit algorithm in Memory Management
  25. Overlays in Memory Management
  26. Page Replacement Algorithms
  27. Program for Page Replacement Algorithms | Set 1 ( LRU)
  28. Program for Optimal Page Replacement Algorithm
  29. LFU (Least Frequently Used) Cache Implementation
  30. Second Chance (or Clock) Page Replacement Policy
  31. Techniques to handle Thrashing
  32. Allocating kernel memory (buddy system and slab system)
  33. Program for buddy memory allocation scheme in Operating Systems | Set 1 (Allocation)
  34. Program for buddy memory allocation scheme in Operating Systems | Set 2 (Deallocation)
  35. Static and Dynamic Libraries | Set 1
  36. Working with Shared Libraries | Set 1
  37. Working with Shared Libraries | Set 2
  38. Named Pipe or FIFO with example C program
  39. Tracing memory usage in Linux

>> Quiz on Memory Management

Disk Management

Misc

  1. Introduction to UNIX System
  2. Important Linux Commands (leave, diff, cal, ncal, locate and ln)
  3. Process states and Transitions in a UNIX Process
  4. Introduction to Linux Shell and Shell Scripting
  5. ‘crontab’ in Linux with Examples
  6. indepth and maxdepth in Linux find() command for limiting search to a specific directory.

Types of Operating System

  • Batch OS (e.g. Transactions Process, Payroll System, etc.)
  • Multi-programmed OS(e.g. Windows, UNIX, macOS, etc.)
  • Timesharing OS(e.g. Multics, Linux, etc.)
  • Real-Time OS(e.g. PSOS, VRTX, etc.)
  • Distributed OS(e.g. LOCUS, Solaris, etc.)

Operating System Functions

  • Memory and processor Management
  • Network Management
  • Security Management
  • File Management
  • Error Detection
  • Job Accounting

Quick Links :


"Operating systems: the backstage magicians making sure your computer doesn't throw a tantrum, even when you do."

Reference books:

  • "Operating System Concepts" by Abraham Silberschatz, Greg Gagne, and Peter B. Galvin
  • "Modern Operating Systems" by Andrew S. Tanenbaum
  • "Operating Systems: Three Easy Pieces" by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau
  • "UNIX and Linux System Administration Handbook" by Evi Nemeth, Garth Snyder, Trent R. Hein, Ben Whaley, and Dan Mackin
  • "Windows Internals" by Pavel Yosifovich, Mark E. Russinovich, David A. Solomon, and Alex Ionescu