CSC 453 Operating Systems

Similar documents
Chapter 1: Introduction

Module 1: Introduction

Module 1: Introduction. What is an Operating System?

Module 1: Introduction

Operating Systems Fundamentals. What is an Operating System? Focus. Computer System Components. Chapter 1: Introduction

Chapter 1: Introduction


OPERATING SYSTEMS OVERVIEW

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM:

UNIT I OPERATING SYSTEMS OVERVIEW

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

OPERATING SYSTEMS UNIT - 1

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Introduction. What is an Operating System? A Modern Computer System. Computer System Components. What is an Operating System?

Fundamental Concepts and History

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings

Some popular Operating Systems include Linux Operating System, Windows Operating System, VMS, OS/400, AIX, z/os, etc.

INTRODUCTION TO OPERATING SYSTEMS. Jo, Heeseung

1. Operating System Concepts

Operating System: an Overview. Lucia Dwi Krisnawati, MA

Course Content. 07-Feb-17 Faculty of Computer Science & Engineering 1 BK TP.HCM

Chapter 1: Introduction. Operating System Concepts 8th Edition,

ECE397A Operating Systems. Chapter 1: Introduction

Introduction to Operating Systems

Operating Systems. Computer Science & Information Technology (CS) Rank under AIR 100

Operating Systems Course 2 nd semester 2016/2017 Chapter 1: Introduction

Introduction to Operating Systems. Jo, Heeseung

ROEVER ENGINEERING COLLEGE, PERAMBALUR DEPARTMENT OF INFORMATION TECHNOLOGY OPERATING SYSTEMS QUESTION BANK UNIT-I

TYPES OF OPERATING SYSTEMS. Dimple Juneja

Operating Systems. studykorner.org

Chapter 14 Operating Systems

Chapter 14 Operating Systems

OPERATING SYSTEM. Functions of Operating System:

Introduction to Operating System

Chapter 1: Introduction. Operating System Concepts 9 th Edit9on

CS6401- Operating System QUESTION BANK UNIT-I

Course Details. Operating Systems with C/C++ Course Details. What is an Operating System?

CS 571 Operating Systems. Midterm Review. Angelos Stavrou, George Mason University

Chapter 1: Introduction

Introduction to Operating System. Dr. Aarti Singh Professor MMICT&BM MMU

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter

Introduction to System Programming

CS 153 Design of Operating Systems

Batch processing is a technique in which Operating System collects programs and data together in

Introduction to Computer Systems and Operating Systems

CS370 Operating Systems

Operating Systems. Lecture Course in Autumn Term 2015 University of Birmingham. Eike Ritter. September 22, 2015

To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

Operating Systems. Antônio Augusto Fröhlich LISHA/UFSC. December 20, 2008

Operating Systems. Introduction & Overview. Outline for today s lecture. Administrivia. ITS 225: Operating Systems. Lecture 1

CS370 Operating Systems

Chapter 1: Introduction. What is an Operating System? Overview Course (contd.) How do I spend my time? Computer System Components

Chapter 1: Introduction Dr. Ali Fanian. Operating System Concepts 9 th Edit9on

NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss

CSC 453 Operating Systems

06-Dec-17. Credits:4. Notes by Pritee Parwekar,ANITS 06-Dec-17 1

CONTENTS. Computer-System Structures

Computer Fundamentals : Pradeep K. Sinha& Priti Sinha

COSC243 Part 2: Operating Systems

Contents. Today's Topic: Introduction to Operating Systems

TOPIC 1. Following are some of important functions of an operating System. Memory Management. Processor Management. Device Management.

Chap 7, 8: Scheduling. Dongkun Shin, SKKU

Fundamental of digital computer

Lecture 9: MIMD Architectures

Operating System Review

CSCI 2132 Software Development. Lecture 2: Introduction to UNIX and Unix-like Operating Systems

Introduction. TDDI04, K. Arvidsson, IDA, Linköpings universitet Contents. What is an Operating System (OS)?

European University of Lefke. Instructor: Dr. Arif SARI

