U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture.

Slides:



Advertisements
Similar presentations
Operating System.
Advertisements

Operating System Structure
Introduction CSCI 444/544 Operating Systems Fall 2008.
CS 345 Computer System Overview
CMSC 421: Principles of Operating Systems Section 0202 Instructor: Dipanjan Chakraborty Office: ITE 374
Chapter 1: Introduction
Lecture 1: History of Operating System
Operating Systems CS451 Brian Bershad
Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
UNIX Chapter 01 Overview of Operating Systems Mr. Mohammad A. Smirat.
Operating Systems CMPSCI 377 Lecture 11: Memory Management
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Chapter 1 and 2 Computer System and Operating System Overview
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Bing Wang University of Connecticut Operating Systems CSE 4300 Lecture 1.
Wei University of Connecticut Operating Systems CSE 4300 Lecture 1.
OS Winter’03 Introduction (cont.) -History Operating Systems.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
CS364 CH08 Operating System Support TECH Computer Science Operating System Overview Scheduling Memory Management Pentium II and PowerPC Memory Management.
Operating Systems ECE344 A brief history of OS Ding Yuan ECE Dept., University of Toronto
Types of Operating System
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
OPERATING SYSTEMS Prof. Sujata Rao Lesson 3. Agenda 1. What is an operating system? 2. How have operating systems evolved? 3. Functions of Operating System.
Operating systems CHAPTER 7.
1 Lecture 2 Introduction, OS History n objective of an operating system n OS history u no OS u batch system u multiprogramming u multitasking.
part I, , Part I Introduction to Operating Systems First Semester, Year 2000 Wannarat Suntiamorntut Department of Computer Engineering,
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
 What is OS? What is OS?  What OS does? What OS does?  Structure of Operating System: Structure of Operating System:  Evolution of OS Evolution of.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 1 Introduction Read:
