Overview Introduction to Operating Systems

Slides:



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

Operating Systems CS451 Brian Bershad
CS 104 Introduction to Computer Science and Graphics Problems Operating Systems (1) 02/18/2008 Yang Song (Prepared by Yang Song and Dr. Hung)
1 CIS450/IMSE450/ECE478 Operating Systems Winter 2003 Professor Jinhua Guo.
A. Frank - P. Weisberg Operating Systems Evolution of Operating Systems.
Cs238 Introduction to Operating Systems Dr. Alan R. Davis.
OS Winter’03 Introduction (cont.) -History Operating Systems.
Operating Systems ECE344 A brief history of OS Ding Yuan ECE Dept., University of Toronto
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.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating 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:
Fall 2000M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline.
CS 153 Design of Operating Systems Spring 2015 Lecture 2: Intro and Architectural Support for Operating Systems.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
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 Systems Introduction & Overview. Books (Tentative) Text Book: –Operating System Concepts, 6 th Edition, Silberschatz Galvin Gagne Reference.
Operating System. Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
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.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Applied Operating System Concepts
Chapter 1: Introduction
Chapter 1: Introduction
Introduction to Basic OS Concepts
Sujata Ray Dey Maheshtala College Computer Science Department
Chapter 1: Introduction
Chapter 1: Introduction
THE OPERATION SYSTEM The need for an operating system
Chapter 1: Introduction
Chapter 1: Introduction
TYPES OFF OPERATING SYSTEM
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
חוברת שקפים להרצאות של ד"ר יאיר ויסמן מבוססת על אתר האינטרנט:
Introduction to Operating Systems
CSE 451: Operating Systems Spring 2006 Module 1 Course Introduction
Operating System Concepts
Chapter 1: Introduction
CSE 451: Operating Systems Winter 2007 Module 1 Course Introduction
CSE 451: Operating Systems Autumn 2004 Course Introduction Hank Levy
Operating Systems CSE451 Winter 2000
Language Processors Application Domain – ideas concerning the behavior of a software. Execution Domain – Ideas implemented in Computer System. Semantic.
CSE 451: Operating Systems Winter 2003 Lecture 1 Course Introduction
Sujata Ray Dey Maheshtala College Computer Science Department
Subject Name: Operating System Concepts Subject Number:
CSE 451: Operating Systems Winter 2006 Module 1 Course Introduction
Operating Systems CSE451 Spring 2000
Operating Systems: History
Chapter 1: Introduction
Chapter 1: Introduction
Operating Systems CS451 Spring 1998
Chapter 1: Introduction
CSE 451: Operating Systems Winter 2004 Module 1 Course Introduction
Operating Systems CS451 Fall 1998
CSE 451: Operating Systems Spring 2005 Module 1 Course Introduction
What is an Operating System? A historical Perspective
Chapter 1: Introduction
Operating Systems Principles Lecture 1: Introduction
CSE 451: Operating Systems Autumn 2003 Lecture 1 Course Introduction
Operating System Overview
Chapter 1: Introduction
Operating System Concepts
Lecture Topics: 11/1 Hand back midterms
Chapter 1: Introduction
Presentation transcript:

Overview Introduction to Operating Systems Some of the following slides are adapted from Matt Welsh, Harvard Univ.

In the Beginning… There was no OS – just libraries Computer only ran one program at a time, so no need for an OS Programming through wiring.. Harvard Mark I, 1944 ENIAC, 1945 IBM 360, 1960's

18/02/08

In the Beginning… There was no OS – just libraries Computer only ran one program at a time, so no need for an OS And then there were batch systems Programs printed on stacks of punchhole cards OS was resident in a portion of machine memory When previous program was finished, OS loaded next program to run

Punch Card

In the Beginning… There was no OS – just libraries Computer only ran one program at a time, so no need for an OS And then there were batch systems Programs printed on stacks of punchhole cards OS was resident in a portion of machine memory When previous program was finished, OS loaded next program to run

In the Beginning… There was no OS – just libraries Computer only ran one program at a time, so no need for an OS And then there were batch systems Programs printed on stacks of punchhole cards OS was resident in a portion of machine memory When previous program was finished, OS loaded next program to run Disk spooling Disks were much read stack onto disk while previous program is running With multiple programs on disk, need to decide which to run next! But, CPU still idle while program accesses a peripheral (e.g., tape or disk!)‏

18/02/08 Multiprogramming To increase system utilization, multiprogramming OS’s were invented keeps multiple runnable jobs loaded in memory at once Overlaps I/O of a job with computing of another While one job waits for I/O to compile, CPU runs instructions from another job To benefit, need asynchronous I/O devices need some way to know when devices are done performing I/O Goal: optimize system throughput perhaps at the cost of response time… Dennis Ritchie and Ken Thompson at a PDP11, 1971

Timesharing To support interactive use, timesharing OS's were created 18/02/08 Timesharing To support interactive use, timesharing OS's were created multiple terminals connected to one machine each user has illusion of entire machine to him/herself optimize response time, perhaps at the cost of throughput Timeslicing divide CPU fairly among the users if job is truly interactive (e.g. editor), then can switch between programs and users faster than users can generate load MIT Multics (mid-1960’s) was the first large timeshared system nearly all modern OS concepts can be traced back to Multics

Personal Computing Totally changed the computing industry. 18/02/08 Personal Computing Apple I, 1976 Totally changed the computing industry. CP/M: First personal computer OS IBM needed OS for their PCs, CP/M behind schedule Bill Gates to the rescue: Bought 86-DOS and made MS-DOS DOS is basically a subroutine library! Many popular personal computers follow Apple, Commodore, TRS-80, TI 99/4, Atari, etc... Apple LISA, 1983 IBM PC, 1981 Bill Gates and Paul Allen, c.1975 Commodore VIC-20

18/02/08

Parallel Computing and Clusters 18/02/08 Parallel Computing and Clusters High-end scientific apps want to use many CPUs at once Parallel processing to crunch on enormous data sets Need OS and language primitives for dividing program into parallel activities Need OS primitives for fast communication between processors degree of speedup dictated by communication/computation ratio Many kinds of parallel machines: SMPs: symmetric multiprocessors – several CPUs accessing the same memory MPPs: massively parallel processors – each CPU may have its own memory Clusters: connect a lot of commodity machines with a fast network

Distributed OS Goal – Make use of geographically distributed resources 18/02/08 Distributed OS Goal – Make use of geographically distributed resources workstations on a LAN servers across the Internet Supports communication between applications interprocess communication (on a single machine): message passing and shared memory networking procotols (across multiple machines): TCP/IP, Java RMI, .NET SOAP “The Grid”, .NET, and OGSA Idea: Seamlessly connect vast computational resources across the Internet

18/02/08 Embedded OS The rise of tiny computers everywhere – ubiquitous computing Processor cost low enough to embed in many devices PDAs, cell phones, pagers, ... How many CPUs are in your car? On your body right now? Gets more interesting with ubiquitous networking! Wireless networks becoming pervasive Sensor networks are an exciting new direction here Little “motes” with less 4KB of RAM, some sensors, and a radio Typically very constrained hardware resources slow processors very small amount of memory (e.g. 8 MB)‏ no disk – but maybe quasi-permanent storage such as EEPROM