Copyright ©: Nahrstedt, Angrave, Abdelzaher1 Operating System Overview Tarek Abdelzaher Lawrence Angrave Vikram Adve.

Slides:



Advertisements
Similar presentations
OPERATING SYSTEMS Lecturer: Szabolcs Mikulas Office: B38B
Advertisements

Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc
CSC 360- Instructor: K. Wu Overview of Operating Systems.
Chapter 2 Operating System Overview Operating Systems: Internals and Design Principles, 6/E William Stallings.
Winter 2005 CMPE 151: Network Administration Lecture 2.
COS318 Lec 21 Operating System Structures Vivek Pai Princeton University.
1 Introduction Chapter What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4 Computer hardware review 1.5.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Figure 1.1 Interaction between applications and the operating system.
1 Introduction Chapter What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4 Computer hardware review 1.5.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Chapter 1 Introduction 1.1 What is an operating system
1 What is an operating system? CSC330Patricia Van Hise.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Computer Organization
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems David Goldschmidt, Ph.D.
CS 6560 Operating System Design Lecture 1. Overview 1.1 What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4.
CHAPTER 2 OPERATING SYSTEM OVERVIEW 1. Operating System Operating System Definition A program that controls the execution of application programs and.
 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.
CS Fall 2011 CS 423 – Operating Systems Design Lecture 2 – Concepts Review Klara Nahrstedt Fall 2011.
CSC 322 Operating Systems Concepts Lecture - 4: by Ahmed Mumtaz Mustehsan Special Thanks To: Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Composition and Evolution of Operating Systems Introduction to Operating Systems: Module 2.
Introduction to Operating Systems Chapter 1. cs431 -cotter2 Lecture Objectives Understand the relationship between computing hardware, operating system,
Contact Information Office: 225 Neville Hall Office Hours: Monday and Wednesday 12:00-1:00 and by appointment.
1 Operating System Overview. 2 Today’s Objectives Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental.
Recall: Three I/O Methods Synchronous: Wait for I/O operation to complete. Asynchronous: Post I/O request and switch to other work. DMA (Direct Memory.
Operating Systems Principles Lecture 1: Introduction 主講人:虞台文.
Chapter 1 Introduction 1.1 What is an operating system
ITEC 502 컴퓨터 시스템 및 실습 Chapter 1: Introduction. ITEC 502 컴퓨터 시스템 및 실습 Chapter 1: Introduction Mi-Jung Choi DPNM Lab. Dept. of CSE,
1 Instructor :Erdal Kose Office hours: Tuesday 9:00-9:30 pm. Mail box : 2109 Ingersoll Hall (Erdal ) Web site :
1 Introduction Chapter What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4 Computer hardware review 1.5.
Contact Information Office: 225 Neville Hall Office Hours: Monday and Wednesday 12:00-1:00 E-Main: Phone:
1 Introduction. 2 A computer system consists of –hardware –system programs –application programs.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc.
Operating Systems Lecture 7 OS Potpourri Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing Liu School of Software.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Background: Operating Systems Brad Karp UCL Computer Science CS GZ03 / M th November, 2008.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
CY2003 Computer Operating Systems Lecture 01 Introduction Abir Hussain (JPB6.33,
Processes Introduction to Operating Systems: Module 3.
1 Operating Systems: Principles and Practice Cpr E 308.
Copyright ©: University of Illinois CS 241 Staff1 Operating Systems Orientation.
Operating System Structure A key concept of operating systems is multiprogramming. –Goal of multiprogramming is to efficiently utilize all of the computing.
We will focus on operating system concepts What does it do? How is it implemented? Apply to Windows, Linux, Unix, Solaris, Mac OS X. Will discuss differences.
1 Computer Systems II Introduction to Processes. 2 First Two Major Computer System Evolution Steps Led to the idea of multiprogramming (multiple concurrent.
Concurrency, Processes, and System calls Benefits and issues of concurrency The basic concept of process System calls.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Chapter 2 Process Management. 2 Objectives After finish this chapter, you will understand: the concept of a process. the process life cycle. process states.
1 Process Description and Control Chapter 3. 2 Process A program in execution An instance of a program running on a computer The entity that can be assigned.
Chapter 1 Introduction  What is an operating system  History of operating systems  The operating system zoo  Computer hardware review  Operating system.
操作系统原理 OPERATING SYSTEM Chapter 1 Introduction 概 述.
What is a Process ? A program in execution.
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.
OS HISTORY Module 1.3 Richard Newman University of Florida.
Introduction to Operating Systems Concepts
Operating System Overview
Lecture 3: Basic OS Concepts
Chapter 1: A Tour of Computer Systems
Evolution of Operating Systems
Lecture 2: Hardware Review
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Lecture Topics: 11/1 General Operating System Concepts Processes
Lecture 2: Hardware Review
Lecture 3: Basic OS Concepts
Operating System Introduction
Contact Information Office: 225 Neville Hall Office Hours: Monday and Wednesday 12:00-1:00 and by appointment. Phone:
Introduction and Overview
Presentation transcript:

Copyright ©: Nahrstedt, Angrave, Abdelzaher1 Operating System Overview Tarek Abdelzaher Lawrence Angrave Vikram Adve

Copyright ©: Nahrstedt, Angrave, Abdelzaher 2 Today’s Objectives By the end of the hour you should be able to: Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental machine concepts such as: Instruction processing, Memory hierarchy, Interrupts, and I/O Explain fundamental OS concepts such as: System calls, processes, synchronization, Files Explain the POSIX standard (UNIX specification)

Copyright ©: Nahrstedt, Angrave, Abdelzaher 3 Today’s Applications BrowserSecond Life Yahoo Chat Client Pop Mail Application Software HardwareNetwork

Copyright ©: Nahrstedt, Angrave, Abdelzaher 4 Application Requirements BrowserSecond Life Yahoo Chat Client Pop Mail Application Software HardwareNetwork Read/write Display Print Store Send/receive

Copyright ©: Nahrstedt, Angrave, Abdelzaher 5 BrowserSecond Life Yahoo Chat Client Pop Mail Application Software HardwareNetwork Read/write Display Print Store Read/write Display Print Store Send/receive Application Requirements

Copyright ©: Nahrstedt, Angrave, Abdelzaher 6 BrowserSecond Life Yahoo Chat Client Pop Mail Application Software HardwareNetwork Read/write Display Print Store Read/write Display Print Store Send/receive Read/write Display Print Store Send/receive Application Requirements

Copyright ©: Nahrstedt, Angrave, Abdelzaher 7 BrowserSecond Life Yahoo Chat Client Pop Mail Application Software HardwareNetwork Read/write Display Print Store Read/write Display Print Store Send/receive Read/write Display Print Store Send/receive Display Store Print Read/write Application Requirements

Copyright ©: Nahrstedt, Angrave, Abdelzaher 8 Delegate Common Functions? BrowserSecond Life Yahoo Chat Client Pop Mail Application Software HardwareNetwork Read/write Display Print Store Read/write Display Print Store Send/receive Read/write Display Print Store Send/receive Display Store Print Read/write

Copyright ©: Nahrstedt, Angrave, Abdelzaher 9 Delegate Common Functions to an Operating System Web ServerSecond Life Yahoo Chat Pop Mail Application Software Operating System NetworkHardware Read/Write Standard Output Device Control File System Communication

Copyright ©: Nahrstedt, Angrave, Abdelzaher 10 OS Exports a Virtual Machine Interface Web ServerSecond Life Yahoo Chat Pop Mail Application Software Operating System NetworkHardware Read/Write Standard Output Device Control File System Communication Standard Operating System Interface (Virtual Machine)

Copyright ©: Nahrstedt, Angrave, Abdelzaher 11 Increase Portability = Minimize Machine-Specific Code Web ServerSecond Life Yahoo Chat Pop Mail Application Software Network Hardware Machine specific part Read/Write Standard Output Device Control File System Communication Operating System (machine independent part) Standard Operating System Interface (Virtual Machine)

Copyright ©: Nahrstedt, Angrave, Abdelzaher 12 Web ServerSecond Life Yahoo Chat Pop Mail Application Software Network Hardware Machine specific part Read/Write Standard Output Device Control File System Communication Operating System (machine independent part) Standard Operating System Interface (Virtual Machine) Portable Increase Portability = Minimize Machine-Specific Code

Copyright ©: Nahrstedt, Angrave, Abdelzaher 13 Web ServerSecond Life Yahoo Chat Pop Mail Application Software Read/Write Standard Output Device Control File System Communication Operating System (machine independent part) Standard Operating System Interface (Virtual Machine) Portable OS Runs on Multiple Platforms while Presenting same Interface

Copyright ©: Nahrstedt, Angrave, Abdelzaher 14 Web ServerSecond Life Yahoo Chat Pop Mail Application Software Network Hardware Machine specific part Read/Write Standard Output Device Control File System Communication Operating System (machine independent part) Standard Operating System Interface (Virtual Machine) Portable OS Runs on Multiple Platforms while Presenting same Interface

Copyright ©: Nahrstedt, Angrave, Abdelzaher 15 POSIX – The UNIX Interface Standard Web ServerSecond Life Yahoo Chat Pop Mail Application Software Network Hardware Machine specific part Read/Write Standard Output Device Control File System Communication Operating System (machine independent part) The POSIX Standard Specifies UNIX Interface Portable

Copyright ©: Nahrstedt, Angrave, Abdelzaher 16 A peek into Unix Application Portable OS Layer Libraries Machine-dependent layer User space/level Kernel space/level User/kernel modes are supported by hardware Some systems do not have clear user-kernel boundary

Copyright ©: Nahrstedt, Angrave, Abdelzaher 17 Unix: Application Application (E.g., emacs) Portable OS Layer Libraries Machine-dependent layer Written by programmer Compiled by programmer Uses function calls

Copyright ©: Nahrstedt, Angrave, Abdelzaher 18 Unix: Libraries Application Portable OS Layer Libraries (e.g., stdio.h) Machine-dependent layer Provided pre-compiled Defined in headers Input to linker (compiler) Invoked like functions May be “resolved” when program is loaded

Copyright ©: Nahrstedt, Angrave, Abdelzaher 19 Typical Unix OS Structure Application Portable OS Layer Libraries Machine-dependent layer system calls (read, open..) All “high-level” code

Copyright ©: Nahrstedt, Angrave, Abdelzaher 20 Typical Unix OS Structure Application Portable OS Layer Libraries Machine-dependent layer Bootstrap System initialization Interrupt and exception I/O device driver Memory management Kernel/user mode switching Processor management

Copyright ©: Nahrstedt, Angrave, Abdelzaher 21 Summary: What is an Operating System? It is an extended machine Hides the messy details which must be performed Presents user with a virtual machine, easier to use It is a resource manager Each program gets time with the resource Each program gets space on the resource

Copyright ©: Nahrstedt, Angrave, Abdelzaher 22 History of Operating Systems Early systems bring cards to 1401 read cards to tape put tape on 7094 which does computing put tape on 1401 which prints output Batch  Multiprogramming  Time sharing  Personal

Copyright ©: Nahrstedt, Angrave, Abdelzaher 23 History of Operating Systems Structure of a typical job – 2 nd generation

Copyright ©: Nahrstedt, Angrave, Abdelzaher 24 History of Operating Systems Multiprogramming/timesharing system – three jobs in memory – 3 rd generation

Copyright ©: Nahrstedt, Angrave, Abdelzaher 25 History of Operating Systems Multiprogramming/timesharing system – three jobs in memory – 3 rd generation Memory Management Process Management

Copyright ©: Nahrstedt, Angrave, Abdelzaher 26 History of Computer Generations First generation 1945 – 1955 vacuum tubes, plug boards Second generation transistors, batch systems Third generation 1965 – 1980 ICs and multiprogramming Fourth generation 1980 – present personal computers

Copyright ©: Nahrstedt, Angrave, Abdelzaher 27 Computer Hardware Review Components of a simple personal computer Bus

Copyright ©: Nahrstedt, Angrave, Abdelzaher 28 Large Pentium system

Copyright ©: Nahrstedt, Angrave, Abdelzaher 29 Computer Hardware Review Components of a simple personal computer Bus CPU

Copyright ©: Nahrstedt, Angrave, Abdelzaher 30 CPU Fetch instruction from code memory Fetch operands from data memory Perform operation (and store result) Go to next instruction

Copyright ©: Nahrstedt, Angrave, Abdelzaher 31 CPU Registers Fetch instruction from code memory Fetch operands from data memory Perform operation (and store result) Go to next instruction Note: CPU must maintain certain state Current instructions to fetch (program counter) Location of code memory segment Location of data memory segment

Copyright ©: Nahrstedt, Angrave, Abdelzaher 32 CPU Register Examples Hold instruction operands Point to start of Code segment Data segment Stack segment Point to current position of Instruction pointer Stack pointer

Copyright ©: Nahrstedt, Angrave, Abdelzaher 33 CPU Register Examples Hold instruction operands Point to start of Code segment Data segment Stack segment Point to current position of Instruction pointer Stack pointer Why stack?

Copyright ©: Nahrstedt, Angrave, Abdelzaher 34 Code Layout for Process Processes have three segments: text, data, stack

Copyright ©: Nahrstedt, Angrave, Abdelzaher 35 Code Layout for Process Processes have three segments: text, data, stack Where is this stored?

Copyright ©: Nahrstedt, Angrave, Abdelzaher 36 Memory Hierarchy Typical memory hierarchy – numbers shown are rough approximations

Copyright ©: Nahrstedt, Angrave, Abdelzaher 37 Computer Hardware Review Components of a simple personal computer Bus CPU

Copyright ©: Nahrstedt, Angrave, Abdelzaher 38 Computer Hardware Review Components of a simple personal computer Bus CPUMemory

Copyright ©: Nahrstedt, Angrave, Abdelzaher 39 Computer Hardware Review Components of a simple personal computer Bus CPUMemory I/O Devices

Copyright ©: Nahrstedt, Angrave, Abdelzaher 40 I/O Interrupt Mechanism (a) a) Steps in starting an I/O device and getting interrupt b) How the CPU is interrupted (b)

Copyright ©: Nahrstedt, Angrave, Abdelzaher 41 Computer Hardware Review Example I/O Device: Disk Structure of a disk drive

Copyright ©: Nahrstedt, Angrave, Abdelzaher 42 Operating System Review: Processes A process tree A created two child processes, B and C B created three child processes, D, E, and F

Copyright ©: Nahrstedt, Angrave, Abdelzaher 43 Context Switching How would you switch CPU execution from one process to another?

Copyright ©: Nahrstedt, Angrave, Abdelzaher 44 Semaphores Control access to resources

Copyright ©: Nahrstedt, Angrave, Abdelzaher 45 Shared Resources, Conflicts, and Deadlocks (a) A potential deadlock. (b) an actual deadlock.

Copyright ©: Nahrstedt, Angrave, Abdelzaher 46 Inter-process Communication Two processes connected by a pipe