lecture01 introduction

22
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008 TUCN. Operating Systems. Lecture 1

Upload: downloadssu-fullmaza

Post on 13-Dec-2014

1.714 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Lecture01 introduction

IntroductionOperating Systems’ Concepts and Structure

Lecture 1~ Spring, 2008 ~

Spring, 2008 TUCN. Operating Systems. Lecture 1

Page 2: Lecture01 introduction

No. 2TUCN. Operating Systems. Lecture 1

Contents

• Definition of an Operating System (OS)• Role of an Operating System• History of Operating Systems• Classification of Operating Systems• Specific terms and concepts• Structure of an OS

Spring, 2008

Page 3: Lecture01 introduction

No. 3TUCN. Operating Systems. Lecture 1

The Definition of an OSWhere comes the OS in?

A computer system consists of:User software

System software

Hardware User Applications

Compilers Editors Shells

Operating System

System hardware

Spring, 2008

Page 4: Lecture01 introduction

No. 4TUCN. Operating Systems. Lecture 1

The Definition of an OSWhat is an OS?

• A system software• A collection of procedures that:

– manage all the system’s hardware resources– provide the users the environment in which

they can:• use the system resources

• run their own applications

Spring, 2008

Page 5: Lecture01 introduction

No. 5TUCN. Operating Systems. Lecture 1

The Role of an OS

• Extended or virtual machine• The external or the user point of view • A top-down perspective

– Hides the complexity of using the hardware devices– Provides the user a more convenient view of the system

resources– Purpose: Convenience

• Resource manager• The inside or the designer point of view• A bottom-up perspective

– Brings the hardware resources in a functional state– Provides each program with time and space for using resources– Purpose: Efficiency

Spring, 2008

Page 6: Lecture01 introduction

No. 6

A Classification of OSs

• Mainframe operating systems: OS/390

• Server operating systems: UNIX, Windows 2000, Linux

• Multiprocessor operating systems• PC operating systems:

• Windows 98, Windows ME, Macintosh, Linux

• Real-time operating systems: VxWorks, QNX

• Embedded operating systems: • PalmOS, Windows CE, Windows Mobile, Symbia

Spring, 2008 TUCN. Operating Systems. Lecture 1

Page 7: Lecture01 introduction

No. 7TUCN. Operating Systems. Lecture 1

Specific Terms and Concepts

• Batch systems: no user interaction

• Multiprogramming: multiple programs loaded in memory

• Time-sharing: each process receives slices of CPU time

• Interactive systems: provides quick response to user’s actions

• Multi-user: distinction between users

• Network OS: users aware of the existence of multiple computers

• Distributed OS: looks like a traditional single-processor system

• Processes, Files, System Calls

Spring, 2008

Page 8: Lecture01 introduction

No. 8TUCN. Operating Systems. Lecture 1

Computer Hardware (1)

• An OS is closely tied to the HW it runs on• HW components

– CPU– Memory– I/O devices

• Monitor• Keyboard• Storage devices (HDD, Floppy etc.)• Others

– BUSes

Spring, 2008

Page 9: Lecture01 introduction

No. 9TUCN. Operating Systems. Lecture 1

Computer Hardware (2)

Tanenbaum, Fig. 1-5.

Monitor

BUS

Spring, 2008

Page 10: Lecture01 introduction

No. 10TUCN. Operating Systems. Lecture 1

CPU

• Functionality– fetch instructions from memory, decode and execute them

• Instruction set– has a specific set of instructions that can be executed– specific executable programs each processor can run

• Registers• Program counter• Stack pointer• Many others – architecture dependent

• Machine state – saved at context switch• Kernel vs. User mode of execution

– switches between • system calls• hardware exceptions, interruptions

Spring, 2008

Page 11: Lecture01 introduction

No. 11TUCN. Operating Systems. Lecture 1

Memory

• Should be extremely fast, large and cheap• Hierarchy of layers