An Operating System History of Operating Systems. Operating Systems. Autumn CS4023

Lecture Topics. Announcements. Today: Advanced Scheduling (Stallings, chapter ) Next: Deadlock (Stallings, chapter

Chapter 2. OS Overview

Logistics. 1: Welcome and Overview. Topics. What is an operating system? Benefits of Operating Systems (1) Hardware Resources

Lecture 1 Introduction (Chapter 1 of Textbook)

Part I Overview Chapter 1: Introduction

GENERAL I ARTICLE. Operating Systems. 1. Objectives and Evolution. operating systems, and then we trace the evolution of operating

Computer-System Organization (cont.)

CSE Opera+ng System Principles

QUESTION BANK UNIT I

Reserves time on a paper sign-up sheet. Programmer runs his own program. Relays or vacuum tube hardware. Plug board or punch card input.

Operating Systems. I. Introduction. Eurecom

Timers 1 / 46. Jiffies. Potent and Evil Magic

Principles of Operating Systems CS 446/646

DM510 Operating Systems. Jacob Aae Mikkelsen

Operating Systems. Peter Druschel and Rodrigo Rodrigues MPI-SWS and Saarland University. Required readings: Silberschatz/Galvin: Chapters 1-3

Operating Systems CS3502 Spring 2018

Classic Systems: Unix and THE. Presented by Hakim Weatherspoon

Some popular Operating Systems include Linux, Unix, Windows, MS-DOS, Android, etc.

Introduction to OS (cs1550)

Introduction to Operating Systems

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation

Overview of Operating Systems

1: Welcome and Overview COM S 414. Last Modified: 9/2/ :04:21 PM

Introduction CHAPTER. Practice Exercises. 1.1 What are the three main purposes of an operating system? Answer: The three main puropses are:

OS - Introduction Ezio Bartocci Institute for Computer Engineering

MODULE 1. INTRODUCTION: COMPUTER & OPERATING SYSTEMS

Department of Computer applications. [Part I: Medium Answer Type Questions]

UNIT 1. INTRODUCTION: COMPUTER & OPERATING SYSTEMS

Table of Contents 1. OPERATING SYSTEM OVERVIEW OPERATING SYSTEM TYPES OPERATING SYSTEM SERVICES Definition...

Topics: Early systems and OS overview Skim Chapters 1-2 of SGG Read Chapter 1 of USP CS 3733 Operating Systems

When we start? 10/24/2013 Operating Systems, Beykent University 1

Transcription:

CSC 453 Operating Systems Lecture 1: An Introduction What Is an Operating System? An operating system is the software that serves as an interface between the user (or his/her software applications) and the computer s hardware.

What Is The Purpose Of An Operating System? The operating system provides an environment where a user or a group of users can use the resources of a computer easily and efficiently. The Components Of a Computer System Users Applications Operating System Utilities Computer Hardware Command Processors

The Operating System Is a Resource Allocator A computer system has several resources: CPU time Memory Disk Drives and the Files Stored On Them I/O Devices These resources have to be shared and the operating systems has to ensure that programs get the resources that they need The Operating System Is a Control Program Operating systems control the execution of a program: scheduling their use of CPU time allocation the area of memory that they use assigning their disk operations performing their input and output This is ensure their accurate and proper use of the computer system s resources.

Design Goals It is far easier to define an operating system by what it does than by what it is. An operating system has two main performance goals: the convenience of the user the efficient operations of the computer systems as a whole. Operating Systems and Computer Architecture The design and performance of the operating system is heavily dependent on the computer s architecture. Similarly, the desire to employ certain features of operating system design has influenced the design of many computers.

Historical Perspective: Early Machines The earliest computers were large machines operated directly by programmers controlling them from their consoles. Programmers had to load programs manually, monitor execution and write all the necessary software to enable them to use their input/output devices. The Start of Systems Programming Programmers developed software to perform commonly-used tasks such as: controlling input/output devices assembling, linking and loading programs. Programmers developed libraries of procedures that were commonly used to avoid having to rewrite procedures to perform the same jobs over and over again.

The Introduction of Compilers Compilers for FORTRAN, COBOL and other languages simplified programming but complicated computer operations. The biggest complication was increased setup time and made the use of the computer far less efficient The Next Step: The Professional Operator IDEA - Hire an operator!! The advantage is the more efficient use of computer time. as programs are run in batches, leading to the batch system. Eventually a program ( an operating system) replaced the human operator.

Simple Batch Systems Operating System User Program Loader Job Sequencer Control Card Interpreter Card Deck For a Batch Program //END Program Data //DATA FORTRAN Program //EXEC WATFOR //JOB

Offline Operation SPOOLing - Simultaneous Peripheral Operation On-Line Disk Card reader CPU Executing The SPOOLed Program Disk CPU

SPOOLed Output Disk CPU Printer Multiprogrammed Batched Systems Input/Output is S L O W... but... The CPU is fast... How do we avoid having the CPU sit idle?

Multiprogrammed Batched Systems IDEA!! Have the CPU start working on another job!! Memory Layout in a Multiprogrammed System Operating System Job 1 Job 2 Job 3

Historical Perspective: Atlas Atlas was designed at the University of Manchester in the 1950s. Atlas used a core memory as a cache to implement demand paging. Historical Perspective: THE THE was designed at the Technische Hogeschool at Eindhoven. THE was a batch system which used a layered structure and synchronized jobs concurrently using semaphores. THE employed the banker s algorithm to avoid deadlock.

Time-Sharing Systems Time-sharing systems allowed multiple users to work interactively on a computer. Time-sharing systems are more complex and expensive than batch systems and did not become common until the 1970s. Time-sharing systems take advantage of the great difference between CPU speed and interactive I/O speed. CTSS CTSS (Compatible Time-Sharing System) was designed at MIT in the early 1960s. It was implemented on an IBM 7090 and could support up to 32 interactive users.

MULTICS MULTICS was designed at MIT as an extension of the CTSS project. The goal was to create a time-sharing utility that could run continuously and use a large file system of shared programs and data. MULTICS was a jointed program of MIT, GE and AT&T Bell Labs running on a GE645. UNIX AT&T dropped out of the MULTICS project in 1969. Ken Thompson and Dennis Ritchie designed UNIX to contain many features of MULTICS s that they liked while making changes and enhancements. UNIX has influences most interactive operating systems created since then.

Personal Computers As hardware declined in price, it became practical to build computers for individual users. These became known as PCs, first appearing in the 1970s. PC operating systems were initially simple systems, lacking protection features of larger computers. PC Operating Systems As PCs became more powerful, their operating systems became more powerful as well. MS-DOS (a single tasking system) gave way to OS/2 and Windows.

Workstations The more powerful desktop machines had computing power equal to minicomputers and became known as workstations. These computers frequently used a version of UNIX as their operating system. Parallel Systems Most computers have one processors, but multiprocessor systems are becoming more common. These systems have their processors in close communications sharing the computer s bus, memory, clock and peripheral devices. These are called tightly-coupled systems.

Why Build Multiprocessor Systems? Increased throughput Their processors can share peripherals, cabinets, and power supplies. Increased realiability Graceful degradability providing service proportional to the surviving hardware Fault-tolerant - systems designed for graceful degradability Symmetric vs. Asymmetric Multiprocessing Symmetric multiprocessing Each processor runs the same copy of the operating system Asymmetric multiprocessing Each processor has a specialized task.

Distributed Systems Another recent trend is toward systems where processors do not share memory or a clock. These are called loosely-coupled systems or distributed systems. Why Distributed Systems? Resource sharing Computation speedup through load sharing Reliability Communication

Real-Time Systems Real-time systems are computer systems that have rigid time restrictions for completing many or all of their tasks. Examples includes: Automobile fuel injection systems Medical imaging systems Robots Hard vs. Soft Real-Time Systems Hard real-time systems must guarantee that critical tasks be completed on time. In soft real-time systems, critical real-time tasks get priority over other tasks and still needed to be bounded (they cannot wait indefinitely).