• No results found

Operating Systems CMPSCI 377 Introduction

N/A
N/A
Protected

Academic year: 2022

Share "Operating Systems CMPSCI 377 Introduction"

Copied!
35
0
0

Loading.... (view fulltext now)

Full text

(1)

Operating Systems CMPSCI 377

Introduction

Emery Berger

University of Massachusetts Amherst

Introduction

(2)

Today’s Class

 Organizational meeting

 Course organization & outline

 Policies

 Prerequisites & course sign-up

 Intro to (operating) systems

(3)

Organizational Information

 Course web page

 Visit www.cs.umass.edu/~emery

 Contact info

 [email protected]

 Office hours Th 4-5, CS344

 Office hours Th 4-5, CS344

 TA’s:

 Devesh Agrawal ([email protected])



Office hours: Friday 1-2pm

 Walker Duhon (wduhon@cs)

 Discussion section:

(4)

Class Information

 Class: junior or senior-level

 Not intended for freshman or sophomores

 Prerequisites

 CMPSCI 187 (Data Structures) CMPSCI 201 (Architecture)

 CMPSCI 201 (Architecture)

 Enrollment policy

 Graduating seniors have preference

 Principles of Computer System Design

 Required text

 Available at CopyCat: course packet 234

(5)

Course Requirements

Note: Percentages are subject to revision.

 Class participation: 10%

 Includes credit-only in-class work

 & scribing class notes (starting next lecture)

 Programming projects: 40%

 Strict late policy! – not accepted without medical note from UMass

 In-class exams: 50%

(6)

Plagiarism

 Cheaters will be found and punished

 We use sophisticated software that detects plagiarized programs, + manual inspection

 Cheating includes:

 “Borrowing” code from someone

 “Borrowing” code from someone

 This includes reading previous solutions

 Giving code to someone

 Copying code from anyone (including the net)

 Hiring someone to write your code

 Submitting someone else’s code as your own

(7)

Names & Pictures

 So I can learn everyone’s name fast

(8)

What’s An Operating System?

 Definition has changed over years

 Originally, very bare bones

 Now, includes more and more

 Bill Gates: Windows =

Everything in other operating systems



Everything in other operating systems + Internet Explorer

+ Media player

+ “even a ham sandwich” (DOJ vs. Microsoft)

(9)

OS: Traditional View

 Interface between user and architecture

 Hides architectural details

 Implements virtual

User-level Applications

Operating System

virtual machine interface

 Implements virtual machine:

 Easier to program than raw hardware (hopefully)

 Provides services and coordinates machine activities

Operating System

Hardware

physical machine interface

(10)

New Developments in OS Design

 Operating systems: active field of research

 Demands on OS’s growing

 New application spaces (Web, Grid)

 Rapidly evolving hardware

 Advent of open-source operating systems – Linux

 You can contribute to and develop OS’s!

 Excellent research platform

(11)

Operating Computer Systems

 What this class is really about

---

(12)

Building Large Computer Systems

 Goals: Fast, reliable, large scale

 To build these systems, you need to know

 Each computer:



Architectural details that matter C and C++ (nitty gritty & more)



C and C++ (nitty gritty & more)



Memory management & locality



Concurrency & scheduling



Disks, network, file systems

 Across cluster:



Server architectures



Distributed computing, file systems

(13)

History of Operating Systems

 And now, for some historical context

 From mainframes to web-based systems

in nine slides

(14)

The Dark Ages (1940’s-1960’s)

Hardware: expensive;

humans: cheap

 Evolution of functionality:

 One user

 One user

 Batch processing

 Overlap of I/O & computation

 Multiprogramming

(15)

1. Single-User Computers

 One user at a time on console

 Computer executes one function at a time

 No overlap: computation & I/O

 User must be at console to debug User must be at console to debug

Multiple users = inefficient use of machine

(16)

2. Batch Processing

 Execute multiple “jobs” in batch:

 Load program

 Run

 Print results, dump machine state

 Repeat

Users submit jobs (on cards or tape)

 Users submit jobs (on cards or tape)

 Human schedules jobs

 Operating system loads & runs jobs

More efficient use of machine, complicates

debugging

(17)

3. Overlap I/O and Computation

 Before: machine waits for I/O to complete

 New approach:

 Allow CPU to execute while waiting

 Add buffering



