Topics. Operating System I. What is an Operating System? Let s Get Started! What is an Operating System? OS History.

Similar documents
Topics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we?

Chapter 2 Operating-System Structures

EEE 435 Principles of Operating Systems

Basic Concepts & OS History

COS 318: Operating Systems. Overview. Jaswinder Pal Singh Computer Science Department Princeton University

Andrew S. Tanenbaum, Operating Systems, Design and Implementation, (Second Edition), Prentice Hall.

Introduction. Operating Systems. Introduction. Introduction. Introduction

OS - Introduction Ezio Bartocci Institute for Computer Engineering

Operating Systems CS3502 Spring 2018

Module 1: Introduction

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

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Module 1: Introduction. What is an Operating System?

Contents. Today's Topic: Introduction to Operating Systems

W4118: OS Overview. Junfeng Yang

Spring It takes a really bad school to ruin a good student and a really fantastic school to rescue a bad student. Dennis J.

Introduction to OS (cs1550)

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

Introduction to System Programming

Introduction to Computer Systems and Operating Systems

CS 550 Operating Systems Spring Operating Systems Overview

CS 153 Design of Operating Systems

OS concepts and structure. q OS components & interconnects q Structuring OSs q Next time: Processes

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

Chapter 1: Introduction

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

10/26/2009. Last Week

CSC 453 Operating Systems

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information

Four Components of a Computer System

TYPES OF OPERATING SYSTEMS. Dimple Juneja

Operating System Support

Operating systems Architecture

Operating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy

CSCI 6730 / 4730 Operating Systems. Key Questions in System Design. Review: What is An Operating System? Key Points

Principles of Operating Systems CS 446/646

! Software ( kernel ) that runs at all times. ! OS performs two unrelated functions: Maria Hybinette, UGA. user! 1! Maria Hybinette, UGA. user! n!

Operating-System Structures

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview

COS 318: Operating Systems. File Systems. Topics. Evolved Data Center Storage Hierarchy. Traditional Data Center Storage Hierarchy

CS370 Operating Systems

Fundamental Concepts and History

Kernel Types Simple OS Examples System Calls. Operating Systems. Autumn CS4023

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne

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 System Structure

Chapter 2: System Structures

Chapter 2: Operating-System Structures

OPERATING SYSTEMS OVERVIEW

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

COS 318: Operating Systems

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System

Objectives and Functions Convenience. William Stallings Computer Organization and Architecture 7 th Edition. Efficiency

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System

Operating System Overview. Operating System

CSC Operating Systems Spring Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. January 17 th, 2007.

Announcements. Operating System Structure. Roadmap. Operating System Structure. Multitasking Example. Tevfik Ko!ar

Storage and File Hierarchy

COS 318: Operating Systems

Types and Functions of Win Operating Systems

Operating Systems : Overview

4 Lecture: Operating System Structures

Operating System Structure

Operating Systems Overview. Chapter 2

Roadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - II OS Structures. University at Buffalo. OS Design and Implementation

OS Design Approaches. Roadmap. System Calls. Tevfik Koşar. Operating System Design and Implementation. CSE 421/521 - Operating Systems Fall 2013

Computer Science 4500 Operating Systems. Welcome! In This Module. Module 1 Introduction, Overview and History

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

Chapter 2. Operating-System Structures

Storage and File System

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

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

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

UNIT 2. OPERATING SYSTEM STRUCTURES

Memory Management. Today. Next Time. Basic memory management Swapping Kernel memory allocation. Virtual memory

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

CONTENTS. Computer-System Structures

CSCE-313 Introduction to Computer Systems

Operating Systems, Fall

Master level: Operating systems, distributed systems, networking,

Lecture 1 - Operating System Overview

Overview of Unix / Linux operating systems

Full file at

OS Design Approaches. Roadmap. OS Design Approaches. Tevfik Koşar. Operating System Design and Implementation

COSC243 Part 2: Operating Systems

Why Operating Systems? Topic 3. Operating Systems. Why Operating Systems? Why Operating Systems?

OPERATING SYSTEM. PREPARED BY : DHAVAL R. PATEL Page 1. Q.1 Explain Memory

Operating Systems. I. Introduction. Eurecom

Introduction to Operating Systems. Jo, Heeseung

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM:

Unit OS2: Operating System Principles. Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze

Operating System Architecture. CS3026 Operating Systems Lecture 03

File Systems. OS Overview I/O. Swap. Management. Operations CPU. Hard Drive. Management. Memory. Hard Drive. CSI3131 Topics. Structure.

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

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

Chapter 2: Operating-System Structures

CSE 4/521 Introduction to Operating Systems

Transcription:

Topics Operating System I What is an OS? OS History OS Concepts OS Structures Introduction Let s Get Started! What is an Operating System? What are some OSes you know? Pick an OS you know: What are some things you like about it? What are some things you don t like about it? Bank Program Reservation Game Compilers Editors Shell Operating System Machine Language Microprogramming Applications System Programs Hardware Physical Devices What is an Operating System? An Extended Machine (Top-down) Transforming - new resource ex: Win98 device manager A Resource Manager (Bottom-up) Multiplexing - illusion of several resources ex: browse the web AND read email Scheduling - deciding who gets what when ex: compile fast OR edit fast Why have an OS? Convenient and Efficient Programming hardware difficult Idle hardware wasteful OS History Helps understand key requirements Not one brilliant design (despite what Gates or Torvalds might say) Fixed previous problems, added new ones Tradeoffs Closely tied to: Hardware history User history 1

