Operating Systems Concepts. Chapter 1: Introduction. What is an operating system? Why might I want a virtual machine?



Similar documents
3 - Introduction to Operating Systems

Chapter 5: System Software: Operating Systems and Utility Programs

CHAPTER 15: Operating Systems: An Overview

Fall Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

Operating Systems Introduction

Operating Systems: Basic Concepts and History

Components of a Computing System. What is an Operating System? Resources. Abstract Resources. Goals of an OS. System Software

Gildart Haase School of Computer Sciences and Engineering

Operating Systems 4 th Class

Operating System Structures

Chapter 7A. Functions of Operating Systems. Types of Operating Systems. Operating System Basics

Introduction to Virtual Machines

Terminal Server Software and Hardware Requirements. Terminal Server. Software and Hardware Requirements. Datacolor Match Pigment Datacolor Tools

How To Understand The History Of An Operating System

Principles of Operating Systems CS 446/646

How To Understand And Understand An Operating System In C Programming

Computers: Tools for an Information Age

Operating Systems Concepts: Chapter 7: Scheduling Strategies

Overview and History of Operating Systems

(Advanced Topics in) Operating Systems

Chapter 1: Introduction. What is an Operating System?

Understanding the OS Architecture and Linux History. Zhiqiang Lin

Comparing Free Virtualization Products

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

Management Challenge. Managing Hardware Assets. Central Processing Unit. What is a Computer System?

lesson 1 An Overview of the Computer System

Operating Systems. Rafael Ramirez (T, S)

Running Windows on a Mac. Why?

CPS221 Lecture: Operating System Structure; Virtual Machines

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

OPERATING SYSTEM SERVICES

Chapter 5 Busses, Ports and Connecting Peripherals

Microsoft Windows Apple Mac OS X

PARALLELS SERVER BARE METAL 5.0 README

Lecture 6: Operating Systems and Utility Programs

OS Concepts and structure

Kernel. What is an Operating System? Systems Software and Application Software. The core of an OS is called kernel, which. Module 9: Operating Systems

4.1 Introduction 4.2 Explain the purpose of an operating system Describe characteristics of modern operating systems Control Hardware Access

Parallels Desktop for Mac

Click to view Web Link, click Chapter 8, Click Web Link from left navigation, then click BIOS below Chapter 8 p. 395 Fig. 8-4.

Chapter 8 Operating Systems and Utility Programs

Example of Standard API

Programming for GCSE Topic H: Operating Systems

Contents. Chapter 1. Introduction

Tekla Structures 18 Hardware Recommendation

Sage Grant Management System Requirements

Types Of Operating Systems

System Requirements. SuccessMaker 5

Workstation Virtualization Software Review. Matthew Smith. Office of Science, Faculty and Student Team (FaST) Big Bend Community College

Microsoft Windows Apple Mac OS X

Computer Science 4302 Operating Systems. Student Learning Outcomes

How To Understand The Principles Of Operating Systems

Upon completion of this chapter, you will able to answer the following questions:

Overview of Operating Systems Instructor: Dr. Tongping Liu

VMWare Workstation 11 Installation MICROSOFT WINDOWS SERVER 2008 R2 STANDARD ENTERPRISE ED.

Introduction to Computer Administration. System Administration

SOFTWARE TECHNOLOGIES

Learning Objectives. Chapter 1: Networking with Microsoft Windows 2000 Server. Basic Network Concepts. Learning Objectives (continued)

A Comparison of VMware and {Virtual Server}

After studying this lesson, you will have a clear understanding of, what an Operating System is. functions of an Operating System

12. Introduction to Virtual Machines

Networking Operating Systems (CO32010)

Operating Systems Overview As we have learned in working model of a computer we require a software system to control all the equipment that are

CS420: Operating Systems OS Services & System Calls

Chapter 2: OS Overview

E-Business Technologies

NETWORK OPERATING SYSTEMS. By: Waqas Ahmed (C.E.O at Treesol)

Unit 10 : An Introduction to Linux OS

Chapter 5 System Software: Operating Systems and Utility Programs

Why study Operating Systems? CS 372. Why study. Why study. Introduction to Operating Systems

Chapter 6, The Operating System Machine Level

New Mexico Broadband Program. Basic Computer Skills. Module 1 Types of Personal Computers Computer Hardware and Software

