Ainsley Smith Tel: 0161 953 5995 Ex 3374 Ainsley_smith@mancat.ac.uk http://asmithatmancat.wordpress.com/ Ainsley_smith@mancat.ac.uk.

Slides:



Advertisements
Similar presentations
What Is An Operating System?. Before Operating Systems u What do you do with just computer hardware? –If someone gives you a computer with no software.
Advertisements

Operating Systems An operating system is a set of programs that controls how the hardware of a computer works. An operating system provides a means of.
Maninder Kaur OPERATING SYSTEM Maninder Kaur 11 Oct 2010.
CS 345 Computer System Overview
Lecture 1: History of Operating System
Chapter 3 Operating Systems. Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems 3.1 The Evolution of Operating Systems 3.2 Operating System.
©Brooks/Cole, 2003 Chapter 7 Operating Systems Dr. Barnawi.
A. Frank - P. Weisberg Operating Systems Evolution of Operating Systems.
Operating systems CHAPTER 7.
Operating Systems  By the end of this session, you will know: What an Operating System is. The functions it performs.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
 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.
©Brooks/Cole, 2003 Chapter 7 Operating Systems. ©Brooks/Cole, 2003 Define the purpose and functions of an operating system. Understand the components.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Chapter 7 Operating Systems. Define the purpose and functions of an operating system. Understand the components of an operating system. Understand the.
Operating Systems.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Chapter 7 Operating Systems Foundations of Computer Science  Cengage Learning 1.
Copyright © Curt Hill More on Operating Systems Continuation of Introduction.
An operating system (OS) is a collection of system programs that together control the operation of a computer system.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview: Using Hardware.
Operating Systems p.describe the characteristics of knowledge-based systems; q.describe the purpose of operating systems; r.describe the characteristics.
CT101: Computing Systems Introduction to Operating Systems.
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.
Multiprogramming. Readings r Chapter 2.1 of the textbook.
CHAPTER 1 INTRODUCTION TO OPERATING SYSTEMS
Applied Operating System Concepts
DDC 2223 SYSTEM SOFTWARE DDC2223 SYSTEM SOFTWARE.
Introduction to Basic OS Concepts
Nature & Types of Software
Chapter 13 The Function of Operating Systems
Processes and threads.
2. OPERATING SYSTEM 2.1 Operating System Function
Operating System.
Component 2 6G, H, I, J, K.
Evolution of Operating Systems
Advanced OS Concepts (For OCR)
Operating Systems (CS 340 D)
Sujata Ray Dey Maheshtala College Computer Science Department
OPERATING SYSTEMS CS3502 Fall 2017
The Operating System Nick Sims.
THE OPERATION SYSTEM The need for an operating system
Introduction to Operating System (OS)
TYPES OFF OPERATING SYSTEM
Chapter 1: Introduction
Chapter 1: Introduction
Systems Software Keywords Operating Systems
חוברת שקפים להרצאות של ד"ר יאיר ויסמן מבוססת על אתר האינטרנט:
Operating System Architecture OS
Operating Systems.
Operating Systems.
Operating System Concepts
Sujata Ray Dey Maheshtala College Computer Science Department
Chapter 1 Introduction to Operating System Part 2
Operating System Introduction.
Operating Systems p.describe the characteristics of knowledge-based systems; q.describe the purpose of operating systems; r.describe the characteristics.
Introduction to Operating Systems
The Main Features of Operating Systems
LO2 – Understand Computer Software
Software - Operating Systems
Processes and Process Table
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Chapter 3: Processes Process Concept Process Scheduling
Operating System Overview
Chapter 1: Introduction
Operating System Concepts
An Introduction to Operating Systems
Necessary Background for OS
Presentation transcript:

Ainsley Smith Tel: 0161 953 5995 Ex 3374 Ainsley_smith@mancat.ac.uk http://asmithatmancat.wordpress.com/ Ainsley_smith@mancat.ac.uk

Unit 15 Operating Systems and Systems Software Ainsley Smith

Introduction to Operating Systems - last week Computer software Can be divided into what two main categories:? Application software Application software is generally what we think of when someone speaks of computer programs. System software System software acts as an interface between the hardware of the computer and the application software that users need to run on the computer.

Introduction to Operating Systems - last week The most important type of system software is ? The operating system. There are two main types of operating systems ? ROM based Disc based. Advantages / Disadvantages ?

Introduction to Operating Systems - last week

Introduction to Operating Systems - last week The operator would normally have a lot of programs submitted to him and he would put the program in a queue, ready to be processed. So the operator has ended up with a batch of jobs to feed into the computer. The special cards that the operator adds is part of another language that the computer understands called the Job Control Language or JCL for short. This set of programs soon turned into an Operating System.

Introduction to Operating Systems With the OS doing many things that initially was done manually it meant that a lot more could be achieved. Consequently records had to be kept as to who was doing what and when and what with. All this was done, again by the OS, and kept in files, called logs.

