Introduction CSCI 444/544 Operating Systems Fall 2008.

Slides:



Advertisements
Similar presentations
CSC 360- Instructor: K. Wu Overview of Operating Systems.
Advertisements

Maninder Kaur OPERATING SYSTEM Maninder Kaur 11 Oct 2010.
CS 345 Computer System Overview
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
Chapter 1: Introduction
Lecture 1: History of Operating System
Operating Systems CS451 Brian Bershad
W4118 Operating Systems OS Overview Junfeng Yang.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Introduction  What is an Operating System  What Operating Systems Do  How is it filling our life 1-1 Lecture 1.
University of Pennsylvania 9/7/00CSE 3801 CSE 380 Introduction to Operating Systems Insup Lee Fall 00.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
1/16/2008CSCI 315 Operating Systems Design1 Introduction Notice: The slides for this lecture have been largely based on those accompanying the textbook.
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.
9/14/2015B.Ramamurthy1 Operating Systems : Overview Bina Ramamurthy CSE421/521.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
CHAPTER 2 OPERATING SYSTEM OVERVIEW 1. Operating System Operating System Definition A program that controls the execution of application programs and.
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?
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
 What is an operating system? What is an operating system?  Where does the OS fit in? Where does the OS fit in?  Services provided by an OS Services.
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.
Operating Systems.
 Introduction to Operating System Introduction to Operating System  Types Of An Operating System Types Of An Operating System  Single User Single User.
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:
CS 1651 Advanced Systems Software Jack Lange Assistant Professor University of Pittsburgh.
Fall 2000M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline.
◦ What is an Operating System? What is an Operating System? ◦ Operating System Objectives Operating System Objectives ◦ Services Provided by the Operating.
OPERATING SYSTEMS Goals of the course Definitions of operating systems Operating system goals What is not an operating system Computer architecture O/S.
Operating System Concepts Chapter One: Introduction What is an operating system? Simple Batch Systems Multiprogramming Systems Time-Sharing Systems Personal-Computer.
1.1 Operating System Concepts Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
OPERATING SYSTEMS UNIT – I R.SOUJANYA IT Dept. UNIT I Computer System and Operating System Overview Chapter 1: IntroductionIntroduction Overview of Computer.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
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.
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
CIS250 OPERATING SYSTEMS Chapter One Introduction.
Operating System. Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Operating Systems.
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.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Midterm OPERATING SYSTEM. Objectives At the end of the course, the student should be able to: Define the operating system; Demonstrate the abstract view.
Major OS Components CS 416: Operating Systems Design, Spring 2001 Department of Computer Science Rutgers University
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview: Using Hardware.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
Operating System Concepts with Java – 7 th Edition, Nov 15, 2006 Silberschatz, Galvin and Gagne ©2007 Chapter 0: Historical Overview.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
1 OPERATING SYSTEMS. 2 CONTENTS 1.What is an Operating System? 2.OS Functions 3.OS Services 4.Structure of OS 5.Evolution of OS.
Applied Operating System Concepts
Definitions, intro, history
Operating Systems : Overview
Where are being used the OS?
Introduction to Operating System (OS)
Chapter 1: Introduction
Chapter 1: Introduction
Operating Systems : Overview
Operating System Concepts
Operating Systems : Overview
CSE 451: Operating Systems Winter 2003 Lecture 1 Course Introduction
Chapter 2 Operating System Overview
CSE 451: Operating Systems Autumn 2003 Lecture 1 Course Introduction
Operating System Overview
Chapter 1: Introduction
Operating System Concepts
Presentation transcript:

Introduction CSCI 444/544 Operating Systems Fall 2008

Agenda Course overview - course coverage - course workload OS overview What is an operating system? How have operating systems evolved? Why study operating systems?

Course Coverage -What are the major components of an OS? -How are the components structured? -What policies are typically used in an OS? -What algorithms (mechanisms) are used to implement policies

Course Workload Four programming projects Two exams (open book and notes) A few homework assignments (paper and pen)

What is an Operating System? OS: Everything in system that isn’t an application or hardware OS: Software that converts hardware into a useful form for applications Not easy to define precisely… Users Hardware Operating System Applications compilers databases word processors CPU memory I/O devices

Abstract View of Computer Systems

What is an Operating System? A software layer to abstract away and manage messy details of hardware resources, providing an extended machine: easy and safe A resource manager that allows programs/users to share the hardware resources: fair and efficient A set of utilities to simplify application development

What is the role of the OS? Role #1: Provide standard Library (I.e., abstract resources) What is a resource? Anything valuable (e.g., CPU, memory, disk) Advantages of standard library Allow applications to reuse common facilities Make different devices look the same Provide higher-level abstractions Challenges What are the correct abstractions? How much of hardware should be exposed?