COMMUNICATION SERVER 1000 COMMUNICATION SERVER 1000 TELEPHONY MANAGER

Virtuoso and Database Scalability

Understanding the Performance of an X User Environment

About Parallels Desktop 7 for Mac

Hardware Requirements

Mobile Devices and Systems Lesson 02 Handheld Pocket Computers and Mobile System Operating Systems

Imaging Computing Server User Guide

System requirements for MuseumPlus and emuseumplus

SNOW LICENSE MANAGER (7.X)... 3

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:

Ways to Use USB in Embedded Systems

Item Minimum Required Recommended Notes

CSE 120 Principles of Operating Systems. Modules, Interfaces, Structure

PARALLELS SERVER 4 BARE METAL README

Legal Notices Introduction... 3

A Comparison of Distributed Systems: ChorusOS and Amoeba

Components of a Computer System

Operating Systems. Design and Implementation. Andrew S. Tanenbaum Melanie Rieback Arno Bakker. Vrije Universiteit Amsterdam

Outline. Operating Systems Design and Implementation. Chap 1 - Overview. What is an OS? 28/10/2014. Introduction

Terminal Server Guide

Operating System Fundamentals Robert Power & Robert Ford

System Requirements and Platform Support Guide

CAMAvision v18.5.x System Specification Guide 7/23/2014

Transcription:

Operating Systems Concepts An introduction to the software that makes computers usable, ensures that systems can be made secure, and provides the environment for software to be a marketable commodity Olav Beckmann Huxley 449 http://www.doc.ic.ac.uk/~ob3 Acknowledgements: There are lots. See end of this chapter. Home Page for the course: http://www.doc.ic.ac.uk/~ob3/teaching/operatingsystems/ This is only up-to-date after I have issued printed version of the notes, tutorials, solutions etc. Chapter 1: Introduction What is an operating system? Why do I care? How can I pass this course anyway? Why does the lecturer seem to think this is fun? Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 1 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 2 What is an operating system? Why might I want a virtual machine? Home PC Pocket PC Multi-user server The OS is software - it s a program It virtualises your computer Your computer needs to be virtualised Because that s what makes it possible to buy and sell computer programs And that s a major economic activity Intel Pentium 4 512 MB RAM 100 GB SATA disk 100 Mb/s ethernet, connected to ADSL USB wireless mouse and keyboard Transmeta Crusoe 128 MB RAM 1GB Flash EPROM 2Mb/s wireless ethernet touch screen pointer Intel Itanium II 1024MB RAM 256GB RAID Disk 1Gb/s ethernet accessed via network Machines come in all shapes and sizes I want to sell software which can run on whatever machine the customer happens to have Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 3 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 4

apple.com Virginia Tech Why might I want a virtual machine? The virtual machine as a standard platform Home PC Pocket PC Multi-user server Home PC Pocket PC Multi-user server Microsoft Windows Microsoft Windows Microsoft Windows Linux Linux Linux Machines come in all shapes and sizes But they all run the same software The operating system makes each of the diverse physical machines behave like an idealised, virtual machine The nice thing about standards is that there are so many to choose from... Not all operating systems are equally good Some are specially suited to particular purposes Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 5 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 6 PowerPC G4 Processor Multiple device connections Portable environment Runs Mac OS X Example: Diverse Hardware 1100 Nodes Each node has two 2.3 GHz PowerPC 970FX processors 14 th most powerful computer in the world in June 2005 according to www.top500.org Nodes run Mac OS X What are the benefits of virtualising these machines? Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 7 Operating Systems as Virtual Machines An operating system: Manages a system s resources so that they are used efficiently and safely, e.g., CPU(s) memory devices (modems, disks, network interfaces, video interfaces) Q: Example where efficiency matters? Safety? Presents a virtual machine that provides convenient abstractions, e.g., files rather than disk locations (device independence) inter-process synchronisation and communication. Hardware + OS = Usable Virtual Machine Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 8

