
Types of Operating Systems(Batch, Multiprogramming, Time Sharing, Multiprocessing, Real Time)
Jenny's Lectures CS IT
Overview
This video explains five fundamental types of operating systems: Batch, Multiprogramming, Multitasking (Time Sharing), Multiprocessing, and Real-Time. It details how each type evolved to improve CPU utilization and user interaction, moving from non-interactive batch processing to parallel execution in multiprocessing and strict timing in real-time systems. The explanations focus on the core mechanisms, advantages, and limitations of each OS type, providing a foundational understanding of their historical development and practical applications.
Save this permanently with flashcards, quizzes, and AI chat
Chapters
- Jobs (program + input data + control instructions) were prepared on punch cards.
- Users could not interact directly with the system; an operator managed job submission and batching.
- Jobs with similar characteristics were grouped into batches to improve efficiency.
- CPU utilization was low because of the time taken for manual loading/unloading of punch cards and operator intervention.
- Multiple programs reside in main memory simultaneously.
- When one program performs an I/O operation, the CPU is allocated to another ready program.
- This significantly increases CPU utilization compared to batch systems.
- A running program could not be forcefully removed from the CPU; it had to yield voluntarily (e.g., for I/O).
- An extension of multiprogramming that allows for preemption of CPU.
- Each process is allocated a small time slice (time quantum).
- The CPU rapidly switches between processes, creating the illusion of simultaneous execution.
- This provides a more interactive user experience and fairer resource allocation.
- Utilizes multiple CPUs within a single computer system.
- Allows multiple processes to execute truly in parallel, not just concurrently.
- Increases overall system throughput and reliability.
- Distinct from a multi-computer system, which involves multiple independent computers connected.
- Designed for applications with strict time constraints.
- Soft real-time systems aim to complete tasks within deadlines, tolerating occasional misses.
- Hard real-time systems require tasks to be completed at the exact specified time, with no tolerance for misses.
- Used in critical applications like missile launching, medical equipment, and industrial control.
Key takeaways
- Operating systems evolved from non-interactive batch processing to interactive multitasking and parallel processing to meet increasing demands for efficiency and responsiveness.
- CPU utilization is a key metric improved by each successive generation of operating system types.
- Multiprogramming and multitasking achieve concurrency by switching between processes, while multiprocessing achieves true parallelism using multiple CPUs.
- Time-sharing (multitasking) creates the illusion of simultaneous execution through rapid context switching based on time quanta.
- Real-time operating systems prioritize meeting strict timing deadlines, with hard real-time systems being critical for safety and reliability.
- Understanding the differences between these OS types is crucial for selecting the appropriate system for specific computational needs.
Key terms
Test your understanding
- What was the primary limitation of batch operating systems that led to the development of multiprogramming?
- How does multiprogramming improve CPU utilization compared to batch processing?
- Explain the difference between multiprogramming and multitasking in terms of process preemption.
- What is the fundamental difference between multiprocessing and multitasking?
- Why are real-time operating systems critical for applications like medical devices or aerospace control?