Fall 2000M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline.
Operating Systems CSE 411 Introduction and Overview Sept Lecture 1 Instructor: Bhuvan Urgaonkar.
MODERN OPERATING SYSTEMS Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved
المحاضرة الاولى Operating Systems. The general objectives of this decision explain the concepts and the importance of operating systems and development.
OPERATING SYSTEMS Goals of the course Definitions of operating systems Operating system goals What is not an operating system Computer architecture O/S.
INVITATION TO COMPUTER SCIENCE, JAVA VERSION, THIRD EDITION Chapter 6: An Introduction to System Software and Virtual Machines.
OPERATING SYSTEMS Lecture 3: we will explore the role of the operating system in a computer Networks and Communication Department 1.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
Operating System 2 Overview. OPERATING SYSTEM OBJECTIVES AND FUNCTIONS.
Chapter 1: Introduction and History  Where does the operating system fit in a computing system?  What does the operating system achieve?  What are the.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Lecture 8: 9/19/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
U NIVERSITY OF M ASSACHUSETTS A MHERST Department of Computer Science Computer Systems Principles Introduction Emery Berger and Mark Corner University.
1 Operating Systems: Principles and Practice Cpr E 308.
Operating Systems Introduction & Overview. Books (Tentative) Text Book: –Operating System Concepts, 6 th Edition, Silberschatz Galvin Gagne Reference.
MODERN OPERATING SYSTEMS Chapter 1 Introduction
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
1.1 Sandeep TayalCSE Department MAIT 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems.
Chapter 7 Operating Systems Foundations of Computer Science  Cengage Learning 1.
7.1 Operating Systems. 7.2 A computer is a system composed of two major components: hardware and software. Computer hardware is the physical equipment.
L ECTURE -6 Topics: Introduction to Operating system. Functions of an Operating system. Classification of Operating systems.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
Copyright Prentice Hall, Inc. 1 Operating System Overview.
CMPS Operating Systems Prof. Scott Brandt Computer Science Department University of California, Santa Cruz.
Applied Operating System Concepts
2. OPERATING SYSTEM 2.1 Operating System Function
Operating Systems CMPSCI 377 Lecture 1
Introduction to Operating System (OS)
What is an Operating System?
Operating System Concepts
Introduction to Operating Systems
Introduction to Operating Systems
CSE 451: Operating Systems Winter 2003 Lecture 1 Course Introduction
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
CSE 451: Operating Systems Autumn 2003 Lecture 1 Course Introduction
Operating System Concepts
Lecture Topics: 11/1 Hand back midterms
Introduction and History
Presentation transcript:

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture 1

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 2 Information Course web page: My contact info: Phone: Office hours by appointment TA’s: to be announced Discussion section: W 12:20 – 1:10, LGRC A301

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 3 Today’s Class Organizational meeting Course organization & outline Policies Prerequisites & course sign-up

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 4 Course Organization Capacity is 50 Class: junior or senior-level Not for freshman or sophomores Enrollment policy If space becomes an issue, graduating seniors get preference

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 5 Prerequisites CMPSCI 187 (Data Structures) CMPSCI 201 (Architecture) Textbook: none required

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 6 Course Organization Accounts in EdLab: 30+ Linux PC’s Discussion section to help you with projects, Office hours and location of TA’s: To be announced!

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 7 Course Requirements Note: These percentages are subject to revision. Class participation: 10% Includes in-class quizzes Programming projects: 40% Exams (midterm, final): 50% Strict late policy – not accepted late without medical note from UMass

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 8 Plagiarism Cheaters will be found and punished Will use sophisticated software to detect plagiarized programs Cheating includes: “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

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 9 Projects Build trace-based operating system simulator in Java Read in reference traces of actual programs Simulate operating system algorithms Virtual memory, CPU scheduler, disk scheduler, file system Some twists: Test suite Random module shuffling Modern software engineering Source code control, real IDEs with debuggers, etc.

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 10 Names & Pictures For the web page Also, for accountability!

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 11 Introduction to Operating Systems

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 12 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 +Internet Explorer +Media player + “even a ham sandwich” (DOJ vs. Microsoft)

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 13 OS: Traditional View Interface between user and architecture Hides architectural details Implements virtual machine: Easier to program than raw hardware (hopefully) Provides services and coordinates machine activities User-level Applications Operating System Hardware virtual machine interface physical machine interface

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 14 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

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 15 History of Operating Systems

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 16 The Dark Ages (1940’s-1960’s) Hardware: expensive; humans: cheap Evolution of functionality: One user Batch processing Overlap of I/O & computation Multiprogramming

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 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 Multiple users = inefficient use of machine

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Batch Processing Execute multiple “jobs” in batch: Load program Run Print results, dump machine state Repeat Users submit jobs (on cards or tape) Human schedules jobs Operating system loads & runs jobs More efficient use of machine, complicates debugging

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 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 and interrupt handling I/O events trigger a signal (“interrupt”) More efficient use of machine, but still one job at a time

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Multiprogramming Allow several programs to run at same time Run one job until I/O Run another job, etc. OS manages interaction between programs: Which jobs to start Protects program’s memory from others Decides which to resume when CPU available

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 21 OS Complexity Increased functionality & complexity First OS failures Multics (GE & MIT): announced 1963, released 1969 OS/360 released with 1000 known bugs Need to treat OS design scientifically Managing complexity becomes key to…

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 22 The Renaissance (1970’s) Hardware: cheap; humans: expensive Users share system via terminals The UNIX era Multics: army of programmers, six years UNIX: three guys, two years “Shell”: composable commands No distinction between programs & data But: response time & thrashing

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 23 The Industrial Revolution (1980’s) Hardware very cheap; humans expensive Widespread use of PCs IBM PC: 1981, Macintosh: 1984 Simple OS (DOS, MacOS) No multiprogramming, concurrency, memory protection, virtual memory, … Later: networking, file-sharing, remote printing… GUI added to OS (“WIMP”)

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 24 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: Parallel: Multiple processors, one machine Distributed: Multiple networked processors Real-time: Strict or loose deadlines Sensor networks: Many small computers

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 25 Moral of the Story The only constant: Change In 50 years, almost every computer component now 9 orders of magnitude faster, larger, cheaper Example: MIPS cost/MIP$100,000$500 memory1 MB1 GB network10 Mbit/s1 GB/s disk1 GB1 Tbyte

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 26 Moral of the Story, II No counterpart in any other sphere of human existence! Transportation: 200 years: horseback (10 mph) to Concorde (1000 mph) = 2 orders of magnitude Communication is closest: 100 years: Pony Express (10 mph) to nearly speed of light (600 million mph) = 7 orders of magnitude

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 27 Coming Soon Moore’s Law – running out of steam New features coming to computer near you: Multiple cores Unreliable memory Serious power/heat constraints

U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science 28 Next Time Operating Systems & Architecture