Microsoft: Windows ME, Windows 2000, Windows CE Linux BSD (FreeBSD, NetBSD) Sun: Solaris IBM: AIX Various kinds of Unix Compaq: Tru64 Unix, OpenVMS Hewlett-Packard: HP-UX Apple: MacOS-8, MacOS-X Symbian: EPOC PalmOS Designed for handhelds QNX VXWorks Embedded real-time LynxOS MVS, AS/400 Many many more, mostly more-or-less Unix/POSIX compatible Literally thousands of variants and research prototypes Sun (again): the Java Virtual Machine There are lots Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 9 Opening up the software market More than 90% of all software products sold are designed for just one virtual machine Millions of US$ $40,000 $35,000 $30,000 $25,000 $20,000 $15,000 $10,000 $5,000 $0 Microsoft Corporation Revenue and Operating Expenditure FY85* FY86* FY87* FY88* FY89* FY90* FY91* FY92* FY93* FY94* FY95* FY96* FY97* FY98* FY99* FY00* FY01* FY02 FY03 FY04 FY05 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 10 Year Revenue Operating Expenditure Source: http://www.microsoft.com/msft/history.mspx This course What is an OS? What terminology is involved in understanding OS issues? What are the different kinds of OS? How does an OS work? What principles underly OS operation? What does an OS look like under the bonnet? How can I find out more? Recommended textbook Modern Operating Systems (2nd Ed), Andrew S Tanenbaum Vrije Universiteit Amsterdam ((Andrew Tanenbaum is also behind http://www.electoral-vote.com/, for those who are interested in US Politics )) This course is not a substitute for reading the book. Other books: Operating Systems, 3 RD edition, Gary Nutt (Addison Wesley) Operating System Concepts, 6 th edition, Silberschatz, Galvin and Gagne Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 11 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 12

Read books The point of this course is to help you become familiar with a classic, authoritative textbook The exam is designed to test your understanding and ability to apply it to new ideas Some exam questions will introduce an idea not covered in the course It will ask you to explore the idea using what you have learned Of course if you read a good book, you might find you already know all about it! History of Operating Systems * Material on History slides from Tanenbaum book website First generation 1945-1955 vacuum tubes, plug boards Second generation 1955-1965 transistors, batch systems Third generation 1965 1980 ICs and multiprogramming Fourth generation 1980 present personal computers Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 13 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 14 What did the first operating system look like? History of Operating Systems 1945 to 1955 Vacuum tubes and plug boards No operating system Human operators Early batch system bring cards to 1401 read cards to tape put tape on 7094 which does computing put tape on 1401 which prints output Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 15 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 16

1956 to 1965 Transistors and batch systems Clear distinction between designers, builders, operators, programmers, and maintenance personnel I/O channel Read ahead / spooling Interrupts/ exceptions Minimal protection Libraries / JCL History of Operating Systems Structure of a typical FMS job 2 nd generation Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 17 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 18 1965 to 1980 ICs and Multiprogramming, System 360 and S/370 family of computers, Spooling (simultaneous peripheral operation on-line), Time sharing, On-line storage for System programs, User programs and data, Program libraries, Virtual memory, Multiprocessor configurations e.g. MULTICS History of Operating Systems (4) Multiprogramming system three jobs in memory 3 rd generation Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 19 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 20

1980-now Personal computers and workstations MS-DOS and Unix Massively parallel systems Pipelining Array processing / SIMD General multiprocessing / MIMD Symmetric multiprocessing / SMD Any process and any thread can run on any available processor Computer networks (communication aspect) -- network operating systems Distributed computing -- distributed operating systems Photo taken from Dennis Ritchie s website Cray 2 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 21 Dennis Ritchie and Ken Thompson, originators of UNIX Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 22 So what s the next (current?) wave? Connection Machine 5 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 23 Ubiquitous Computing Involves many disciplines. Inspired by the social scientists, philosophers, and anthropologists paradigm shift? currently we expect the user to find ways to use the computer however we currently do not emphasise how the computer can find its own way to serve the user focus on HCI focus on security, privacy big brother? Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 24

Current Technology DoCoMo video phone Wearable Wearable or luggable? Laptop Best friend LCD Jacket Mobile phone / PDA Personal digital assistant (PDA) Thanks to M. Sloman for this slide Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 25 Designer Gear Thanks to M. Sloman for this slide Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 26 Intelligent Environment Fridge and cupboards tracks consumption and reorder your groceries Your car computer reminds you to pick up your order on the way home when you are near the supermarket. Intelligent Environment - 2 Lights, air conditioning, TV automatically switch on and off when you enter or leave rooms Sit on your favourite chair and TV switches on to the program you usually watch at this time of the day Use communicator/pda for phone, remote control, keys payments, passport, health records, authenticator. Route input from virtual keyboard to nearest suitable display. Automatic detection of new items to control and physical layout in a room or office, using computer vision. Thanks to M. Sloman for slides Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 27 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) Thanks 2005/ 06 to M. Sloman Chapter for 1 slides 28

