Introduction to Operating System Concepts

20
COP 4610 Operating systems Module1 Introduction to Operating System Concepts PART I 1 Tami Sorgente

Transcript of Introduction to Operating System Concepts

Page 1: Introduction to Operating System Concepts

COP 4610

Operating systemsModule1

Introduction to Operating System Concepts

PART I

1Tami Sorgente

Page 2: Introduction to Operating System Concepts

Module 1 - OPERATING SYSTEMS CONCEPTS

2

What Operating Systems Do

Computer-System Organization

Operating-System Operation

Defintions

Tami Sorgente

Page 3: Introduction to Operating System Concepts

What is an operating system?

A program that acts as an intermediary between a user of a computer and the computer hardware

Operating system goals:

◦ Execute user programs

◦ Make solving user problems easier

◦ Make the computer system convenient to use

◦ Use the computer hardware and resources in an efficient manner

3Tami Sorgente

Page 4: Introduction to Operating System Concepts

What do Operating Systems do?

User view

◦ Extended machine that hides lower level details

System view◦ Resource allocator

◦ (What is a resource?)

OS is a manger that needs to use all the resources to perform management duties

◦ Overhead

4Tami Sorgente

Page 5: Introduction to Operating System Concepts

Definitions Resource -

◦ Component of limited availability necessary for effective operation

Process –

◦ Program in execution

◦ Active program

Deadlock -

◦ A situation in which two or more competing actions are each

waiting for the other to finish, and thus neither ever does.

Buffer –

◦ Area of memory that stores data

Cache –

◦ Area of fast memory that stores copies of data

What is the difference between a buffer and a cache?

5Tami Sorgente

Page 6: Introduction to Operating System Concepts

Definitions OS kernel –◦ Contains basic functions (one process

all the time)

◦ Everything else is either a system program (ships with the operating system) or an application program.

Interrupt -◦ Change in flow of execution

◦ Operating systems are

interrupt driven

Volatile storage –

Persistent/ Nonvolatile storage–

6

running active

Tami Sorgente

Page 7: Introduction to Operating System Concepts

Computer system organization One or more CPUs, device controllers connect through

common bus providing access to shared memory

Concurrent execution of CPUs and devices competing for memory cycles

7Tami Sorgente

Page 8: Introduction to Operating System Concepts

Computer-System Operation I/O devices and the CPU can execute

concurrently

Each device controller is in charge of a particular device type

Each device controller has a local buffer

CPU moves data from/to main memory to/from local buffers

I/O is from the device to local buffer of controller

Device controller informs CPU that it has finished its operation by causing an interrupt

8Tami Sorgente

Page 9: Introduction to Operating System Concepts

Common Functions of Interrupts

Interrupt transfers control to the interrupt service routine

Interrupt architecture must save the address of the interrupted instruction

A trap or exception is a software-generated interrupt caused either by an error or a user request

9Tami Sorgente

Page 10: Introduction to Operating System Concepts

COP 4610

Operating systemsModule 1

More Operating System Concepts

PART II

10Tami Sorgente

Page 11: Introduction to Operating System Concepts

Module 1 –OPERATING SYSTEMS CONCEPTS

11

Multiprocessor vs multiprogramming

Operating-System Componentso Process Management

o Memory Management

o Storage Management

o Protection and Security

System calls

Computing

Environments

Tami Sorgente

Page 12: Introduction to Operating System Concepts

Multiprocessing

Single-processor systems

Multiprocessor systems

◦ Increased throughput

◦ Economy of scale (cost less share resources)

◦ Increased reliability

Asymmetric vs symmetric multiprocessing

Multiprocessor vs clustered systems

Multiprocessing vs multiprogramming

◦ Degree of multiprogramming

12Tami Sorgente

Page 13: Introduction to Operating System Concepts

OS system structure

Multiprogramming

◦ keep CPU and I/O devices busy at all times

Timesharing/ multitasking

◦ Each user has at least one program executing in memory

◦ If several jobs ready to run at the same time CPU scheduling

◦ If processes don’t fit

in memory, swapping

moves them in and

out to run

13Tami Sorgente

Page 14: Introduction to Operating System Concepts

Components of an OS

Process management

Memory management Storage management ◦ Uniform, logical view of information storage

◦ File management

◦ I/O subsystem (hide peculiarities of hardware devices from the user)

Networking

Protection and Security◦ Protection- any mechanism for controlling access of processes

or users to resources defined by the OS

◦ Security - defense of the system against internal and external attacks

User interface14Tami Sorgente

Page 15: Introduction to Operating System Concepts

System calls

System call

◦ Method used by a process to request an action by

the OS

Dual mode operation

◦ 2 modes: user and

supervisor/privileged/monitor/kernel

◦ Privileged instructions must go through the OS

15Tami Sorgente

Page 16: Introduction to Operating System Concepts

Types of system calls

Process control

File management

Device management

Information maintenance

Communications

16Tami Sorgente

Page 17: Introduction to Operating System Concepts

Computing environments

Traditional

Mobile

Distributed Local Area Network (LAN) – room, building, campus

Wide Area Network (WAN) – cities, countries

Metropolitan Area Network (MAN) – buildings in a city

Personal Area Network (PAN) – (i.e. Bluetooth)

Network Operating System

◦ Systems across network

◦ Illusion of a single system

17Tami Sorgente

Page 18: Introduction to Operating System Concepts

Computing environments

Cloud Computing◦ Public cloud –anyone willing to pay

◦ Private cloud –company’s own use

◦ Hybrid cloud –both public and private components

◦ Software as a Service (SaaS) – one or more applications available via the Internet (i.e. word processor)

◦ Platform as a Service (PaaS) – software stack ready for application use via the Internet (i.e a database server)

◦ Infrastructure as a Service (IaaS) – servers or storage available over Internet (i.e. storage available for backup use)

18Tami Sorgente

Page 19: Introduction to Operating System Concepts

Multiprocessor Early systems allow only one process to run, others

suspended

Due to screen real estate, UI limits iOS provides for a ◦ Single foreground process- controlled via user interface

◦ Multiple background processes– in memory, running, but not on the display, and with limits

◦ Limits include single, short task, receiving notification of events, specific long-running tasks like audio playback

Android runs foreground and background, with fewer limits◦ Background process uses a service to perform tasks

◦ Service can keep running even if background process is suspended

◦ Service has no user interface, small memory use

19Tami Sorgente

Page 20: Introduction to Operating System Concepts

Multiprocess Architecture – Chrome Browser

Many web browsers ran as single process (some still do)

◦ If one web site causes trouble, entire browser can hang or crash

Google Chrome Browser is a multiprocess with 3 categories

◦ Browser process manages user interface, disk and network I/O

◦ Renderer process renders web pages, deals with HTML,

Javascript, new one for each website opened

Runs in sandbox restricting disk and network I/O,

Minimizing effect of security exploits

◦ Plug-in process for each type of plug-in

20Tami Sorgente