What is the role of the OS? Role #2: Resource manager Advantages of resource manager Virtualize resources so multiple users or applications can share Protect applications from one another Provide efficient and fair access to resources Challenges What are the correct mechanisms? What are the correct policies?

Mechanism and Policy Operating system: mechanism + policy Mechanisms: data structures and operations that implement an abstraction Policies: the procedures that guide the selection of a certain course of action from among alternatives Separate mechanisms from policies as much as possible

System Abstraction: Processes A process is a system (a running program) abstraction. Illusion of being the only job in the system Mechanism:  Creation, destruction, suspension, context switch, signaling, IPC,etc Policy: Minor policy questions: –Who can create/destroy/suspend processes? –How many active processes can each user have? Major policy question that we will concentrate on: –How to share system resources between multiple processes? –Typically broken into a number of orthogonal policies for individual resource such as CPU, memory, and disk.

Other Abstractions A thread is a processor abstraction Virtual memory is a memory abstraction A file system is a storage abstraction Message passing is a communication abstraction

History of the OS Two distinct phases of history Phase 1: Computers are expensive –Goal: Use computer’s time efficiently –Maximize throughput (I.e., jobs per second) –Maximize utilization (I.e., percentage busy) Phase 2: Computers are inexpensive –Goal: Use people’s time efficiently –Minimize response time

First commercial systems 1950s Hardware Enormous, expensive, and slow Input/Output: Punch cards and line printers Goal of OS Get the hardware working Single operator/programmer/user runs and debugs interactively OS Functionality Standard library only (no sharing or coordination of resources) Advantages Worked and allowed interactive debugging Problems Inefficient use of hardware (throughput and utilization)

Batch Processing Goal of OS: Better throughput and utilization Batch: Group of jobs submitted together Operator collects jobs; orders efficiently; runs one at a time Advantages Amortize setup costs over many jobs Operator more skilled at loading tapes Keep machine busy while programmer thinks Improves throughput and utilization Problems User must wait until batch is done for results Machine idle when job is reading from cards and writing to printers

Spooling CPUs were much faster than card readers and printers Disks were invented – disks were much faster than card readers and printers So, what do we do? Pipelining … what else? Read job 1 from cards to disk. Run job 1 while reading job 2 from cards to disk; save output of job 1 to disk. Print output of job 1 while running job 2 while reading job 3 from cards to disk. And so on … This is known as spooling: Simultaneous Peripheral Operation On-Line Can use multiple card readers and printers to keep up with CPU if needed Improves both system throughput and response time

Multiprogrammed Batch Systems Observation: Spooling provides pool of ready jobs Goal of OS Improve performance by always running a job Keep multiple jobs resident in memory When job waits for disk I/O, OS switches to another job OS Functionality Job scheduling policies Memory management and protection Advantage: Improves throughput and utilization

Inexpensive Peripherals (Time-Sharing) 1960s Hardware Expensive mainframes, but inexpensive keyboards and monitors Enables text editors and interactive debuggers Goal of OS Improve user’s response time OS Functionality Time-sharing: switch between jobs to give appearance of dedicated machine More complex job scheduling Concurrency control and synchronization Advantage Users easily submit jobs and get immediate feedback

Inexpensive Personal Computers 1980s Hardware Entire machine is inexpensive One dedicated machine per user Goal of OS Give user control over machine OS Functionality Remove time-sharing of jobs, protection, and virtual memory Advantages Simplicity Works with little main memory Machine is all your own (performance is predictable) Disadvantages No time-sharing or protection between jobs

Inexpensive, Powerful Computers 1990s+ Hardware PCs with increasing computation and storage Users connected to the web Goal of OS Allow single user to run several applications simultaneously Provide security from malicious attacks Efficiently support web servers OS Functionality Add back time-sharing, protection, and virtual memory

Specific OS Systems Real-time OS Hard real-time system Soft real-time system Distributed OS Clusters Wide-area distributed systems Embedded OS Mobile devices Sensors Dedicated controllers

OS Components Kernel: Core components of the OS Process scheduler Determines when and for long each process executes Memory manager Determines when and how memory is allocated to processes Decides what to do when main memory is full File system Organizes named collections of data in persistent storage Networking Enables processes to communicate with one another

Why study Operating Systems? Build, modify, or administer an operating system Understand system performance Behavior of OS impacts entire machine Challenge to understand large, complex system Tune workload performance Apply knowledge across many areas –Computer architecture, programming languages, data structures and algorithms, and performance modeling