Introduction to Operating Systems As technology advanced, then serially processing the jobs soon became a problem. What was needed was a means by which more than one job (program) can be held in memory at a time The OS switching between them.

Introduction to Operating Systems This would then speed up the time a batch could be processed. The only real limitation would be the size of memory. The Multiprogramming Operating System was born. but greatly complicated the OS itself. However the term Multitasking Operating System is the term we use nowadays.

Introduction to Operating Systems At this stage punched cards would have gone, and programs would have been written at terminals. A terminal is a computer connected to the main computer. The terminal would not have any memory to talk of, but would be just a means of communicating with the main computer. Many terminals would be connected to the main frame in a multi-user environment.

Windows Terminal Services

Introduction to Operating Systems Multitasking ? Multitasking is the process of letting the operating system perform multiple task at what seems to the user simultaneously. In the case of a computer with a single CPU, only one task is said to be running at any point in time, meaning that the CPU is actively executing instructions for that task

Introduction to Operating Systems Multitasking solves the problem by scheduling which task may be the one running at any given time, and when another waiting task gets a turn. Even on computers with more than one CPU (called multiprocessor machines), multitasking allows many more tasks to be run than there are CPUs.

Introduction to Operating Systems To illustrate this, consider two scenarios in a non-multitasking environment. The first involves a highly maths intensive program:

Maths intensive program: CPU Time CPU Active CPU Inactive The CPU is active for a lot of the time and cannot be used for other purposes. The CPU is being used efficiently for this task.

Introduction to Operating Systems Now consider two tasks which have a lot of inactive time (they could be waiting for keyboard input, or a person could be writing a program at a terminal).

Two tasks which have a lot of inactive time B CPU Time CPU Active CPU Inactive The CPU is waiting around for something to happen. The CPU is not being used very efficiently at all.

The CPU is inactive 55% of the time The following diagram shows three jobs (programs) running in Non multitasking Job 1 Job 2 Job 3 CPU Waiting w w w w w CPU Active CPU Printer Active Printer CPU Time The CPU is inactive 55% of the time not very efficient

Now consider a multitasking O/S with the three same jobs CPU Waiting CPU Active Printer Active Job1 Job2 Job3 CPU Activity Printer Activity When Job 1 is waiting for a peripheral the CPU could start Job 2. When this waits for a peripheral the CPU could start Job 3. When Job 3 waits the CPU could then go back to Job 1

Now consider a multitasking O/S with these same jobs. When Job 1 is waiting for a peripheral the CPU could start Job 2. When this waits for a peripheral the CPU could start Job 3. When Job 3 waits the CPU could then go back to Job 1

Introduction to Operating Systems Notice that the CPU is active for the same amount of time, but finishes all three jobs quicker. Also there is no time when the CPU is inactive. This is called Scheduling and very complex routines have been written to perform the make this efficient.

Introduction to Operating Systems Job Priorities Some jobs will be more ‘important’ than others. For example a job with a lot of input would have a high priority. The user would not want to spend a lot of time waiting for the computer. A job with hardly any user input would be classed as low priority. Each job will be given a priority rating . This is used when other jobs are loaded into the system and is called Scheduling

Introduction to Operating Systems Scheduling The Scheduling process can be split into two – the High Level Scheduler and the Low Level Scheduler (or Dispatcher).

Introduction to Operating Systems The High Level Scheduler Remember that currently we are talking about a main frame that is running many different programs, perhaps from different terminals or perhaps a batch of jobs. Not all the programs can be loaded into memory at the same time, so are placed in a queue somewhere (perhaps on tape or disc) ready for use later on.

Introduction to Operating Systems The High Level Scheduler determines which jobs are to be placed in memory and which to remove. This is achieved by looking at the priorities of the tasks. However this all depends upon various other criteria: There is sufficient room for it in memory; All associated input files are on-line; The necessary peripherals are also on-line. If the job cannot fulfil the above then it is not run and left in the queue

Load Job No Enough Memory? Yes No Files On Line? Yes No Printer On Line? Yes Process Job

Introduction to Operating Systems The Low Level Scheduler (or Dispatcher) When a program is run machine code instructions will be executed. Each instruction will normally produce a series of tasks to be accomplished. This set of tasks is called a process.

Introduction to Operating Systems When a job has been loaded into memory the dispatcher determines which process is to be sent to the CPU. To achieve this the dispatcher must record the status of each process, selecting from the following possibilities

Introduction to Operating Systems The Dispatcher has a vital role within the OS. It has to switch different processes so that each has a fair share of CPU time, but giving most time to the important ones. It also has to make it appear that the CPU is being used solely by one user, even though there may be quite a few logged on.

Introduction to Operating Systems Over the years several strategies have been developed to achieve the most efficient Dispatcher. All have been tailored to a particular system – a network will have different needs compared to a palm top for instance