Data fills “buffer” and then output



Data fills “buffer” and then output

 and interrupt handling



I/O events trigger a signal (“interrupt”)

More efficient use of machine, but still one

job at a time

(18)

4. Multiprogramming

 Allow several programs to run at same time

 Run one job until I/O

 Run another job, etc.

OS manages interaction between

 OS manages interaction between programs:

 Which jobs to run (schedule)

 Protects program’s memory from others

 Decides which to resume when CPU available

(19)

OS Complexity

 Increased functionality & complexity

 First OS failures

 Multics (GE & MIT):

announced 1963, released 1969

OS/360 released with 1000 known bugs

 OS/360 released with 1000 known bugs

 Need to treat OS design scientifically

 Managing complexity becomes key to…

(20)

The Renaissance (1970’s)

Hardware: cheap; humans: expensive

 Users share system via terminals

 The UNIX era

 Multics:

 army of programmers, six years

 army of programmers, six years

 UNIX:

 three guys, two years

 “Shell”: composable commands

 No distinction between programs &

data

 But: response time & thrashing

(21)

The Industrial Revolution (1980’s)

Hardware very cheap;

humans expensive

 Widespread use of PCs

 IBM PC: 1981, Macintosh:

1984

Simple OS (DOS, MacOS)

 Simple OS (DOS, MacOS)

 No

multiprogramming, concurr ency, memory

protection, virtual memory, …

 Later: networking, file-

(22)

The Modern Era (1990’s-now)

Hardware cheap; processing demands increasing

 “Real” operating systems on PC’s

 NT (1991); Mac OS X; Linux

 Different modalities:

 Real-time: Strict or loose deadlines

 Sensor networks: Many small computers

 Parallel: Multiple processors, one machine

 Distributed: Multiple networked processors



Think P2P, the Web, Google

(23)

Moral of the Story

 The only constant: Change

 In 50 years, almost every computer component now 9 orders of magnitude faster, larger, cheaper

examples 1983 1999

MIPS 0.5 500

cost/MIP $100,000 $500

memory 1 MB 1 GB

network 10 Mbit/s 1 GB/s

disk 1 GB 1 Tbyte

(24)

Moral of the Story, II

 No counterpart in any other sphere of human existence!

 Transportation:



horseback (10 mph) to Concorde (1000 mph)



200 years – 2 orders of magnitude

 Communication:



Pony Express (10 mph) to telephone (600 million mph)



100 years – 7 orders of magnitude

(25)

Orders of Magnitude

 10 0

(26)

Orders of Magnitude

 10 1

(27)

Orders of Magnitude

 10 2

(28)

Orders of Magnitude

 10 3

(29)

Orders of Magnitude

 10 4

(30)

Orders of Magnitude

 10 5

(31)

Orders of Magnitude

 10 6

(32)

Orders of Magnitude

 10 7

(33)

Orders of Magnitude

 10 8

(34)

Orders of Magnitude

 10 9

(35)

Coming Soon

 Moore’s Law – running out of steam

 New features coming to computer near you:

 Multiple cores

 Unreliable memory

 Serious power/heat constraints

 Other tradeoffs possible

 Computing power for reliability…

References

Related documents

Open collector output 48V, 50mA or less 26 Speed agree detection Activates when the freq.. Figure 13 Control Circuit Terminal Arrangement.. .39 Digital Operator Display at

This confirms that the pseudo gap in the single particle spectrum appears near the cross-over region through the self energy correction 33 .Some recent 34-40 studies have also

The threaded terminal methyl group of the alkyl chain of the 1-octanamine guest is positioned outside the pillararene moiety where it engages in a weak inter- molecular C—H

Specifically, (1) to develop a system that monitors the temperature, humidity & the rear door status of the shipping truck vehicles; (2) to develop a GPS system

There is precedent in the literature (You & Chi, 2006; Layek et al. Atomic displacement para- meters are at the 30% probability level. Only the major component of the

centrosymmetric dimers of the title compound are present via intermolecular N—H O hydrogen bonds between sulfonamide groups.. These dimers are linked into ribbons along the c

Planning: In the automated development of this web application releases, to support problem oriented solution support scenario, management constructed a

For (II), N—H O hydrogen bonds form chains along the a -axis direction, while inversion-related C—I (ring) contacts supported by C—H (ring) inter- actions generate sheets