Operating Systems CSE 411 Introduction and Overview Sept. 5 2006 - Lecture 1 Instructor: Bhuvan Urgaonkar.

Slides:



Advertisements
Similar presentations
Introduction CSCI 444/544 Operating Systems Fall 2008.
Advertisements

CS 345 Computer System Overview
CMSC 421: Principles of Operating Systems Section 0202 Instructor: Dipanjan Chakraborty Office: ITE 374
CMPT 300: Operating Systems I Dr. Mohamed Hefeeda
Chapter 1: Introduction
Operating Systems CS451 Brian Bershad
CSS430 Introduction1 Textbook Ch1 These slides were compiled from the OSC textbook slides (Silberschatz, Galvin, and Gagne) and the instructor’s class.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Bing Wang University of Connecticut Operating Systems CSE 4300 Lecture 1.
Wei University of Connecticut Operating Systems CSE 4300 Lecture 1.
1/16/2008CSCI 315 Operating Systems Design1 Introduction Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Operating Systems ECE344 A brief history of OS Ding Yuan ECE Dept., University of Toronto
COMP 321: Introduction to Computer Systems Scott Rixner Alan L. Cox
Lecture 14: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 14 Operating Systems James Harland
CIS-410: Operating Systems Spring Organizational Details Class Meeting: 7:00-9:45pm, Monday, Room 252N Instructor: Dr. Igor Aizenberg Office: Aikin.
Operating systems CHAPTER 7.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
CS 3305 Course Overview. Introduction r Instructor: Dr Hanan Lutfiyya r Office: MC 355 r hanan at csd dot uwo ca r Office Hours: m Drop-by m Appointment.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Winter 2015 COMP 2130 Introduction to Computer Systems Computing Science Thompson Rivers University Introduction and Overview.
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.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
1 5/25/2016 操作系统课件 教材: 《操作系统概念(第六版 影印版)》 【原书名】 Operating System Concepts(Sixth Edition) [ 原书信息 ] Operating System Concepts(Sixth Edition) [ 原书信息 ] 【原出版社】
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 1 Introduction Read:
WEEK 1 COURSE INTRODUCTION INTRODUCTION TO OPERATING SYSTEMS OPERATING SYSTEM STRUCTURES Operating Systems CS3013 / CS502.
1 Introduction to Operating Systems 9/16/2008 Lecture #1.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
CS 444 Introduction to Operating Systems
OPERATING SYSTEMS Goals of the course Definitions of operating systems Operating system goals What is not an operating system Computer architecture O/S.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
CS 390 Unix Programming Environment Summer Suchindra Rengan - CS3902 Course Details Instructors Suchindra Rengan – ‘sachin’ ( Section 001)
COP3502: Introduction to Computer Science Yashas Shankar.
CT 1503 Network Operating Systems Instructor: Dr. Najla Al-Nabhan 2014.
Course Information Sarah Diesburg Operating Systems COP 4610.
OPERATING SYSTEMS UNIT – I R.SOUJANYA IT Dept. UNIT I Computer System and Operating System Overview Chapter 1: IntroductionIntroduction Overview of Computer.
Course Information Andy Wang Operating Systems COP 4610 / CGS 5765.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
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.
11/21/20151 Operating Systems Design (CS 423) Elsa L Gunter 2112 SC, UIUC Based on slides by Sam King and Andrew.
January 16, 2007 COMS 4118 (Operating Systems I) Henning Schulzrinne Dept. of Computer Science Columbia University
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
CIS250 OPERATING SYSTEMS Chapter One Introduction.
Operating Systems CSE 411 Revision and final thoughts Revision and final thoughts Dec Lecture 33 Instructor: Bhuvan Urgaonkar.
Virtualization: Techniques and Applications CSE 598F Introduction and Overview Lecture 1: January 11, 2011 Instructor: Bhuvan Urgaonkar.
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.
Operating Systems CMPSC 473 Introduction and Overview August 24, Lecture 1 Instructor: Bhuvan Urgaonkar.
Operating System Concepts with Java – 7 th Edition, Nov 15, 2006 Silberschatz, Galvin and Gagne ©2007 Chapter 0: Historical Overview.
COMPSCI 110 Operating Systems
Operating Systems CMPSC 473
Operating Systems CMPSCI 377 Lecture 1
Course Information Mark Stanovich Principles of Operating Systems
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
Operating System Concepts
Andy Wang Operating Systems COP 4610 / CGS 5765
Andy Wang Operating Systems COP 4610 / CGS 5765
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.
Andy Wang Operating Systems COP 4610 / CGS 5765
EECE.4810/EECE.5730 Operating Systems
Operating System Concepts
Sarah Diesburg Operating Systems CS 3430
Lecture Topics: 11/1 Hand back midterms
Presentation transcript:

