operating-systems

Definition

Operating System

An Operating System (OS) is a system software that acts as an intermediary between the user of a computer and the computer hardware. It allows for the execution of a program by abstracting the underlying machine architecture.

The OS has two primary functions:

  1. Extended Machine: It provides abstractions (processes, files, address spaces) that hide the complexity of the hardware.
  2. Resource Manager: It controls the allocation of processors, memories, and I/O devices among competing programs.

The OS Illusion

The OS creates the illusion that a program has exclusive access to the hardware (infinite memory, dedicated processor) by multiplexing resources in time (scheduling) and space (virtual memory).

History

Serial Processing (1950s)

Direct interaction with hardware without an operating system.

  • Input: Console switches, punch cards.
  • Scheduling: High setup time; users booked physical time slots.

The Monitor (1960s)

Introduction of the Batch System.

  • Mechanism: A resident monitor automatically loads the next job after the current one finishes.
  • Control: Users submitted jobs with Job Control Language (JCL).

Multiprogramming (1965)

Parallelizing CPU and I/O to improve utilization.

  • Concept: While one job waits for I/O, another job utilizes the CPU.
  • Requirement: Multiple jobs must reside in memory simultaneously.

Time-Sharing (1970s)

Interactive Multiprogramming.

  • Mechanism: Rapid context switching between users.
  • Goal: Minimize response time to provide the illusion of a personal workspace.