01Overview

Computers in the 1950s ran batch jobs: users handed in a stack of punched cards and collected the results hours later. In 1961 MIT’s CTSS connected several terminals to one machine so that each user felt they had it to themselves. That required the operating system to switch quickly between users and to protect their memory from each other.

In 1964 Multics pushed the idea further: hierarchical file systems, virtual memory, dynamic linking and a security model. Multics failed commercially, but its design directly shaped Unix. Time-sharing also changed the relationship between people and machines — computing turned from submitting a job into holding a conversation.

02History

  1. 1956

    GM-NAA I/O

    An early batch-processing operating system.

  2. 1961

    CTSS goes live

    The first time-sharing system.

  3. 1964

    Multics begins

    Hierarchical file systems and virtual memory.

  4. 1969

    Unix is born

    It grows out of the ruins of Multics.

03Core concepts

Batch processing

Jobs are queued and run one after another by a monitor.

Time-sharing

Round-robin time slices let several interactive users share the CPU.

Memory protection

One user’s program cannot read or write another’s memory.

04Hands-on

Do it once — it beats reading it ten times

Write a round-robin scheduler simulator with 3 processes and a 4-tick quantum, and plot their timelines

05Self-check

Say it in your own words first, then open the answer. Whatever you cannot explain is what to review next.

Can you explain "Batch processing"?

Jobs are queued and run one after another by a monitor.

Can you explain "Time-sharing"?

Round-robin time slices let several interactive users share the CPU.

Can you explain "Memory protection"?

One user’s program cannot read or write another’s memory.

What problem did it solve, and why was there nothing better at the time?

Go back to the history section: how was this done before, and what did it cost?

If you had to build it today, how would you break it down?

Use the hands-on task above: write a plan of at most three steps before you start.

06Key people

F

Fernando Corbató

1926 – 2019

Led CTSS and Multics.

D

Dennis Ritchie

1941 – 2011

Co-creator of Unix and C.

07Further reading

  • An Experimental Time-Sharing SystemCorbató et al. · 1962
  • Operating System ConceptsSilberschatz et al. · 1982