CS 4410 Operating Systems Prof. Sirer Fall 2010 Cornell University.

Slides:



Advertisements
Similar presentations
CS 4410 / CS4411 Operating Systems Prof. Sirer & Prof. George Fall 2014 Cornell University.
Advertisements

Introduction CSCI 444/544 Operating Systems Fall 2008.
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
Operating Systems CS451 Brian Bershad
CS 316: Introduction to Computer Organization and Systems Programming.
CS444/CS544 Operating Systems Introduction 1/12/2007 Prof. Searleman
CS 153 Design of Operating Systems Spring 2015 Lecture 1: Course Introduction Instructor: Zhiyun Qian Slides modified from Harsha Madhyvasta and Nael Abu-Ghazaleh.
Silberschatz, Galvin and Gagne  Operating System Concepts Common System Components Process Management Main Memory Management File Management.
COMP 303 Computer Architecture Prof. Emin Gün Sirer Fall 2007 Koç University.
CS 235: User Interface Design January 22 Class Meeting
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.
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?
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
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:
ICOM Noack Operating Systems - Administrivia Prontuario - Please time-share and ask questions Info is in my homepage amadeus/~noack/ Make bookmark.
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.
Course Introduction Andy Wang COP 5611 Advanced 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.
CSCD 330 Network Programming Fall/Winter/Spring 2014 Lecture 1 - Course Details.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Course Information Sarah Diesburg Operating Systems COP 4610.
Course Information Andy Wang Operating Systems COP 4610 / CGS 5765.
Lecture 1 Page 1 CS 111 Summer 2013 Introduction CS 111 Operating System Principles Peter Reiher.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
Operating System 2 Overview. OPERATING SYSTEM OBJECTIVES AND FUNCTIONS.
Distributed System Concepts and Architectures 2.3 Services Fall 2011 Student: Fan Bai
1 CNT 4704 Analysis of Computer Communication Networks Cliff Zou Department of Electrical Engineering and Computer Science University of Central Florida.
IST 210: Organization of Data
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Operating Systems Objective n The historic background n What the OS means? n Characteristics and types of OS n General Concept of Computer System.
Distributed System Services Fall 2008 Siva Josyula
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
1 CDA 4527 Computer Communication Networking (not “analysis”) Prof. Cliff Zou School of Electrical Engineering and Computer Science University of Central.
Course Overview 1 FCM 710 Architecture of Secure Operating Systems Prof. Shamik Sengupta Office 4210 N
CS533 Concepts of Operating Systems Jonathan Walpole.
Fall CSE330/CIS550: Introduction to Database Management Systems Prof. Susan Davidson Office: 278 Moore Office hours: TTh
Introduction to Operating Systems Prepared by: Dhason Operating Systems.
ECE 374: Computer Networks & Internet Introduction Spring 2015 Prof. Michael Zink.
ECE 374: Computer Networks & Internet Introduction Spring 2012 Prof. Michael Zink.
Certificate in Accounting NOS 116, 118, 213, 222 Lecture 1: Introduction.
Operating Systems CMPSC 473 Introduction and Overview August 24, Lecture 1 Instructor: Bhuvan Urgaonkar.
IST 210: ORGANIZATION OF DATA Introduction IST210 1.
1.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Lecture 1: Introduction & OS Structures (Part One, Chapters 1&2)
CSI 3131 Summer 2016 Principles of Operating Systems Instructor: Dr. Nathalie Japkowicz Office: STE 5029 Office Hours: n In.
COMPSCI 110 Operating Systems
CS 450/550 Operating Systems Loc & Time: MW 1:40pm-4:20pm, 101 ENG
CNT 4704 Computer Communication Networking (not “analysis”)
Andy Wang COP 5611 Advanced Operating Systems
COMPSCI 110 Operating Systems
Andy Wang COP 5611 Advanced Operating Systems
Lecture Note 0: Course Introduction
COP 5611: Operating Systems
Andy Wang Operating Systems COP 4610 / CGS 5765
CGS 3763 Operating Systems Concepts Spring 2013
Andy Wang COP 5611 Advanced Operating Systems
Chapter 2: Operating-System Structures
Andy Wang COP 5611 Advanced Operating Systems
Lecture Note 0: Course Introduction
Operating Systems CS451 Fall 1998
EECE.4810/EECE.5730 Operating Systems
Chapter 2: Operating-System Structures
CSE 451: Operating Systems Winter 2007 Module 1 Course Introduction
Andy Wang COP 5611 Advanced Operating Systems
Sarah Diesburg Operating Systems CS 3430
Lecture Topics: 11/1 Hand back midterms
Presentation transcript:

CS 4410 Operating Systems Prof. Sirer Fall 2010 Cornell University

2 Course Objective Bridge the gap between hardware and software Establish a foundation for building higher- level programs How to optimize programs How to debug large systems How to deal with complexity

What is an Operating System? An operating system (OS) provides a virtual execution environment on top of hardware that is more convenient than the raw hardware interface “All of the code you did not write” Simpler More reliable More secure More portable More efficient Hardware Operating System Applications

