Types of Operating Systems (Batch, Time-Sharing, Distributed)
- Process Management
- Memory Management
- Deadlocks
- OS Introduction & Fundamentals
- CPU Scheduling Algorithms
- Threads & Concurrency
- Inter-Process Communication (IPC)
- Process Synchronization
- Virtual Memory & Paging
- File Systems
- Disk Scheduling
- I/O Management
Batch Systems: No Interaction, Just a Queue of Jobs
Early batch systems ran a queue of jobs one after another with no user interaction during execution at all - a job (like a payroll calculation) was submitted, ran to completion, and its output was collected afterward, entirely without anyone present to interact with it while it ran.
Time-Sharing Systems: The CPU Rapidly Switches Between Users
CPU time: [User A][User B][User C][User A][User B][User C]...
(each slice is so brief, every user feels like they have the CPU to themselves)Time-sharing systems rapidly switch the CPU between multiple users' tasks, giving each one a brief slice of time. Switches happen quickly enough that each user experiences the illusion of having the computer entirely to themselves - the foundational idea behind CPU scheduling, covered in detail later in this section.
Distributed Systems: Many Computers, One Logical System
A distributed operating system coordinates multiple physically separate computers so they can work together and appear, to users and applications, as one single unified system - a much deeper topic covered in its own dedicated part of this section.
Real-Time Systems: Correctness Depends on Timing
A real-time operating system must respond to certain events within a strict, guaranteed time limit - not just eventually, but within a specific deadline, since being late can be as serious a failure as being wrong. Also covered in much greater depth in its own dedicated part of this section.
Quick Comparison
| Type | Interaction | Typical use |
|---|---|---|
| Batch | None during execution | Large, non-interactive jobs like payroll processing |
| Time-sharing | Many simultaneous interactive users | General-purpose desktop and server computing |
| Distributed | Varies | Coordinating many machines as one logical system |
| Real-time | Varies | Systems with strict timing guarantees, like industrial control |
Why Modern Systems Blend These Categories
Most operating systems in active use today aren't a pure single type - a modern desktop OS is fundamentally time-sharing, but also runs background batch-like tasks, and increasingly coordinates with distributed cloud services, blending these categories rather than fitting neatly into just one.