Operating Systems CSE 411 Introduction and Overview Sept Lecture 1 Instructor: Bhuvan Urgaonkar

About Me Bhuvan Urgaonkar –Ph.D., Sept. 2005, Univ. of Mass. Amherst –Research areas Operating systems, Distributed systems, Computer networks –Office hours: Thu 5-7 PM, or by appointment –Office: 338D, IST Building – cse Welcome!

Administrative Stuff

Teaching Assistants Yuan Fang –Office hours: M AM, W PM, 346D – cse Arjun R. Nath –Office hours: Tue 5-7 PM – cse

Online Resources and Text-book Course Web page: – All material will be available via ANGEL –Please seek help from the TAs if needed Textbook –Operating Systems Concepts, 7th ed. Silberschatz, Galvin, and Gagne

Course Mailing List Via ANGEL –Use with care I will send a test , please respond to my address if you don’t receive it by Friday Welcome to write to me or the TAs –Make sure to include “411” in the subject

Grading Quizzes (approx. one per week): 15% Written home-works (5): 15% Projects (3): 35% Exams (3): 35% 90+: A, 75-89: (A, B], 65-74: (B, C], … –Subject to change; will not make it stricter –No relative grading - relax :)

Grading Projects will be done in groups of 2 –One group of size 3 will be allowed if needed –If your partner drops the course … 2 Exams, each on a different subset of the material; final exam comprehensive Late policy: –Strict deadlines for quizzes and home-works 20% per extra day for projects –Inform TAs well in advance if there is a real reason for a delay in project submission –Same for conflict exams

Grading Projects –50% grade on how functional your project is –The other 50% on your write-up and presentation We will give instructions on what we expect when we make the projects available Quizzes: –Online on ANGEL –Multiple-choice, mostly

Computing Resources Solaris or Linux accounts for projects me or the TAs if you don’t have an account or have any doubts/problems

Academic Honesty Do all assignments on your own –Quizzes, home-works, projects We will use software to compare project source codes –Both partners on each team are expected to know everything about each project

Assumed Background First course on algorithms and data structures Comfortable programming in C/C++ –Comfortable with a debugger like gdb Preliminary understanding of computer architecture –We will cover some basics in this course Talk to me if you have doubts Background quiz to be turned in by next Monday

Before We Begin … Some advice –Speak up in class, ask questions –Attend all classes Hint: Ideas concerning homeworks, exam questions, … –Do all assignments on your own! –Make good use of office hours –Bring printouts to class and take notes on them –Read text-book soon after class Sections to read will be made available on the Web site alongside lecture notes Even better: read before class and ask questions

Operating Systems: Introduction & Background

What is an Operating System (OS)? Literal meaning –Software that helps operate a computer Lack of consensus on the term operate Overloaded term –Software that runs on a computer when nothing else is running (e.g., right after it boots up => kernel) Very restrictive, what about dynamically loaded device drivers? –Windows = Any other OS + Windows Media Player + … Very inclusive, why not everything else in the world?

What is an OS There is no single truth here –Our OS somewhere between these extremes Definition using negation –Applications Moving the burden to defining an application :) –OS = all software minus applications Helps the applications use the computer Helps manage the resources of the computer

Why do we need an OS? Why not provide this functionality in hardware? –Why this separate piece of software?

A Little Bit of History

The Dark Ages (1940s - 60s) Hardware: expensive; humans: cheap Evolution of functionality –Single user –Batch processing –Overlap of I/O and computation –Multi-programming

1. Single User 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

2. 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 A program loads & runs jobs –The Operating System More efficient use of machine, complicates debugging

3. Overlap I/O and Computation Before: machine waits for I/O to complete New approach: more work by the OS –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

4. 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

So what does an OS do? Two kinds of functionality –Management of computer resources Sharing CPU between tasks Memory management –Certain services to users Load programs, run them

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…

The Renaissance (1970s) 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

The Industrial Revolution (1980s) 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”)

The Modern Era (1990s-now) Hardware cheap; processing demands increasing “Real” operating systems on PCs –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

OSes Today Active research area (so I like to believe!) –Top CS conferences, several distinguished researchers/groups –Intersects with theory/algos., software engg., architecture, distrib. comp. Major market presence –Microsoft, Apple, HP, … New environments, new devices –Web, P2P systems, Internet apps, sensor networks, mobile devices, multimedia, … New challenges –Distributed systems, heterogeneous devices, ubiquitous computing, utility computing, mobile computing, autonomic computing

Outline of this Course

Course Outline Resource Management (and some services an OS provides to programmers) –CPU management –Memory management –I/O management (emphasis: Disk) Cross-cutting design considerations and techniques –Quality-of-service/fairness, monitoring, accounting, caching, software design methodology, security and isolation Advanced topics –Distributed systems –Data centers, multi-media systems, real-time systems, virtual machines

Next Time Background on Computer Architecture