What do OSes do? Manage physical resources Provide virtual resources Implement mechanisms and enforce policies for the control and use of resources Mediate the interaction of mutually distrusting applications

What Physical Resources Do OSes Control? CPU Memory Storage Devices Networks Input Devices (keyboard, mice, cameras) Output Devices (printers, displays, speakers) And many virtual resources

Issues In OS Design Structure: how is an OS organized? Concurrency: how are parallel activities created and controlled? Sharing: how are resources shared? Naming: how are resources named by users? Protection: how are distrusting parties protected from each other? Security: how to authenticate, authorize and ensure privacy? Performance: why is it so slow?

More Issues Reliability: how do we deal with failures? Extensibility: how do we add new features? Communication: how do we exchange information? Scale: what happens as demands increase? Persistence: how do we make information outlast the processes that created it? Accounting: who pays the bills and how do we control resource usage?

Why Learn Operating Systems? Provides an understanding from the bottom up Even if few people build OSes, understanding how Oses work is crucial for building working systems This course will go far beyond OS design to cover all aspects of computer organization, including concurrency, synchronization, input/output, filesystems, networking, routing, distributed systems and so forth Engineering pride alone requires full understanding

Fact There has never been as exciting a time to work on systems hardware and software as now!!! The world is increasingly dependent on computer systems Connected, networked, interlinked People just do not know how to build robust systems

BSOD

Therac-25 A safety-critical system with software interlocks Beam controlled entirely through a custom OS

Therac-25 Old system used a hardware interlock A lever that could either be in the “zap” or “x-ray” position New system was computer controlled A synchronization failure was triggered when competent nurses used the back arrow to change the data on the screen “too quickly”

Therac-25 Outcome Beam killed one person directly, burned others, and may have given inadequate treatment to cancer patients Problem was very difficult to diagnose; initial fix involved removal of the back arrow key from the keyboard People died because a programmer could not write correct code for a concurrent system

Denver airport The most modern, most expensive airport in recent history Cost overrun in excess of $2B Highly automated luggage handling system was supposed to deliver your luggage to you at arrival Lack of persistence caused luggage carts to “forget” their contents, sprinkling the luggage on the runway

USS Yorktown Modern guided missile cruiser off of Norfolk, VA in 1998 Crew member entered 0 for a data value Cascade of failures led to a failure of the propulsion system Yorktown was dead in the water for a couple of hours

Other Systems FAA air traffic control system IRS data management system IBM “Microkernel” Pentagon data security Many others, too numerous to list

Summary We do not have the necessary technologies and know-how to build robust computer systems There is huge demand for people who deeply understand and can build robust systems

Logistics Lectures Tuesday, Thursday 2:55-4:10pm, Hollister B14 Instructor Prof. Sirer, egs at systems.cs.cornell.edu Office Hours  T/Th 4:10-5:10pm  Or by prior appointment TAs Deniz Altinbuken, Robert Escriva, Jason Wu Dinesh Bhat, Jian Chear

Communication Course Web Page Office hours, assignments, lectures, and other supplemental materials will be on the web site cs4410staff at systems.cs.cornell.edu The alias goes to me and the TAs, not to the whole class

Administrative Course has three components Lectures and Readings Exams Projects and MiniProjects Textbook Silberschatz, Galvin & Gagne Operating System Concepts, 8 th ed. You are expected to keep up with all three

Grading CS4410 Breakdown ~40% MiniProjects ~12% Prelim 1 ~18% Prelim 2 ~25% Final ~5% Flexgrade (participation, attitude, effort) CS4411 Breakdown ~90% Projects ~10% Flexgrade Grading will not be done on a curve It is my goal to be able to give everyone an A+ Help me achieve this

Projects in CS4411 Projects will be done in two-person teams You may indicate a desired partner If they also indicate you, we will pair you up If you don’t have a preferred partner, we’ll pair you up with someone suitable Working in groups Start early, time management is key Manage the team effort Part of what you are supposed to learn is how to manage to get work done in a small team

MiniProjects in 4410 There will be approximately 4-6 miniprojects MiniProjects will be done individually Working individually Start early, time management is key

Academic Integrity and Honor Code All submitted work must be your own All homeworks must be your own independent work OK to study together Cannot share solutions, ever Project groups submit joint work All group assignments must represent solely the work of the two people in that group Cannot be in possession of someone else’s solution Violations will be prosecuted to the fullest extent Closed-book exams, no calculators

Draft Syllabus Introduction Architectural Support for Operating Systems Processes and Threads Scheduling Synchronization, Mutual Exclusion, Spin Locks, Semaphores, Condition Variables Deadlocks, Detection and Avoidance Memory Management Networking, LANs, WANs, Ethernet, ARP, IP, UDP, TCP Disks and RAID Filesystems, UFS, LFS Security

Draft Project Plan for CS4411 Threads and Concurrency Scheduling Basic Datagram Networking Reliable Streaming Protocols Routing Filesystems

Questions? And demographics…