G53OPS Operating Systems Graham Kendall Operating Systems.

Slides:



Advertisements
Similar presentations
OPERATING SYSTEM INTRODUCTION
Advertisements

Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc
OS Components and Structure
Operating System Structures
Chap 2 System Structures.
Operating System Structure
Winter 2005 CMPE 151: Network Administration Lecture 2.
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.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Operating Systems - Introduction S H Srinivasan
Operating Systems.
Common System Components
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.
Ceng Operating Systems 1-1 Chapter 1: Introduction What is the aim of the subject? Why are OSes important? What is an OS? A bit of history Some basic.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Chapter 1 Introduction 1.1 What is an operating system
1 The development of modern computer systems Early electronic computers Mainframes Time sharing Microcomputers Networked computing.
1 Chapter 1: Introduction What is the aim of the subject? What is the aim of the subject? Why are OSes important? Why are OSes important? What is an OS?
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
System Calls 1.
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
Chapter 1. Introduction What is an Operating System? Mainframe Systems
SWE202 Fundamental of Operating System Lecture 1: Introduction Asst.Prof.Dr.Surasak Mungsing Faculty of Information Technology Sripatum University.
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
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,
1 Operating System Overview. 2 Today’s Objectives Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental.
Chapter 1 Introduction 1.1 What is an 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.
Contact Information Office: 225 Neville Hall Office Hours: Monday and Wednesday 12:00-1:00 E-Main: Phone:
MODERN OPERATING SYSTEMS Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 1 Introduction Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 6 System Calls OS System.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview Part 2: History (continued)
CE Operating Systems Lecture 3 Overview of OS functions and structure.
CY2003 Computer Operating Systems Lecture 01 Introduction Abir Hussain (JPB6.33,
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Chapter 1 Introduction to Operating System Part 1
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
CIS250 OPERATING SYSTEMS Chapter One Introduction.
MODERN OPERATING SYSTEMS Chapter 1 Introduction
Copyright © Curt Hill Operating Systems An Introductory Overview.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Copyright ©: Nahrstedt, Angrave, Abdelzaher1 Operating System Overview Tarek Abdelzaher Lawrence Angrave Vikram Adve.
Chapter 1 Introduction  What is an operating system  History of operating systems  The operating system zoo  Computer hardware review  Operating system.
2.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition System Programs (p73) System programs provide a convenient environment.
操作系统原理 OPERATING SYSTEM Chapter 1 Introduction 概 述.
Concepts and Structures. Main difficulties with OS design synchronization ensure a program waiting for an I/O device receives the signal mutual exclusion.
Midterm OPERATING SYSTEM. Objectives At the end of the course, the student should be able to: Define the operating system; Demonstrate the abstract view.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview: Using Hardware.
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.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved OPERATING SYSTEMS DESIGN.
CHAPTER 1 INTRODUCTION TO OPERATING SYSTEMS
Introduction to Operating Systems Concepts
Operating System Structure
Evolution of Operating Systems
Operating System Structure
Introduction to Operating System (OS)
Chapter 1: Introduction
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Chapter 1 Introduction to Operating System Part 5
Outline Chapter 2 (cont) OS Design OS structure
OS Components and Structure
System calls….. C-program->POSIX call
Operating System Introduction
Presentation transcript:

G53OPS Operating Systems Graham Kendall Operating Systems

G53OPS Operating Systems Introduction to Operating Systems This section of the course based on (Tanenbaum, 1992) Chapter 1 Module Content –What is an Operating System? –History of Operating Systems –Operating System Concepts –Operating System Structure References –Levy, S Hackers. –Tanenbaum, A., S Modern Operating Systems. Prentice Hall.

G53OPS Operating Systems Introduction to Operating Systems Give three functions of an operating system

G53OPS Operating Systems What is an Operating System? - 1 Word ProcessorSpreadsheetAccounting CompilersEditorsCommand Interpreter Operating System Machine Language Microprogramming Physical Devices Hardware Systems Programs Application Programs

G53OPS Operating Systems What is an Operating System? - 2 Physical Devices –Integrated circuits, cathode ray tubes, wire etc. Word ProcessorSpreadsheetAccounting CompilersEditorsCommand Interpreter Operating System Machine Language Microprogramming Physical Devices Hardware Systems Programs Application Programs

G53OPS Operating Systems What is an Operating System? - 2 Microprogramming –Firmware –Provides basic operations that allow communication with the physical devices –Normally in Read Only Memory (and that is why it is called firmware) Word ProcessorSpreadsheetAccounting CompilersEditorsCommand Interpreter Operating System Machine Language Microprogramming Physical Devices Hardware Systems Programs Application Programs

G53OPS Operating Systems What is an Operating System? - 3 Machine Language –Defines the instruction set of the computer –Software but is considered as hardware Word ProcessorSpreadsheetAccounting CompilersEditorsCommand Interpreter Operating System Machine Language Microprogramming Physical Devices Hardware Systems Programs Application Programs

G53OPS Operating Systems What is an Operating System? - 3 Operating System –Layer between the hardware and the software –Allows us to use the hardware in a user friendly way –Layer of abstraction Word ProcessorSpreadsheetAccounting CompilersEditorsCommand Interpreter Operating System Machine Language Microprogramming Physical Devices Hardware Systems Programs Application Programs

G53OPS Operating Systems Other Views of an Operating System - 1 A Resource Manager –Operating System is seen as a way of providing the users of the computer with the resources they need at any given time. –Some resource requests may not be able to be met (memory, CPU usage etc.) but the operating system is able to deal with scheduling problems such as these. –Other resources have a layer of abstraction placed between them and the physical resource (e.g. a printer).

G53OPS Operating Systems Other Views of an Operating System - 2 Extended or Virtual Machine –The operating system is seen as a way of not having to deal with the complexity of the hardware (e.g. floppy disc controller).

G53OPS Operating Systems History of Operating Systems - 1 Charles Babbage - Analytical Engine. –Attributed with designing the first digital computer –Never built the computer –No operating system. Charles Babbage - 26th December 1791 to 18th October 1871

G53OPS Operating Systems History of Operating Systems - 1 First Generation ( ) –Developed during the war –Vacuum Tubes –Many people were developing automatic calculating machines –Filled entire rooms –No operating system –No programming languages –Had to physically wire the computer to carry out the intended instructions

G53OPS Operating Systems History of Operating Systems - 2 Second Generation ( ) –Transistors –More reliable –Became feasible to manufacture computers that could be sold to customers –Job of computer operator invented –Batch jobs introduced in order to improve throughput (via tapes) –Can be seen as the first operating system

G53OPS Operating Systems History of Operating Systems - 3 Third Generation ( ) –Integrated Circuits as a replacement for transistors –IBM introduced its System/360 range and ICL introduced its 1900 range –The start of multiprogramming which led to a need for a more complex operating system – but no virtual memory –Spooling – both input and output –Concept of time sharing introduced which allows interactive working –Operating systems had to become a lot more complex in order to deal with all these issues

G53OPS Operating Systems History of Operating Systems - 4 Fourth Generation (1980-present) –Large Scale Integration (LSI) –Led directly to the development of the personal computer (PC) –One of the requirements for the original IBM PC was an operating system - Bill Gates supplied MS-DOS –On non-Intel processors, the UNIX operating system was also being used.

G53OPS Operating Systems History of Operating Systems - 7 Another View –First, Second and Third generation as before and for same reasons –Fourth generation started in 1971 with the introduction of LSI, then VLSI (Very Large Scale Integration) and then ULSI (Ultra Large Scale Integration) –Really, just arguing about when the PC revolution started. Was it in the early 70’s when LSI first became available? Or was it in 1980, when the IBM PC was launched?

G53OPS Operating Systems History of Operating Systems - 5 Fifth Generation (Sometime in the future) What will constitute a fifth generation computer?

G53OPS Operating Systems History of Operating Systems - 5 Fifth Generation (Sometime in the future) –Computer generations were influenced by new hardware (vacuum tubes, transistors, integrated circuits and LSI). –Fifth generation may break with that tradition –One view is that a fifth generation computer will interact with humans in a way that is natural to us Computers will be able to reason in a way that imitates humans –Being able to accept (and understand!) the spoken word and carry out reasoning is complex, requiring advances in software and maybe hardware

G53OPS Operating Systems History of Operating Systems - 6 Fifth Generation (Sometime in the future) What advances will have to be made to allow a fifth generation computer to be realised?

G53OPS Operating Systems History of Operating Systems - 6 Fifth Generation (Sometime in the future) –Advances will be needed in AI including NLP –Maybe need parallel processing –Maybe a non-silicon computer –The first time a generation has not been motivated by advances in hardware

G53OPS Operating Systems Case Study – 1 (ICL Mainframe Operating Systems) Manual Executive –Introduced with its 1900 range –Manual operating system –Operators had to load and run each program

G53OPS Operating Systems Case Study – 2 (ICL Mainframe Operating Systems) George 1/2/2+ –GEneral ORGanisational Environment –Ran “on top” of manual exec - so it was not an operating system as such –Allowed you to submit jobs to the machine and G2+ would schedule them –Batch programs together into a single job –Parameterised macros (or JCL – Job Control Language) allowed automation of tasks Submit many jobs at the same time so that G2+ would run them one after another –Adjustable scheduling algorithm (via the operators console) –Other scheduling factors (e.g. tape decks or memory) –Under G2+ the operators still look after individual jobs

G53OPS Operating Systems Case Study – 3 (ICL Mainframe Operating Systems) George 3/4 –Operators no longer looked after individual jobs. Instead they looked after the system –Jobs could be submitted via interactive terminals by a scheduling team –Development staff could issue batch jobs and also runs jobs in an interactive environment. –Any problems were referred to development or technical staff

G53OPS Operating Systems Case Study – 4 (ICL Mainframe Operating Systems) George 3/4 –Operators, in some peoples opinion were little more than “tape monkeys” –G3 was an operating system in its own right –To use the machine you had to run the job in a user –The Job Control Language (JCL) was much more extensive than that of G2+. –It allowed interactive sessions –It had a concept of filestore

G53OPS Operating Systems Case Study – 5 (ICL Mainframe Operating Systems) VME (Virtual Machine Environment) –Still the operating system used on ICL mainframes today – and the foreseeable future –VME creates virtual machines that jobs run in. If you log onto VME, you will create a virtual machine. –VME is written to cater for the many different workloads that mainframes have to perform –Job control language which (SCL) is a lot more sophisticated

G53OPS Operating Systems Case Study – 6 (ICL Mainframe Operating Systems) VME (Virtual Machine Environment) –Still concept of filestore – but all disc based –Amount of filestore available to users or group of users is under the control of the operating system (and thus the technical support teams). –Like G3, the operators control the entire system –Move towards lights out working.

G53OPS Operating Systems Operating System Concepts - 1 System Calls Each system call has a procedure associated with it so that system calls can be done in a familiar way. The procedures places the parameters into registers and informs the operating system OS is informed via a TRAP instruction (sometimes known as a kernel call or a supervisor call).

G53OPS Operating Systems Operating System Concepts - 2 CPU switches from user mode to kernel (or supervisor) mode After carrying out the work the operating system will return a result in the same way as a user written function written in a high level language. Example of an operating system call (via a procedure) is –count = read(file, buffer, nbytes); Use system calls to manipulate objects

G53OPS Operating Systems Operating System Concepts - 2 Give some examples of processes that should only be allowed in kernel (supervisor) mode Disable all interrupts Set the time of day Change the memory map

G53OPS Operating Systems Operating System Concepts - 3 Processes –A running program with all the other information that is needed to control its execution –Needs to be able to start a process from exactly the same point as it was left. –Process information held in a process table. –A process may create a child process. –One of the main tasks of an operating system is to schedule processes –Processes may also communicate with other processes. The OS must deal with this.

G53OPS Operating Systems Operating System Concepts - 4 Files System calls to (for example) create files, delete files, move files, rename files, copy files, open files, close file, read files, write files. Files and Directories

G53OPS Operating Systems Operating System Concepts - 5 Example of abstraction –Text and binary files –Standard input and standard output –Pipes. DIR | SORT –Redirection DIR > dir.txt

G53OPS Operating Systems Operating System Concepts - 6 The Shell Allows the user to interact with the OS For example, by means of a CLI or a graphical user interface Is the shell part of the OS. If not why not?

G53OPS Operating Systems Operating System Concepts - 6 Is the shell part of the OS. If not why not? No Less flexibility Making it a separate program allows different users to have different shells In general, the more code outside of the OS, the better

G53OPS Operating Systems Operating System Concepts - 6 The Shell Shell is not part of the operating system but worth mentioning as it makes heavy use of operating system features Example (in UNIX this time) –cat file1 file2 file3 | sort > /dev/lp &

G53OPS Operating Systems Operating System Structure - 1 How is an OS structured internally (up to now – only an external view)? Monolithic Systems No structure at all OS is simply a collection of procedures OS is constructed by compiling all the procedures into one huge monolithic system But they can naturally fall into a structure

G53OPS Operating Systems Operating System Structure - 2 Main Procedure Service Procedures Utility Procedures

G53OPS Operating Systems Operating System Structure - 3 Layered Systems –Layer 0was responsible for the multiprogramming aspects of the operating system. It decided which process was allocated to the CPU. It dealt with interrupts and performed the context switches when a process change was required. –Layer 1 was concerned with allocating memory to processes. –Layer 2 deals with inter-process communication and communication between the operating system and the console.

G53OPS Operating Systems Operating System Structure - 4 Layered Systems –Layer 3 managed all I/O between the devices attached to the computer. This included buffering information from the various devices. –Layer 4 was where the user programs were stored. –Layer 5 was the overall control of the system (called the system operator)

G53OPS Operating Systems Operating System Structure - 5 Moving through the hierarchy (from 0 to 5) you do not worry about the layers you have “left behind” For example, user programs (level 4) do not have to worry about where they are stored in memory or if they are currently allocated to the processor or not, as these are handled in level 0 and level 1.

G53OPS Operating Systems Operating System Structure - 6 Virtual Machines Virtual machine? –MS-DOS prompt from with Windows 95/98/NT –ICL’s mainframe operating system is called VME (Virtual Machine Environment) Both of these (Windows 95/98/NT and VME) are recent developments VM/370 was one of the first OS’s to provide a virtual machine to each user Each user was even able to run different operating systems

G53OPS Operating Systems Operating System Structure - 7 VM/ Bare Hardware Virtual 370’s Hardware Instructions TRAP

G53OPS Operating Systems Operating System Structure - 8 Client-Server Model Server provides services to any client that requests it Model is heavily used in distributed systems –E.g. print server or database Operating systems can be designed as a client/server

G53OPS Operating Systems Operating System Structure - 9 Benefits include –Can result in a minimal kernel –As each server is managing one part of the operating system, the procedures can be better structured and more easily maintained. –If a server crashes it is less likely to bring the entire machine down as it won’t be running in kernel mode. Only the service that has crashed will be affected. Client Process Process Server File ServerMemory Server ……… Server Kernel User Mode Kernel Mode Message sent from client to server

G53OPS Operating Systems Graham Kendall End of Operating Systems