0% found this document useful (0 votes)
67 views

Lec 1-CH1 - Part 1

Uploaded by

Samo Mo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
67 views

Lec 1-CH1 - Part 1

Uploaded by

Samo Mo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

OPERATING SYSTEM (CS251)

Operating System Concepts – 9th Edition 1.1 Silberschatz, Galvin and Gagne ©2013
Lecture 1
Chapter 1: Introduction

Operating System Concepts – 9th Edit9on Silberschatz, Galvin and Gagne ©2013
Chapter 1: Introduction
 What Operating Systems Do
 Computer-System Organization
 Computer-System Architecture
 Operating-System Structure
 Operating-System Operations
 Process Management
 Memory Management
 Storage Management
 Protection and Security
 Kernel Data Structures
 Computing Environments
 Open-Source Operating Systems

Operating System Concepts – 9th Edition 1.3 Silberschatz, Galvin and Gagne ©2013
Objectives

 To describe the basic organization of computer systems


 To provide a grand tour of the major components of
operating systems
 To give an overview of the many types of computing
environments
 To explore several open-source operating systems

Operating System Concepts – 9th Edition 1.4 Silberschatz, Galvin and Gagne ©2013
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 and make solving user problems
easier
 Make the computer system convenient to use
 Use the computer hardware in an efficient manner

Operating System Concepts – 9th Edition 1.5 Silberschatz, Galvin and Gagne ©2013
Computer System Structure

 Computer system can be divided into four components:


 Hardware – provides basic computing resources
 CPU, memory, I/O devices
 Operating system
 Controls and coordinates use of hardware among various
applications and users
 Application programs – define the ways in which the system
resources are used to solve the computing problems of the
users
 Word processors, compilers, web browsers, database
systems, video games
 Users
 People, machines, other computers

Operating System Concepts – 9th Edition 1.6 Silberschatz, Galvin and Gagne ©2013
Four Components of a Computer System

Operating System Concepts – 9th Edition 1.7 Silberschatz, Galvin and Gagne ©2013
What Operating Systems Do

 Depends on the point of view


 Users want convenience, ease of use and good performance
 Don’t care about resource utilization
 But shared computer such as mainframe or minicomputer must
keep all users happy- The operating system in such cases is
designed to maximize resource utilization by Dividing CPU time,
memory, and I/O to all users
 Users of dedicate systems such as workstations have dedicated
resources but frequently use shared resources from servers
 Handheld computers are resource poor, optimized for usability
and battery life
 Some computers have little or no user interface, such as
embedded computers in devices and automobiles

Operating System Concepts – 9th Edition 1.8 Silberschatz, Galvin and Gagne ©2013
System View

 OS is a resource allocator
 A computer system has many resources that may be
required to solve a problem: CPU time, memory space,
file-storage space, I/O devices, and so on.
 The operating system acts as the manager of these
resources.
 Decides between conflicting requests for efficient and
fair resource use
 OS is a control program
 Controls execution of user programs to prevent errors
and improper use of the computer

Operating System Concepts – 9th Edition 1.9 Silberschatz, Galvin and Gagne ©2013
Operating System Definition

 No universally accepted definition


 The fundamental goal of computer systems is to execute user
programs and to make solving user problems easier.
 Computer hardware is constructed toward this goal. Since
bare hardware alone is not particularly easy to use,
application programs are developed.
 These programs require certain common operations, such as
those controlling the I/O devices. The common functions of
controlling and allocating resources are then brought together
into one piece of software: the operating system
 Operating systems exist because they offer a reasonable way
to solve the problem of creating a usable computing system.

Operating System Concepts – 9th Edition 1.10 Silberschatz, Galvin and Gagne ©2013
Operating System Definition (Cont.)

 “Everything a vendor ships when you order an operating system” is a


good approximation
 But varies wildly
 “The one program running at all times on the computer” is the kernel.
 Everything else is either
 a system program (ships with the operating system) , or
 an application program.

Operating System Concepts – 9th Edition 1.11 Silberschatz, Galvin and Gagne ©2013
Computer Startup

 bootstrap program is loaded at power-up or reboot


 Typically stored in ROM ( Read Only Memory)or
EPROM (Erasable Programmable ROM), generally
known as firmware
 Initializes all aspects of system from CPU registers to
device controllers to memory contents

 Loads operating system kernel and starts


execution

Operating System Concepts – 9th Edition 1.12 Silberschatz, Galvin and Gagne ©2013
Computer System Organization

 Computer-system operation
 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

Operating System Concepts – 9th Edition 1.13 Silberschatz, Galvin and Gagne ©2013
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 storage and a set
of special purpose registers.
 Operating System (OS) have a Device Driver for each
Device Controller

 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

Operating System Concepts – 9th Edition 1.14 Silberschatz, Galvin and Gagne ©2013
Computer-System Operation

 To start I/O operation, the device driver loads the