– Registers: fastest, no delay, but limited size– Cache memory

• cache hits and misses – Main memory – RAM (Random Access Memory)– HDDs

• 2 orders of magnitude cheaper and larger then RAM, but 3 orders of magnitude slower

• mechanical device – heads, tracks (cylinders), sectors, – Magnetic tapes

• used as a backup for very large data sets• very slow, but very cheap and removable

Spring, 2008

Page 12: Lecture01 introduction

No. 12TUCN. Operating Systems. Lecture 1

I/O Devices

• Components– controller and the device itself

• Controller– Directly controls the physical device– Receives commands from the OS

• Device driver– Supplied by controller manufacturer– Inserted into the OS – run in kernel mode

• Functionality– Busy waiting– Interrupts

Spring, 2008

Page 13: Lecture01 introduction

No. 13TUCN. Operating Systems. Lecture 1

Processes

• Definition• A program in execution• Consists of: executable code, data, stack, CPU registers

value, and other information

• A process hierarchy (tree)• A created two child processes:

B and C• B created three child processes:

D, E, and F

• Process synchronization• Inter-Process Communication (IPC)

Spring, 2008

Page 14: Lecture01 introduction

No. 14TUCN. Operating Systems. Lecture 1

Files

• Definition• A collection of related information• An abstraction of data stored on HDD

• A process tree• File system mounting• File linking

Spring, 2008

Page 15: Lecture01 introduction

No. 15TUCN. Operating Systems. Lecture 1

System calls (1)

• Definition– a call to an OS service

– a trap into the OS code

• Examples of system calls– File manipulation: open(), read(), write(), lseek(), close() …

– File system management: mkdir(), mount(), link(), chown() …

– Process management: fork(), exec(), wait(), exit() …

Spring, 2008

Page 16: Lecture01 introduction

No. 16TUCN. Operating Systems. Lecture 1

System Calls (2)Steps in making a system call

There are 11 steps executing

the system call: read (fd, buffer, nbytes)

Spring, 2008

Page 17: Lecture01 introduction

No. 17TUCN. Operating Systems. Lecture 1

The Structure of an OSArchitectures(1). Monolithic OS

Spring, 2008

Page 18: Lecture01 introduction

No. 18TUCN. Operating Systems. Lecture 1

The Structure of an OSArchitectures (2). Layered OS

The Structure of the THE operating system

Spring, 2008

Page 19: Lecture01 introduction

No. 19TUCN. Operating Systems. Lecture 1

The Structure of an OSArchitectures (3). Client-Server

The client-server model

A distributed OS

Spring, 2008

Page 20: Lecture01 introduction

No. 20TUCN. Operating Systems. Lecture 1

The Structure of an OSArchitectures (4).Advantages …

• Advantages of micro-kernels• the modules run in user mode protection against bugs• adaptability to use in distributed systems• forces the programmers to adopt a modularize approach • easily ported to other architectures• better use of RAM than monolithic ones

• Modules in monolithic systems (Linux) - advantages • monolithic OS faster than micro-kernel OS• modularized approach • platform independence • frugal main memory usage • no performance penalty

Spring, 2008

Page 21: Lecture01 introduction

No. 21TUCN. Operating Systems. Lecture 1

• Process manager: creates, schedules and destroy processes

• Memory manager: allocates and releases memory

• Disk manager• I/O devices manager• File system: create, read, modify, remove etc. files

• Communication system• Protection system• Shells

• text interface – command interpreter• graphical interface

The Structure of an OSComponents

Spring, 2008

Page 22: Lecture01 introduction

No. 22TUCN. Operating Systems. Lecture 1

Readings

• Andrew Tannenbaum, “Modern Operating Systems”, second edition, Prentice Hall, 2001, pgs. 1-20, 34-63

• D. Bovet, M. Cesati, “Understanding Linux Kernel”, O’Reilly, 2001, pgs.11-12

Spring, 2008