Content of this lecture
• The dark age (1945 – 55): no OS
• Batch systems (1955 – 65)
• Multiprogramming (1965 – 80)
• PC (and mobile) era (1980 – present)
The dark age
• ENIAC (1946): the first computer
• Only a single group of people designed and used it
Batch systems (1955-65)
• Background:
• At that time, computers are used only to “compute” (instead
of entertainments, etc.)
• Users write program using “punch card”
• Punch your program into cards
• Bring the cards to computer operators
• Come back after a day to get result
• Protection and virtualization are not needed!
• How to Allocate and Reclaim computation time?
• Sign-up sheet on the wall!
OS:
• Read the first job from the tape
• Run it
• Write the output to another tape
• Read the next job and repeat the process
• Similar to the “sign-up sheet on the wall”, only now this
process is automated
Multiprogramming (1965-80)
• Problems with Batch systems?
• Responsiveness
• Do you want to wait for a day just to find out your program doesn’t
compile?
• Multiple users cannot concurrently access the computer
• Efficiency
• CPU is idle while the computer is doing I/O
• Multiprogramming
• Multiple tasks are performed during the same period of time
• As if they are executed concurrently
• Now multiple users can use the same machine simultaneously
UNIX
• Written by Ken Thompson and Dennis Ritchie from
Bell Labs on PDP-11 (1971)
• Project started because Ken wanted to play the “Space
Travel” game without MULTICS
• Originally named as “Unics” by Brian Kernighan
• In 1973, Ritchie invented C programming language to
ease the development of Unix
Linux
• In 1991, Linus Torvalds, then a student of Univ. of
Helsinki, wanted to learn OS
• But at that time, no free, open-source OS is available
• Decided to write his own OS and “open-source” it
• Open-source is the key behind its popularity today