appropriate registers within the device controller
 The device controller examines the contents of these
registers
 The controller starts the transfer of data from the device to
its local buffer
 Once the transfer of data is complete, the device controller
informs the device driver via an Interrupt that it has finished
its operation
 The device driver then returns control to OS
 This form of interrupt-driven I/O is fine for moving small
amounts of data but produce high overhead when used for
bulk data movement.
 To solve this problem Direct Memory Access (DMA) is
used as will be shown later.

Operating System Concepts – 9th Edition 1.15 Silberschatz, Galvin and Gagne ©2013
Common Functions of Interrupts

 Interrupt transfers control to the interrupt service routine


generally, through the interrupt vector, which contains the
addresses of all the service routines
 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
 An operating system is interrupt driven

Operating System Concepts – 9th Edition 1.16 Silberschatz, Galvin and Gagne ©2013
Interrupt Handling

 The operating system (OS) preserves the state of the CPU


by storing registers and the program counter
 Separate segments of code determine what action should
be taken for each type of interrupt

Operating System Concepts – 9th Edition 1.17 Silberschatz, Galvin and Gagne ©2013
Interrupt Timeline

Operating System Concepts – 9th Edition 1.18 Silberschatz, Galvin and Gagne ©2013
Storage Definitions and Notation Review
The basic unit of computer storage is the bit. A bit can contain one of two
values, 0 and 1. All other storage in a computer is based on collections of bits.
Given enough bits, it is amazing how many things a computer can represent:
numbers, letters, images, movies, sounds, documents, and programs, to name
a few. A byte is 8 bits, and on most computers it is the smallest convenient
chunk of storage. For example, most computers don’t have an instruction to
move a bit but do have one to move a byte. A less common term is word,
which is a given computer architecture’s native unit of data. A word is made up
of one or more bytes. For example, a computer that has 64-bit registers and 64-
bit memory addressing typically has 64-bit (8-byte) words. A computer executes
many operations in its native word size rather than a byte at a time.
Computer storage, along with most computer throughput, is generally measured
and manipulated in bytes and collections of bytes.
A kilobyte, or KB, is 1,024 bytes
a megabyte, or MB, is 1,0242 bytes
a gigabyte, or GB, is 1,0243 bytes
a terabyte, or TB, is 1,0244 bytes
a petabyte, or PB, is 1,0245 bytes

Computer manufacturers often round off these numbers and say that a
megabyte is 1 million bytes and a gigabyte is 1 billion bytes. Networking
measurements are an exception to this general rule; they are given in bits
(because networks move data a bit at a time).

Operating System Concepts – 9th Edition 1.19 Silberschatz, Galvin and Gagne ©2013
Storage Structure
 Main memory – only large storage media that the CPU can access
directly
 Random access
 Typically volatile
 Secondary storage – extension of main memory that provides large
nonvolatile storage capacity
 Hard disks – rigid metal or glass platters covered with magnetic
recording material
 Disk surface is logically divided into tracks, which are subdivided into
sectors
 The disk controller determines the logical interaction between the device
and the computer
 Solid-state disks – faster than hard disks, nonvolatile
 Various technologies
 Becoming more popular

Operating System Concepts – 9th Edition 1.20 Silberschatz, Galvin and Gagne ©2013
Storage Hierarchy

 Storage systems organized in hierarchy


 Speed
 Cost
 Volatility
 Caching – copying information into faster storage system;
main memory can be viewed as a cache for secondary
storage
 Device Driver for each device controller to manage I/O
 Provides uniform interface between controller and
kernel

Operating System Concepts – 9th Edition 1.21 Silberschatz, Galvin and Gagne ©2013
Storage-Device Hierarchy

Operating System Concepts – 9th Edition 1.22 Silberschatz, Galvin and Gagne ©2013
Caching

 Caches installed to improve performance.


 Important principle, performed at many levels in a computer
(in hardware, operating system, software)
 Information in use copied from slower to faster storage
temporarily
 Faster storage (cache) checked first to determine if
information is there
 If it is, information used directly from the cache (fast)
 If not, data copied to cache and used there
 Cache smaller than storage being cached
 Cache management important design problem
 Cache size and replacement policy

Operating System Concepts – 9th Edition 1.23 Silberschatz, Galvin and Gagne ©2013
Direct Memory Access Structure

 Used for high-speed I/O devices able to transmit


information at close to memory speeds
 Device controller transfers blocks of data from buffer
storage directly to main memory without CPU
intervention
 Only one interrupt is generated per block, rather than
the one interrupt per byte

Operating System Concepts – 9th Edition 1.24 Silberschatz, Galvin and Gagne ©2013
How a Modern Computer Works

A von Neumann architecture

Operating System Concepts – 9th Edition 1.25 Silberschatz, Galvin and Gagne ©2013

You might also like