Operating Systems: An Introduction to Their History, Roles, and Importance, Slides of Computer Numerical Control

An overview of operating systems, their history, roles, and importance. Discussions on the functions of an operating system, its evolution, and why it is essential to study. It also covers different roles of an operating system, such as a police state and a welfare state, and their techniques.

Typology: Slides

2010/2011

Uploaded on 10/08/2011

christina
christina 🇺🇸

4.6

(23)

393 documents

1 / 8

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Operating Systems
Arvind Krishnamurthy
Spring 2004
Today’s lecture
nWhat is an operating system?
nHistory of operating systems
nCourse overview
ncourse information
nschedule, assignments, grading and policy
nother organization issues
nsee web pages for more information
nWhy study operating systems?
pf3
pf4
pf5
pf8

Partial preview of the text

Download Operating Systems: An Introduction to Their History, Roles, and Importance and more Slides Computer Numerical Control in PDF only on Docsity!

Operating Systems

Arvind Krishnamurthy

Spring 2004

Today’s lecture

n What is an operating system?

n History of operating systems

n Course overview

n course information n schedule, assignments, grading and policy n other organization issues n see web pages for more information

n Why study operating systems?

Discussion

n What is an operating system?

n A program that acts as an intermediary between users and the hardware

n What is an operating system supposed to do?

n What tasks do we expect an OS to perform? n What needs to be part of an OS?

n Is “emacs” an operating system?

n Is “windows 3.x/DOS” an operating system?

n Should shell/x-windows be part of an OS?

Imagine this…

n You have the raw hardware (processor with memory, disk,

network, etc.)

n Take a program which looks like:

n What could go wrong?

int array[SIZE];

main() { int sum = 0, i = 0;

while (i < count) { sum += array[f(i)]; i += g(i); } }

OS History: Change

1981 2003 factor

CPU MHz 1 3000 3000

DRAM capacity 128KB 1GB 8000

Disk capacity 10MB 400GB 40000

Net bandwidth 10Kb/s 155Mb/s 15000

# address bits 16 64 4

# users/machine >10 <=1 0.

Price $25K $2K 12

History Phase 1

n Hardware expensive, humans cheap

n When computers cost millions of $s, optimize for more efficient use of the hardware

n One user at a time. OS as subroutine library (referred to

as “batch monitor”)

n Batch monitor (which is preloaded in memory) repeats:

n compile program input as punched card n load binary to some fixed location in memory n run for predefined duration, print results

n What are the problems associated with this approach?

Memory Protection, Relocation

n Next step enabled by: n Memory protection: prevent users from interfering with each other/OS n Relocation: load program at any memory location, execute

n Multiprogramming: several programs run at the same time

n Small jobs not delayed by large jobs n Overlap between I/O and CPU n OS requests I/O, goes back to a different job, waits for interrupt

n Bad news: OS must manage all these; each step logical, but gets complicated at some point

n Multics: announced in 1963, ran in 1969

n OS 360 released with 1000 bugs

n Unix based on Multics, but simplified to get it to work!

The Unix Story

n Bell Labs was one of the players in Multics

n Ken Thompson was working on a “Space Travel” game program; ran on a GE 635 m/c at a cost of $75 in CPU time; started porting it to an unused PDP-7 in 1969 n Developed a small file system, ported the assembler, developed useful utilities (file copy, etc.) n Ritchie developed C language, Ken ported Unix to C n Developed shell, bunch of composable tools n Went to Berkeley, taught a course, and the rest is history

n Implementation details: n PDP-11/ n 16-bit word, 144KB of core memory n 1MB disk, four 2.5MB removable disks n Unix occupies: 42KB (“very large number of device drivers and enjoys a generous allotment of space for I/O buffers”)

Course Information

Textbooks: Applied Operating System Concepts by SGG (recommended but not required)

Readings consist of:

n Technical papers (about 10-15; supplements class discussion: no reviews required) n Advanced papers (about 10-15): turn in reviews before lecture n Background readings

Official URL: http://zoo.cs.yale.edu/classes/cs

[http://lambda.cs.yale.edu/cs422]

For help, send email to instructor/TA.

Why study operating systems?

n Abstraction:

n Unlimited processing power, infinite storage, single entity

n System Design:

n Tradeoffs between performance and functionality, division of labor between HW and SW

n Understand how computers work:

n Combine language, hardware, data structures, algorithms

n Give you experience in hacking systems software

“can I add some new functionality to an existing system?” “this system is so slow, can I do anything about it?”

Course Map

n Broad outline of the course:

n Threads and concurrency n Next two weeks n Virtual Memory n File Systems n Networks n Security

n Wednesday: introduction to threads & processes