The Operating System Zoo Mainframe operating systems Server operating systems Multiprocessor operating systems Personal computer operating systems Real-time operating systems Embedded operating systems Smart card operating systems Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 29 What is an operating system? An OS is a program. Almost all Operating Systems are written in C or C++ The job of an OS is to load and run other programs These application programs have to be able to draw on the screen interact via keyboard, mouse etc access the hard disk (access your files) communicate with other application programs The OS should provide a consistent way to do this, which works on whatever hardware you have Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 30 An OS provides a virtual machine Provides a virtual machine for applications to run on which provides consistent interface to devices and services so when you sell your software in the supermarket, it should work on all potential customers machines Is there a limit? What might make it difficult? Challenges to the VM approach If the machine is too slow to run the application, there is nothing the OS can do to make that customer buy it Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 31 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 32

Overcoming challenges to the VM approach Most OSs can solve this problem Later in this course you will see how virtual memory works, by paging data to and from the hard disk A program which needs 100MBytes of virtual memory can run on a machine with just 10MBytes of physical memory But it might run rather slowly Overcoming challenges to the VM approach Fixed with virtual memory and paging What if the machine is already running lots of other application programs? Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 33 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 34 Overcoming challenges to the VM approach Fixed with virtual memory and paging What if the machine is already running lots of other application programs? We need the processor to switch from one process to another regularly, using a timer to interrupt the processor dividing its time fairly, according to each application s needs time-slicing, scheduling and priority; see later in course Overcoming challenges to the VM approach Fixed with virtual memory and paging What if the machine is already running lots of other application programs? Fixed with interrupts, time-slicing, scheduling, priority What if some of those other programs behave maliciously, e.g. trying to steal your secrets? OS has privileged control over address translation hardware each application allowed access only to own data and data its (authenticated) user is allowed to access Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 35 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 36

Overcoming challenges to the VM approach Fixed with virtual memory and paging What if the machine is already running lots of other application programs? Fixed with interrupts, time-slicing, scheduling priority What if some other programs misbehave? Fixed with privileged execution mode, address translation, authentication, access control What if two applications try to access the same device, such as a printer? Fixed with mutual exclusion, but beware of deadlock! Key OS terminology Fixed with virtual memory and paging What if the machine is already running lots of other application programs? Fixed with interrupts, time-slicing, scheduling, priority What if some of those other programs misbehave Fixed with privileged execution mode, address translation, authentication, access control What if two applications try to access the same device Fixed with mutual exclusion, but beware of deadlock! Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 37 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 38 A well-known OS at work A closer look... System processes Application processes This demonstration uses Windows XP You can start the Task Manager application either by hitting Ctrl-Alt-Del, or via Start->Run-> taskmgr Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 39 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 40

Let s start an application One calculator... I have started the calculator application Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 41 It is listed as an active process, together with its owner (user name), CPU usage, memory usage and base priority (I added that column, not shown by default) Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 42 A second calculator... Course web pages I have started a second instance of the calculator application URL: http://www.doc.ic.ac.uk/~ob3/teaching/operatingsystemsconcepts/ What s there (or rather, what will be there): on-line access to lecture notes to browse and print on-line access to tutorial exercises and some solutions links to other useful background OS material past exam papers (though the course is being revised somewhat) The two calculators are separate processes Each has its own state Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 44 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 43

Concluding why are OSs fun? Essential in making application software a commodity which can be marketed to a wide range of customers with diverse equipment Provide really useful abstractions which make programming easier Challenging: responsible for security, performance, reliability Mediates between application and hardware, so opportunities to manipulate running programs in interesting ways Julie McCann Paul Kelly William Knottenbelt Jeff Magee Jeff Kramer Kevin Twidle Steve Vickers Ariel Burton David Howarth Ken Thompson Marshall Kirk McKusick C A R Hoare E W Dijkstra Per Brinch Hansen William Stallings Richard Stevens Andrew Tanenbaum Philip Zimmerman Robert Zimmerman Credits Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 45 Department of Computing, Imperial College London. Operating Systems Concepts (MSc Computing / JMC2) 2005/ 06 Chapter 1 47