Siksha Sarovar

Siksha Sarovar (sikshasarovar.com) is a free educational web application that helps students in India learn programming and prepare for academic and competitive exams. The platform offers structured coding courses (C, C++, Python, Java, HTML, CSS, PHP, Power BI, AI, Machine Learning, Data Science), complete university curriculum notes for BCA/MCA students with previous year question papers, Class 10 and Class 12 CBSE/HBSE school notes, and dedicated preparation material for SSC, UPSC, Banking, Railway and other government exams. Browsing the site is completely free and requires no account. Users may optionally sign in with Google solely to save their learning progress, quiz scores and personal preferences across devices.

Privacy Policy | Terms of Service | Contact Siksha Sarovar | About Siksha Sarovar

v4.0.9 · PWA
Siksha Sarovar logo
Siksha Sarovar
Your Learning Universe

Siksha Sarovar is a free e-learning platform for coding courses, BCA university notes and competitive exam preparation. Optional Google sign-in saves your learning progress across devices.

Initializing knowledge base…
Compiling modules 0%

Types of Operating Systems

Lesson 3 of 31 in the free Operating System & Linux Programming notes on Siksha Sarovar, written by Rohit Jangra.

A Family of Operating Systems

Operating systems have evolved alongside hardware. Each generation solved a problem of the previous one.

1. Simple Batch Systems

Jobs with similar requirements were grouped into a batch and submitted to the operator. A resident monitor loaded one job at a time. The CPU sat idle while a job did I/O — utilization was poor.

2. Multi-programmed Batch Systems

Several jobs were kept in memory at once. When one job waited for I/O, the OS picked another ready job to run, keeping the CPU busy. Required: memory management, CPU scheduling and job protection.

3. Time-Sharing (Multitasking) Systems

Each user gets a small time slice of the CPU in rapid rotation, giving the illusion of a dedicated machine. Response time is the key metric. Examples: UNIX, Linux, Windows. Requires: virtual memory, swapping, file system, on-line interactive interface.

4. Personal Computer Systems

Single-user, originally single-tasking systems built around microprocessors (Apple II, MS-DOS, early Windows). Goal: convenience and responsiveness, not utilization.

5. Parallel Systems

Multiple CPUs that share memory, bus and clock — also called tightly coupled or multiprocessor systems.

  • Symmetric Multiprocessing (SMP): every CPU runs an identical copy of the OS and any task. Modern Linux on multi-core boxes.
  • Asymmetric Multiprocessing (AMP): one master CPU schedules work for slave CPUs.

6. Distributed Systems

Loosely coupled — each node has its own memory and CPU, communicating over a network. Goals: resource sharing, computation speed-up, reliability and communication. Examples: clusters, the cloud, peer-to-peer systems.

7. Real-Time Systems

Correctness depends not only on the result but also on the time at which it is produced.

  • Hard real-time: missing a deadline is catastrophic (anti-lock brakes, pacemakers).
  • Soft real-time: missed deadlines degrade quality but are tolerable (video streaming).

Comparison Table

TypeUsersGoalExample
BatchMany (offline)ThroughputOld IBM mainframes
MultiprogrammedManyCPU utilizationOS/360
Time-sharingMany concurrentResponse timeUNIX, Linux
PCOneConvenienceWindows XP
ParallelManySpeed-upLinux on 64-core
DistributedMany across nodesResource sharingHadoop cluster
Real-timeDedicatedDeadlineRTLinux, VxWorks

Summary

Each OS type optimizes for a different metric — throughput, response time, deadline guarantee, or convenience. Modern OSs blend several: Linux is simultaneously time-sharing, parallel (SMP) and soft real-time capable.