1 Introduction Chapter 1 1.1 What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4 Computer hardware review 1.5.

Slides:



Advertisements
Similar presentations
OPERATING SYSTEMS Lecturer: Szabolcs Mikulas Office: B38B
Advertisements

Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved OPERATING SYSTEMS DESIGN.
CS 345 Computer System Overview
Processes and Threads Chapter Processes 2.2 Threads 2.3 Interprocess communication 2.4 Classical IPC problems 2.5 Scheduling.
Winter 2005 CMPE 151: Network Administration Lecture 2.
UNIX Chapter 01 Overview of Operating Systems Mr. Mohammad A. Smirat.
Tuesday, June 06, 2006 I hear and I forget, I see and I remember, I do and I understand. -Chinese Proverb.
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.
Chapter 1 Introduction 1.1 What is an operating system
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
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,
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.
Chapter 1 Introduction 1.1 What is an operating system
1 What is an operating system? CSC330Patricia Van Hise.
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?
Operating Systems ECE344 A brief history of OS Ding Yuan ECE Dept., University of Toronto
Principles of Operating System 2014
CS 6560 Operating System Design Lecture 1. Overview 1.1 What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4.
CS450/550 P&T.1 Adapted from MOS2E UC. Colorado Springs CS450/550 Operating Systems Lecture 1 Introductions to OS and Unix Palden Lama Department of Computer.
Operating System. Architecture of Computer System Hardware Operating System (OS) Programming Language (e.g. PASCAL) Application Programs (e.g. WORD, EXCEL)
Chapter 1. Introduction What is an Operating System? Mainframe Systems
OPERATING SYSTEMS DESIGN AND IMPLEMENTATION Third Edition ANDREW S. TANENBAUM ALBERT S. WOODHULL Yan hao (Wilson) Wu University of the Western.
CSC 322 Operating Systems Concepts Lecture - 4: by Ahmed Mumtaz Mustehsan Special Thanks To: Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
1 CS503: Operating Systems Spring 2014 Dongyan Xu Department of Computer Science Purdue University.
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.
Operating Systems: History, Hardware & Concepts Ch Tuesday, January 16, 2007.
Understanding Operating Systems Flynn & McHoes
Recall: Three I/O Methods Synchronous: Wait for I/O operation to complete. Asynchronous: Post I/O request and switch to other work. DMA (Direct Memory.
Operating Systems Principles Lecture 1: Introduction 主講人:虞台文.
Chapter 1 Introduction 1.1 What is an operating system
ITEC 502 컴퓨터 시스템 및 실습 Chapter 1: Introduction. ITEC 502 컴퓨터 시스템 및 실습 Chapter 1: Introduction Mi-Jung Choi DPNM Lab. Dept. of CSE,
1 Instructor :Erdal Kose Office hours: Tuesday 9:00-9:30 pm. Mail box : 2109 Ingersoll Hall (Erdal ) Web site :
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:
1 Introduction. 2 A computer system consists of –hardware –system programs –application programs.
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.
1 Operating Systems: Principles and Practice Cpr E 308.
Copyright ©: University of Illinois CS 241 Staff1 Operating Systems Orientation.
We will focus on operating system concepts What does it do? How is it implemented? Apply to Windows, Linux, Unix, Solaris, Mac OS X. Will discuss differences.
CIS250 OPERATING SYSTEMS Chapter One Introduction.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
1 Operating System (CS – 772) Instructor: Nasir Minhas Assistant Professor UIIT PMAS – UAAR
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.
ITFN 2601 Introduction to Operating Systems Lecture 2 Computer Hardware Review OS Concepts Overview.
操作系统原理 OPERATING SYSTEM Chapter 1 Introduction 概 述.
What is an operating system? Tool to make programmer's job easy Resource allocator – Must be fair; not partial to any process – Must discriminate between.
Operating Systems: History, Hardware & Concepts Ch 1.4 & 1.5 Thursday, January 18, 2007.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved OPERATING SYSTEMS DESIGN.
Design of Operating Systems
Operating System Overview
Lecture 3: Basic OS Concepts
Evolution of Operating Systems
Avani R.Vasant V.V.P. Engineering College
Operating Systems Georgios Varsamopoulos
Lecture 2: Hardware Review
OPERATING SYSTEMS DESIGN AND IMPLEMENTATION Third Edition ANDREW S
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Today’s agenda Hardware architecture and runtime system
Lecture 2: Hardware Review
Lecture 3: Basic OS Concepts
Operating Systems Principles Lecture 1: Introduction
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.
Presentation transcript:

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 Operating system concepts 1.6 System calls 1.7 Operating system structure

2 Introduction A computer system consists of –hardware –system programs –application programs

3 What is an Operating System It is an extended machine –Hides the messy details which must be performed –Presents user with a virtual machine, easier to use It is a resource manager –Each program gets time with the resource –Each program gets space on the resource

4 History of Operating Systems First generation –vacuum tubes, plug boards Second generation –transistors, batch systems Third generation 1965 – 1980 –ICs and multiprogramming Fourth generation 1980 – present –personal computers

5 Batch Operating System 2 nd generation Structure of a typical FMS (Fortran Monitor System) job

6 Batch OS speed-up a.bring cards to 1401 b.read cards to tape c.put tape on 7094 which does computing d.load 7094 with system tape e.put result tape from 7094 to 1401 f.1401 prints output Early batch system

7 Multiprogramming System 3 rd generation Timesharing on modified 7094 CTSS (Compatible Time Sharing System) MIT 1962 followed by MULTIX 1972 (MULTiplexed Information and Computing Service) on GE-645 mainframe, followed by Bell Labs stripped down version called UNIX. To use (expensive) CPU during Intensive I/O one needs many jobs ready to run (in memory). So when Job1 needs I/O CPU waiting for data in/out (spooling – Simultaneous Peripheral Operation On Line) Job 2 can run by CPU, or Job3 etc. Consequence: short jobs wait disproportional time to finish due to the long jobs. With multi-users on-line terminals the short jobs wait long. Solution is time sharing.

8 Batch (multiprogramming and time sharing) vs. Multiuser CPU disk I/O submitted jobs (spooling) diskfinished jobs time slice a. Multiprogramming b. Timesharing - CTSS CPU disk I/O submitted jobs diskfinished jobs c. Multiuser - UNIX Main frame Video terminal Video terminal Video terminal Video terminal

9 The Operating System Zoo Mainframe operating systems Server operating systems Multiprocessor operating systems Personal computer operating systems Real-time operating systems Embedded operating systems e.g. PDA (Personal Digital Assistant) Smart card operating systems (credit cards containing CPU chip)

10 Personal Computers: 4-th generation 1974 Intel 8080 made first CPU on a chip asked its consultant Gary Kildall operating system to test it. Kildall hooked Shugart Associates floppy disk to it and wrote first CP/M operating system for this PC. Kildall formed Digital Research company with rights to sell CP/M. For 5 years they rewrote it for other CPUs like Zilog Z80 with many application programs on it. In early 1980 IBM searched for OS for its PC. They contacted Bill Gates for OS and he suggested Digital Research. Kildall didn’t want to sell to non-end user like IBM. IBM asked Bill Gates to write OS for them. Bill approached Seattle Computer Products that had DOS (Disk Operating System) and bought a license for U$ 50,000 and delivered it as MS-DOS (from his Microsoft company) IBM released PC with Intel and Microsoft delivered MS-DOS. Later Microsoft incorporated many features of Unix -> Xenix Xerox changed CLI (Command Language Interface) to GUI (Graphical User Interface) invented by Doug Engelbart at Stanford Research Institute Steve Jobs co-inventor of Apple (first PC) visited Xerox and applied GUI to Apple OS in PC called Macintosh Microsoft followed Apple and built Windows i.e. MS-DOS with GUI. Windows 95, 98, NT -> 2000, Millenium,

11 Computer Hardware Review (1) Components of a simple personal computer Monitor Bus

12 Computer Hardware Review (2) Specialized Execution units: one for integer arithmetic, one for floating point arithmetic one for Boolean operations, with two parallel instruction fetch. Most CPU have kernel (supervisor or privileged) mode and user mode controlled by bit in PSW. A three-stage pipeline A superscalar CPU

13 Computer Hardware Review (3) Typical memory hierarchy (numbers shown are rough approximations)

14 Computer Hardware Review (4) Structure of a disk drive

15 Single user vs. multi-user memory map Memory allocation using base registers. Base-limit pair and two base-limit pairs

16 I/O devices and interrupt (a) Steps in starting an I/O device and getting interrupt (b) How the CPU serves an interrupt. (a) (b)

17 Structure of a large Pentium system IDE - Integrated Drive Electronics ISA - Industry Standards Associate MB/s PCI – Peripheral Component Interconnect 528 MB/s USB – Universal Serial Bus 1.5 MB/s SCSI – Small Computer System Interface 160 MB/s (fast disks etc.)

18 Process Tree A created two child processes, B and C B created three child processes, D, E, and F Every process has a process identifier (integer) called PID (process identifier).

19 Memory map of a process Processes have three segments: text, data, stack

20 Batch multiprogramming OS Card reader Disk Line printer Video memory Console CPU Main memory Card reader Input spooler output spooler disk executive Line printer a. Computer infrastructure. b. OS processes. software processes hardware processes (drivers)

21 States of a user job in a batch system in input spooler spooling complete execution complete in output spooler ready blocked in the executive running

22 Unix as multiuser OS Main frame Video terminal Video terminal Video terminal Video terminal Init { for (i=1; i=no_of_terminals; i++) { If (fork()!=0) { wait /*parent*/ else exec(getty, param, ttyn) } getty { prompts login checks name and password if ok spawns a shell }

23 Stripped down shell while (TRUE) {/* repeat forever */ type_prompt( );/* display prompt */ read_command (command, parameters)/* input from terminal */ if (fork() != 0) {/* fork off child process */ /* Parent code */ waitpid( -1, &status, 0);/* wait for all children to exit */ } else { /* Child code */ execve (command, parameters, 0);/* execute command */ }

24 Process interact: client-server model

25 Two processes connected by a pipe > ls fred billie doug jeneanne > ls | grep d fred doug grep (global regular expression print) prints lines with “expression” in it.

26 Four way stop - deadlock example (a) A potential deadlock. (b) an actual deadlock. Process 1: Print on Lp Open file Process 2: Open file Print on Lp Example:

27 OS as a file system manager Every process has a working directory. File must be opened when system returns small integer called file id or I-number in Unix.

28 Unix device mounting Unix does not allow device to be specified by drive name (like DOS example A: etc.). MOUNT system call inserts I/O device files into any regular directory. I/O devices look like special files kept in /dev directory (example: /dev/lp). a)Before mounting files on floppy are inaccessible. b)After mounting floppy on b, files on floppy are part of file hierarchy.

29 Mount System Call mount(“/dev/fd0”, “/mnt”, 0) where 3-rd parameter is read-write or read-only. File system before the mount File system after the mount

30 File linking (same file under two names) (a) Two directories before linking (memo as note) link(“/usr/jim/memo”, “usr/ast/note”) (b) The same directories after linking.

31 Simple structuring model for a monolithic system Main program calls service procedures (by systems calls) that calls utility procedures in kernel mode (using Traps). (kernel mode)

32 Steps in Making a System Call There are 11 steps in making the system call read (fd, buffer, nbytes)

33 Some System Calls For Process Management

34 Some System Calls For File Management lseek returns pointer to the position in a file with fd=file descriptor pointer, offset (bytes), whence is either from beginning of a file, current position, or end of the file.

35 Some System Calls For Directory Management

36 Some System Calls For Miscellaneous Tasks

37 System Calls Unix vs. Windows Some Win32 API (Application Program Interface) calls

38 Structure of the THE operating system

39 Structure of VM/370 with CMS CMS – Conversational Monitor System

40 The client-server model in a distributed system

41 The metric prefixes