Hardware History 1981 1999 Factor Power 1 250 250 $/Power $100K $45 2200 Memory 128K 128M 1000 Disk Capacity 10M 10G 1000 Net Bandwidth 9600b/s 155Mb/s 15K Users / Mach. 10s <=1 10 Comments? Change! Where are we? Ch 1-3 by Monday Reading details on course Web page Ch 1, brief, alternate viewpoint Ch 2, computer architecture review Ch 3, today and Monday Timeline on Web page Proj 0 in by Monday Proj 1 out Monday HW 1 out Tuesday Questions What are two functions of an OS? What layer is above the OS? What layer is below the OS? Hardware Very Expensive Humans Cheap Single program execution (no OS) Hardwire programming Programming slow, not offline! Punch cards Hardware Very Expensive Humans Cheap Punch cards Fortran or assembler Waste computer time walking! Batch programs on tape Hardware Very Expensive Humans Cheap Programs read in from tape Two applications: Scientific Data processing CPU idle during I/O! Multiprogramming with partitions Spooling as jobs finished 2

Hardware is Cheap Humans Expensive Turn around time 1/2 day Programmer time wasted! Sigh. In the good old days. Time-sharing Multics (sorta) New problems response time thrashing file-systems Hardware Very Cheap Humans Very Expensive Personal computers Network operating systems Distributed operating systems OSes today small == 1000K (15 pages, 5 programmer years) large == 10,000K (150 pages, 500 programmer years) (longer than a semester :-) ) need to evolve quickly hardware upgrades, new user services, bug fixes efficient and/or modular kernels Windows NT History 1988, v1 split from joint work with IBM OS/2 Win32 API 1990, v3.1 Server and Workstation versions 1997(?), v4 Win95 interface Graphics to kernel More NT licenses sold than all Unix combined Windows NT Today Microsoft has 80% to 90% of OS market mostly PC s 333 MHz Intel Pentium NT aiming at robust, server market network, web and database Platforms Intel 386+ - Alpha MIPS R4000 - PowerPC (Win2000 merges Win98 and WinNT) Linux History Open Source Release Early, Release Often, Delegate The Cathedral or the Baazar Bday 1991, Linus Torvalds, 80386 processor v.01, limited devices, no networking, with proper Unix process support! 1994, v1.0 networking (Internet) enhanced file system (over Minix) many devices, dynamic kernel modules Linux History Development convention Odd numbered minor versions development Even numbered minor versions stable 1995, v1.2 more hardware 8086 mode (DOS emulation) included Sparc, Alpha, Mips support started 1996, v2.0 multiple architectures, multiple processors threads, memory management. 3

v2.2 Linux Today 1,000,000 lines of code 7-10 million users Estimated growth 25%/year through 2003 all others, 10% combined Questions When is it appropriate for OS to waste resources? How might the growth in networks influence OS design? Operating System Concepts es Files System Calls Shells The Program in execution Running -> Suspended -> Running Example: the Shell Tree Signals UID (GID) (Two weeks) pre gcc ln csh login emacs csh Files Store data on disk Directory Tree bob Working directory 3013 Protection bits 9 in Unix: rwx bits, ex: rwxr-x--x Abstraction of I/O device terminal, printer, network, modem Pipe (1-2 Days) root www sue fun System Calls Way processes communicate with OS example: write(file, string, size) OS specific! POSIX (1980s) Portable Operating System (unix-ish) (Most of the projects) 4

Shells (Project 0 uses shell) User s interface to OS Simple commands cd, cat, top Modifiers &,, > (Project 1 is to write a shell) Operating System Structure Simple Systems Virtual Machines Micro Kernels Simple Systems Started small and grew, no hardware support MS-DOS Application Resident system program Device drivers ROM BIOS device drivers Protection! Simple Systems Unix (see /vmunix) Applications Signals, File Sys, Swapping, Scheduling... Terminal Device Memory The Big Mess Some move towards a more modular kernel IBM VM/370 Operating Sys Virtual Machines Virtual Machine Hardware Complete protection OS development, emulation Performance! Operating Sys Operating Sys Virtual Machines Java Virtual Machine Java program Java OS Java VM Operating System Hardware Platform independence! 5

Micro Kernel WinNT Structure Mach User Level Space Netscape Win32 File System User File Server Mem Server Subsystem Client-Server Kernel Executive / Privileged Space Security I/O Good performance Adaptable to distributed OS Kernel Space Scheduler Robust Careful about mechanism! Pseudo- Micro Kernel Memory Manager IPC Simple system Applications, User Space Linux Structure System Libraries Kernel ppp cdrom Terminal Device Memory Loadable Modules done after boot allow 3rd party vendors easier for development 6