SlideShare a Scribd company logo
1 of 59
Chapter 1
Computer System
Overview
Ninth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Operating System
 Exploits the hardware resources of one or
more processors
 Provides a set of services to system users
 Manages secondary memory and I/O devices
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Basic Elements
Processor
Main
Memory
I/O
Modules
System
Bus
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Processor
Controls the
operation of the
computer
Performs the
data processing
functions
Referred to as
the Central
Processing Unit
(CPU)
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Main Memory
Stores data and programs
Typically volatile
 Contents of the memory is lost
when the computer is shut down
Referred to as real memory or
primary memory
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
I/O Modules
Move data
between the
computer and
its external
environment
Secondary
memory devices
(e.g. disks)
Communications
equipment
Terminals
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
System Bus
Provides for
communication among
processors, main memory,
and I/O modules
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
PC MAR
IR MBR
I/O AR
I/O BR
CPU Main Memory
System
Bus
I/O Module
Buffers
Instruction
0
1
2
n - 2
n - 1
Data
Data
Data
Data
Instruction
Instruction
Figure 1.1 Computer Components: Top-Level View
PC = Program counter
IR = Instruction register
MAR = Memory address register
MBR = Memory buffer register
I/O AR = Input/output address register
I/O BR = Input/output buffer register
Execution
unit
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Microprocessor
Invention that brought about desktop
and handheld computing
Contains a processor on a single chip
Fastest general purpose processors
Multiprocessors
Each chip (socket) contains multiple
processors (cores)
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Graphical Processing
Units (GPU’s)
 Provide efficient computation on arrays of
data using Single-Instruction Multiple Data
(SIMD) techniques pioneered in
supercomputers
 No longer used just for rendering advanced
graphics
 Also used for general numerical processing
 Physics simulations for games
 Computations on large spreadsheets
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Digital Signal Processors
(DSPs)
 Deal with streaming signals such as audio
or video
 Used to be embedded in I/O devices like
modems
 Are now becoming first-class computational
devices, especially in handhelds
 Encoding/decoding speech and video
(codecs)
 Provide support for encryption and security
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
System on a Chip
(SoC)
To satisfy the requirements of handheld
devices, the classic microprocessor is
giving way to the SoC
 Other components of the system, such as
DSPs, GPUs, I/O devices (such as codecs and
radios) and main memory, in addition to the
CPUs and caches, are on the same chip
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Instruction Execution
 A program consists of a set of
instructions stored in memory
Processor reads
(fetches) instructions
from memory
Processor executes
each instruction
Two steps
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
START HALT
Fetch Next
Instruction
Fetch Stage Execute Stage
Execute
Instruction
Figure 1.2 Basic Instruction Cycle
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
 The processor fetches an instruction from
memory
 Typically the program counter (PC) holds the
address of the next instruction to be fetched
 PC is incremented after each fetch
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Instruction Register (IR)
Fetched instruction is
loaded into Instruction
Register (IR)
 Processor interprets the
instruction and
performs required
action:
 Processor-memory
 Processor-I/O
 Data processing
 Control
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
2
PC
300
CPU Registers
Memory
Fetch Stage Execute Stage
3 0 0
1 9 4 0
301 5 9 4 1
302 2 9 4 1
940 0 0 0 3
941 0 0 0 2
AC
IR
1 9 4 0
Step 1
•
•
PC
300
CPU Registers
Memory
3 0 1
1 9 4 0
301 5 9 4 1
302 2 9 4 1
940 0 0 0 3
941 0 0 0 2
AC
IR
1 9 4 0
0 0 0 3
Step 2
•
•
PC
300
CPU Registers
Memory
3 0 1
0 0 0 5
0 0 0 5
0 0 0 3
0 0 0 5
1 9 4 0
301 5 9 4 1
302 2 9 4 1
940 0 0 0 3
941 0 0 0 2
AC
IR
5 9 4 1
Step 3
•
•
PC
300
CPU Registers
Memory
3 0 2
1 9 4 0
301 5 9 4 1
302 2 9 4 1
1
940 0 0 0 3
941 0 0 0 2
AC
IR
5 9 4 1
Step 4
•
•
PC
300
CPU Registers
Memory
3 0
1 9 4 0
301 5 9 4 1
302 2 9 4 1
940 0 0 0 3
941 0 0 0 2
AC
IR
2 9 4 1
Step 5
•
•
PC
300
CPU Registers
Memory
3 0 3
1 9 4 0
301 5 9 4 1
302 2 9 4 1
940 0 0 0 3
941 0 0 0 5
AC
IR
2 9 4 1
Step 6
•
•
3 + 2 = 5
Figure 1.4 Example of Program Execution
(contents of memory and registers in hexadecimal)
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Interrupts
 Mechanism by which other modules may
interrupt the normal sequencing of the
processor
 Provided to improve processor utilization
 Most I/O devices are slower than the processor
 Processor must pause to wait for device
 Wasteful use of the processor
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Table 1.1 Classes of Interrupts
Program Generated by some condition that occurs as a
result of an instruction execution, such as arithmetic
overflow, division by zero, attempt to execute an illegal machine
instruction, and reference outside a user's allowed memory
space.
Timer Generated by a timer within the processor. This allows the
operating system to perform certain functions on a regular
basis.
I/O Generated by an I/O controller, to signal normal
completion of an operation or to signal a variety of error
conditions.
Hardware Generated by a failure, such as power failure or memory
failure parity error.
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Figure 1.5a
Flow of Control
Without
Interrupts
User
Program
WRITE
WRITE
WRITE
I/O
Program
I/O
Command
END
1
2
3
4
5
(a) No interrupts
User
Program
WRITE
WRITE
WRITE
1
2a
2b
3a
3b
(b) Inter
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Figure 1.5b
Short I/O Wait
User
Program
WRITE
WRITE
WRITE
I/O
Program
I/O
Command
END
1
2
3
2
3
4
5
(a) No interrupts
User
Program
WRITE
WRITE
WRITE
I/O
Program
I/O
Command
Interrupt
Handler
END
1
2a
2b
3a
3b
4
5
(b) Interrupts; short I/O wait
User
Program
WRITE
WRITE
WRITE
1
(c) In
X = interrupt occurs during course of execution of
user program
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Figure 1.5c
Long I/O Wait
I/O
Program
I/O
Command
END
2
3
4
5
No interrupts
User
Program
WRITE
WRITE
WRITE
I/O
Program
I/O
Command
Interrupt
Handler
END
1
2a
2b
3a
3b
4
5
(b) Interrupts; short I/O wait
User
Program
WRITE
WRITE
WRITE
I/O
Program
I/O
Command
Interrupt
Handler
END
1 4
5
(c) Interrupts; long I/O wait
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
1
2
i
i + 1
M
Interrupt
occurs here
User Program Interrupt Handler
Figure 1.6 Transfer of Control via Interrupts
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
START
HALT
Fetch next
instruction
Fetch Stage Execute Stage Interrupt Stage
Interrupts
Disabled
Interrupts
Enabled
Execute
instruction
Check for
interrupt;
initiate interrupt
handler
Figure 1.7 Instruction Cycle with Interrupts
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
4
1
5 5
2
5
3
4
Time
I/O operation;
processor waits
I/O operation
concurrent with
processor executing
I/O operation
concurrent with
processor executing
I/O operation;
processor waits
4
2a
1
2b
4
3a
5
3b
(a) Without interrupts
(b) With interrupts
Figure 1.8 Program Timing: Short I/O Wait
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
4
1
5
2
5
3
4
Time
4
2
1
5
4
(a) Without interrupts
(b) With interrupts
Figure 1.9 Program Timing: Long I/O Wait
3
5
I/O operation;
processor waits
I/O operation;
processor waits
I/O operation
concurrent with
processor executing;
then processor
waits
I/O operation
concurrent with
processor executing;
then processor
waits
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Device controller or
other system hardware
issues an interrupt
Processor finishes
execution of current
instruction
Processor signals
acknowledgment
of interrupt
Processor pushes PSW
and PC onto control
stack
Processor loads new
PC value based on
interrupt
Save remainder of
process state
information
Process interrupt
Restore process state
information
Restore old PSW
and PC
Hardware Software
Figure 1.10 Simple Interrupt Processing
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Start
N + 1
Y + L
N
Y
Y
T
Return
User's
Program
Main
Memory
Processor
General
Registers
Program
Counter
Stack
Pointer
N + 1
T – M
T – M
T
Control
Stack
Interrupt
Service
Routine
User's
Program
Interrupt
Service
Routine
(a) Interrupt occurs after instruction
at location N
(b) Return from interrupt
Figure 1.11 Changes in Memory and Registers for an Interrupt
Start
N + 1
Y + L
N
Y
T
Return
Main
Memory
Processor
General
Registers
Program
Counter
Stack
Pointer
Y + L + 1
T – M
T – M
T
Control
Stack
N + 1
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Multiple Interrupts
An interrupt occurs
while another interrupt
is being processed
• e.g. receiving data
from a
communications line
and printing results at
the same time
Two approaches:
• Disable interrupts
while an interrupt is
being processed
• Use a priority scheme
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
User Program
Interrupt
Handler X
Interrupt
Handler Y
(a) Sequential interrupt processing
(b) Nested interrupt processing
Figure 1.12 Transfer of Control with Multiple Interrupts
User Program
Interrupt
Handler X
Interrupt
Handler Y
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
User Program
Printer
interrupt service routine
Communication
interrupt service routine
Disk
interrupt service routine
Figure 1.13 Example Time Sequence of Multiple Interrupts
t = 10
t = 40
t = 15
t = 25
t = 25
t = 35
t = 0
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Memory Hierarchy
 Design constraints on a computer’s memory
 How much?
 How fast?
 How expensive?
 If the capacity is there, applications will likely be
developed to use it
 Memory must be able to keep up with the processor
 Cost of memory must be reasonable in relationship
to the other components
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Memory Relationships
Faster
access time
= greater
cost per bit
Greater capacity =
smaller cost per
bit
Greater
capacity =
slower access
speed
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
The Memory Hierarchy
 Going down the
hierarchy:
 Decreasing cost per bit
 Increasing capacity
 Increasing access time
 Decreasing frequency of
access to the memory by
the processor
Figure 1.14 The Memory Hierarchy
Inboard
Memory
Outboard
Storage
Off-line
Storage
Main
Memory
Magnetic Disk
CD-ROM
CD-RW
DVD-RW
DVD-RAM
Blu-Ray
Magnetic Tape
Cache
Reg-
isters
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
0
T1
T1 + T2
T2
1
Fraction of accesses involving only Level 1 (Hit ratio)
Average
access
time
Figure 1.15 Performance of a Simple Two-Level Memory
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
 Memory references by the processor tend to
cluster
 Data is organized so that the percentage of
accesses to each successively lower level is
substantially less than that of the level above
 Can be applied across more than two levels
of memory
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Secondary
Memory
Also
referred to
as auxiliary
memory
• External
• Nonvolatile
• Used to
store
program and
data files
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
 Invisible to the OS
 Interacts with other memory management hardware
 Processor must access memory at least once per
instruction cycle
 Processor execution is limited by memory cycle time
 Exploit the principle of locality with a small, fast memory
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
CPU
Word Transfer
Fast
Fastest Fast
Less
fast
Slow
Slow
Block Transfer
Cache Main Memory
Figure 1.16 Cache and Main Memory
(a) Single cache
(b) Three-level cache organization
CPU
Level 1
(L1) cache
Level 2
(L2) cache
Level 3
(L3) cache
Main
Memory
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Memory
address
0
1
2
0
1
2
C - 1
3
2n
- 1
Word
Length
Block Length
(K Words)
Block 0
(K words)
Block M – 1
Line
Number Tag Block
(b) Main memory
(a) Cache
Figure 1.17 Cache/Main-Memory Structure
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Receive address
RA from CPU
Is block
containing RA
in cache?
Fetch RA word
and deliver
to CPU
DONE
Access main
memory for block
containing RA
Allocate cache
slot for main
memory block
Deliver RA word
to CPU
Load main
memory block
into cache slot
Figure 1.18 Cache Read Operation
START
No
RA - read address
Yes
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Main
categories
are:
Cache
size
Block size
Mapping
function
Replacement
algorithm
Write
policy
Number
of cache
levels
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Cache and Block Size
Cache
Size
Small caches
have significant
impact on
performance
Block
Size
The unit of data
exchanged
between cache
and main memory
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Mapping Function
Two constraints affect
design:
When one block is read
in, another may have to
be replaced
The more flexible the
mapping function, the
more complex is the
circuitry required to
search the cache
 Determines which cache
location the block will occupy
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Replacement Algorithm
 Chooses which block to replace when a
new block is to be loaded into the cache
Least Recently Used (LRU) Algorithm
 Effective strategy is to replace a block that
has been in the cache the longest with no
references to it
 Hardware mechanisms are needed to
identify the least recently used block
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Write Policy
• Can occur every time the block is updated
• Can occur when the block is replaced
• Minimizes write operations
• Leaves main memory in an obsolete state
Dictates when the memory write operation
takes place
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
I/O Techniques
Three techniques are possible for I/O
operations:
Programmed
I/O
Interrupt-
Driven I/O
Direct Memory
Access (DMA)
 When the processor encounters an instruction
relating to I/O, it executes that instruction by issuing a
command to the appropriate I/O module
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Programmed I/O
 The I/O module performs the requested action
then sets the appropriate bits in the I/O status
register
 The processor periodically checks the status of
the I/O module until it determines the instruction
is complete
 With programmed I/O the performance level of
the entire system is severely degraded
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Interrupt-Driven I/O
Processor
issues an I/O
command to
a module and
then goes on
to do some
other useful
work
The I/O module will
then interrupt the
processor to request
service when it is
ready to exchange
data with the
processor
The processor
executes the
data transfer
and then
resumes its
former
processing
More efficient than
Programmed I/O but
still requires active
intervention of the
processor to transfer
data between memory
and an I/O module
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Interrupt-Driven I/O
Drawbacks
 Transfer rate is limited by the speed with
which the processor can test and service a
device
 The processor is tied up in managing an I/O
transfer
 A number of instructions must be
executed for each I/O transfer
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Direct Memory Access
(DMA)
When the processor wishes to read or write data it
issues a command to the DMA module containing:
• Whether a read or write is requested
• The address of the I/O device involved
• The starting location in memory to read/write
• The number of words to be read/written
 Performed by a separate module on the system bus or
incorporated into an I/O module
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
 Transfers the entire block of data directly to
and from memory without going through the
processor
 Processor is involved only at the beginning and end of
the transfer
 Processor executes more slowly during a transfer
when processor access to the bus is required
 More efficient than interrupt-driven or
programmed I/O
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Symmetric Multiprocessors
(SMP)
 A stand-alone computer system with
the following characteristics:
 Two or more similar processors of comparable capability
 Processors share the same main memory and are
interconnected by a bus or other internal connection
scheme
 Processors share access to I/O devices
 All processors can perform the same functions
 The system is controlled by an integrated operating
system that provides interaction between processors and
their programs at the job, task, file, and data element
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Performance
• A system with multiple
processors will yield
greater performance if work
can be done in parallel
Availability
• The failure of a single
processor does not halt the
machine
Incremental Growth
• An additional processor
can be added to enhance
performance
Scaling
• Vendors can offer a range
of products with different
price and performance
characteristics
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
L1 Cache
Processor
Main
Memory I/O
Subsystem
System Bus
I/O
Adapter
Processor Processor
Figure 1.19 Symmetric Multiprocessor Organization
L1 Cache L1 Cache
L2 Cache L2 Cache L2 Cache
I/O
Adapter
I/O
Adapter
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Multicore Computer
 Also known as a chip multiprocessor
 Combines two or more processors (cores)
on a single piece of silicon (die)
 Each core consists of all of the components of
an independent processor
 In addition, multicore chips also include L2
cache and in some cases L3 cache
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
Summary
 Cache memory
 Motivation
 Cache principles
 Cache design
 Direct memory access
 Multiprocessor and
multicore organization
 Symmetric
multiprocessors
 Multicore computers
 Basic Elements
 Evolution of the
microprocessor
 Instruction execution
 Interrupts
 Interrupts and the
instruction cycle
 Interrupt processing
 Multiple interrupts
 The memory hierarchy
© 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.

More Related Content

Similar to Ch01-OS9e (1).pptx

CMP 416-Architecture and system design.pdf
CMP 416-Architecture and system design.pdfCMP 416-Architecture and system design.pdf
CMP 416-Architecture and system design.pdfElvisAngelot
 
OSLecture1.ppt
OSLecture1.pptOSLecture1.ppt
OSLecture1.pptAkkiiDerp
 
Overview of computer system
Overview of computer systemOverview of computer system
Overview of computer systemrozanadiana
 
CH01 - Computer Organization & Architecture - 10e_Stallings.pptx
CH01 - Computer Organization & Architecture - 10e_Stallings.pptxCH01 - Computer Organization & Architecture - 10e_Stallings.pptx
CH01 - Computer Organization & Architecture - 10e_Stallings.pptxHafizSaifullah4
 
Lecture1,2,3 (1).pdf
Lecture1,2,3 (1).pdfLecture1,2,3 (1).pdf
Lecture1,2,3 (1).pdfTaufeeq8
 
01 Programming for Problem Solving.pdf
01 Programming for Problem Solving.pdf01 Programming for Problem Solving.pdf
01 Programming for Problem Solving.pdfA2Zgameggc
 
Operatingsystems lecture2
Operatingsystems lecture2Operatingsystems lecture2
Operatingsystems lecture2Gaurav Meena
 
operating system over view.ppt operating sysyems
operating system over view.ppt operating sysyemsoperating system over view.ppt operating sysyems
operating system over view.ppt operating sysyemsJyoReddy9
 
Hardware and software of computer
Hardware and software of computerHardware and software of computer
Hardware and software of computerSurath Khadka
 
evolution of operating system
evolution of operating systemevolution of operating system
evolution of operating systemAmir Khan
 

Similar to Ch01-OS9e (1).pptx (20)

Chapter01 new
Chapter01 newChapter01 new
Chapter01 new
 
CMP 416-Architecture and system design.pdf
CMP 416-Architecture and system design.pdfCMP 416-Architecture and system design.pdf
CMP 416-Architecture and system design.pdf
 
OSLecture1.ppt
OSLecture1.pptOSLecture1.ppt
OSLecture1.ppt
 
Overview of computer system
Overview of computer systemOverview of computer system
Overview of computer system
 
CH01 - Computer Organization & Architecture - 10e_Stallings.pptx
CH01 - Computer Organization & Architecture - 10e_Stallings.pptxCH01 - Computer Organization & Architecture - 10e_Stallings.pptx
CH01 - Computer Organization & Architecture - 10e_Stallings.pptx
 
Chapter11 new
Chapter11 newChapter11 new
Chapter11 new
 
Ite pc v40_chapter5
Ite pc v40_chapter5Ite pc v40_chapter5
Ite pc v40_chapter5
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
 
Lecture1,2,3 (1).pdf
Lecture1,2,3 (1).pdfLecture1,2,3 (1).pdf
Lecture1,2,3 (1).pdf
 
Unit 6
Unit 6Unit 6
Unit 6
 
01 Programming for Problem Solving.pdf
01 Programming for Problem Solving.pdf01 Programming for Problem Solving.pdf
01 Programming for Problem Solving.pdf
 
Operatingsystems lecture2
Operatingsystems lecture2Operatingsystems lecture2
Operatingsystems lecture2
 
Lec 2
Lec 2Lec 2
Lec 2
 
operating system over view.ppt operating sysyems
operating system over view.ppt operating sysyemsoperating system over view.ppt operating sysyems
operating system over view.ppt operating sysyems
 
Chapter01 os7e
Chapter01 os7eChapter01 os7e
Chapter01 os7e
 
Chapter1
Chapter1Chapter1
Chapter1
 
Ch1
Ch1Ch1
Ch1
 
Hardware and software of computer
Hardware and software of computerHardware and software of computer
Hardware and software of computer
 
evolution of operating system
evolution of operating systemevolution of operating system
evolution of operating system
 
intro to OS
intro to OSintro to OS
intro to OS
 

Recently uploaded

Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubaihf8803863
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPramod Kumar Srivastava
 
Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...
Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...
Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...shivangimorya083
 
Log Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxLog Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxJohnnyPlasten
 
Customer Service Analytics - Make Sense of All Your Data.pptx
Customer Service Analytics - Make Sense of All Your Data.pptxCustomer Service Analytics - Make Sense of All Your Data.pptx
Customer Service Analytics - Make Sense of All Your Data.pptxEmmanuel Dauda
 
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130Suhani Kapoor
 
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一ffjhghh
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystSamantha Rae Coolbeth
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfLars Albertsson
 
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...dajasot375
 
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfKantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfSocial Samosa
 
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...Suhani Kapoor
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...Florian Roscheck
 
Brighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingBrighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingNeil Barnes
 
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Jack DiGiovanna
 
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...soniya singh
 

Recently uploaded (20)

Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
 
Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...
Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...
Full night 🥵 Call Girls Delhi New Friends Colony {9711199171} Sanya Reddy ✌️o...
 
Log Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxLog Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptx
 
Customer Service Analytics - Make Sense of All Your Data.pptx
Customer Service Analytics - Make Sense of All Your Data.pptxCustomer Service Analytics - Make Sense of All Your Data.pptx
Customer Service Analytics - Make Sense of All Your Data.pptx
 
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
 
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data Analyst
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdf
 
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
 
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfKantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
 
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
VIP High Class Call Girls Bikaner Anushka 8250192130 Independent Escort Servi...
 
Decoding Loan Approval: Predictive Modeling in Action
Decoding Loan Approval: Predictive Modeling in ActionDecoding Loan Approval: Predictive Modeling in Action
Decoding Loan Approval: Predictive Modeling in Action
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
 
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
 
Brighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingBrighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data Storytelling
 
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
 
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
 

Ch01-OS9e (1).pptx

  • 1. Chapter 1 Computer System Overview Ninth Edition By William Stallings Operating Systems: Internals and Design Principles © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 2. Operating System  Exploits the hardware resources of one or more processors  Provides a set of services to system users  Manages secondary memory and I/O devices © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 3. Basic Elements Processor Main Memory I/O Modules System Bus © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 4. Processor Controls the operation of the computer Performs the data processing functions Referred to as the Central Processing Unit (CPU) © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 5. Main Memory Stores data and programs Typically volatile  Contents of the memory is lost when the computer is shut down Referred to as real memory or primary memory © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 6. I/O Modules Move data between the computer and its external environment Secondary memory devices (e.g. disks) Communications equipment Terminals © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 7. System Bus Provides for communication among processors, main memory, and I/O modules © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 8. PC MAR IR MBR I/O AR I/O BR CPU Main Memory System Bus I/O Module Buffers Instruction 0 1 2 n - 2 n - 1 Data Data Data Data Instruction Instruction Figure 1.1 Computer Components: Top-Level View PC = Program counter IR = Instruction register MAR = Memory address register MBR = Memory buffer register I/O AR = Input/output address register I/O BR = Input/output buffer register Execution unit © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 9. Microprocessor Invention that brought about desktop and handheld computing Contains a processor on a single chip Fastest general purpose processors Multiprocessors Each chip (socket) contains multiple processors (cores) © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 10. Graphical Processing Units (GPU’s)  Provide efficient computation on arrays of data using Single-Instruction Multiple Data (SIMD) techniques pioneered in supercomputers  No longer used just for rendering advanced graphics  Also used for general numerical processing  Physics simulations for games  Computations on large spreadsheets © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 11. Digital Signal Processors (DSPs)  Deal with streaming signals such as audio or video  Used to be embedded in I/O devices like modems  Are now becoming first-class computational devices, especially in handhelds  Encoding/decoding speech and video (codecs)  Provide support for encryption and security © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 12. System on a Chip (SoC) To satisfy the requirements of handheld devices, the classic microprocessor is giving way to the SoC  Other components of the system, such as DSPs, GPUs, I/O devices (such as codecs and radios) and main memory, in addition to the CPUs and caches, are on the same chip © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 13. Instruction Execution  A program consists of a set of instructions stored in memory Processor reads (fetches) instructions from memory Processor executes each instruction Two steps © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 14. START HALT Fetch Next Instruction Fetch Stage Execute Stage Execute Instruction Figure 1.2 Basic Instruction Cycle © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 15.  The processor fetches an instruction from memory  Typically the program counter (PC) holds the address of the next instruction to be fetched  PC is incremented after each fetch © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 16. Instruction Register (IR) Fetched instruction is loaded into Instruction Register (IR)  Processor interprets the instruction and performs required action:  Processor-memory  Processor-I/O  Data processing  Control © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 17. © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 18. 2 PC 300 CPU Registers Memory Fetch Stage Execute Stage 3 0 0 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 2 AC IR 1 9 4 0 Step 1 • • PC 300 CPU Registers Memory 3 0 1 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 2 AC IR 1 9 4 0 0 0 0 3 Step 2 • • PC 300 CPU Registers Memory 3 0 1 0 0 0 5 0 0 0 5 0 0 0 3 0 0 0 5 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 2 AC IR 5 9 4 1 Step 3 • • PC 300 CPU Registers Memory 3 0 2 1 9 4 0 301 5 9 4 1 302 2 9 4 1 1 940 0 0 0 3 941 0 0 0 2 AC IR 5 9 4 1 Step 4 • • PC 300 CPU Registers Memory 3 0 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 2 AC IR 2 9 4 1 Step 5 • • PC 300 CPU Registers Memory 3 0 3 1 9 4 0 301 5 9 4 1 302 2 9 4 1 940 0 0 0 3 941 0 0 0 5 AC IR 2 9 4 1 Step 6 • • 3 + 2 = 5 Figure 1.4 Example of Program Execution (contents of memory and registers in hexadecimal) © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 19. Interrupts  Mechanism by which other modules may interrupt the normal sequencing of the processor  Provided to improve processor utilization  Most I/O devices are slower than the processor  Processor must pause to wait for device  Wasteful use of the processor © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 20. Table 1.1 Classes of Interrupts Program Generated by some condition that occurs as a result of an instruction execution, such as arithmetic overflow, division by zero, attempt to execute an illegal machine instruction, and reference outside a user's allowed memory space. Timer Generated by a timer within the processor. This allows the operating system to perform certain functions on a regular basis. I/O Generated by an I/O controller, to signal normal completion of an operation or to signal a variety of error conditions. Hardware Generated by a failure, such as power failure or memory failure parity error. © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 21. Figure 1.5a Flow of Control Without Interrupts User Program WRITE WRITE WRITE I/O Program I/O Command END 1 2 3 4 5 (a) No interrupts User Program WRITE WRITE WRITE 1 2a 2b 3a 3b (b) Inter © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 22. Figure 1.5b Short I/O Wait User Program WRITE WRITE WRITE I/O Program I/O Command END 1 2 3 2 3 4 5 (a) No interrupts User Program WRITE WRITE WRITE I/O Program I/O Command Interrupt Handler END 1 2a 2b 3a 3b 4 5 (b) Interrupts; short I/O wait User Program WRITE WRITE WRITE 1 (c) In X = interrupt occurs during course of execution of user program © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 23. Figure 1.5c Long I/O Wait I/O Program I/O Command END 2 3 4 5 No interrupts User Program WRITE WRITE WRITE I/O Program I/O Command Interrupt Handler END 1 2a 2b 3a 3b 4 5 (b) Interrupts; short I/O wait User Program WRITE WRITE WRITE I/O Program I/O Command Interrupt Handler END 1 4 5 (c) Interrupts; long I/O wait © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 24. 1 2 i i + 1 M Interrupt occurs here User Program Interrupt Handler Figure 1.6 Transfer of Control via Interrupts © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 25. START HALT Fetch next instruction Fetch Stage Execute Stage Interrupt Stage Interrupts Disabled Interrupts Enabled Execute instruction Check for interrupt; initiate interrupt handler Figure 1.7 Instruction Cycle with Interrupts © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 26. 4 1 5 5 2 5 3 4 Time I/O operation; processor waits I/O operation concurrent with processor executing I/O operation concurrent with processor executing I/O operation; processor waits 4 2a 1 2b 4 3a 5 3b (a) Without interrupts (b) With interrupts Figure 1.8 Program Timing: Short I/O Wait © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 27. 4 1 5 2 5 3 4 Time 4 2 1 5 4 (a) Without interrupts (b) With interrupts Figure 1.9 Program Timing: Long I/O Wait 3 5 I/O operation; processor waits I/O operation; processor waits I/O operation concurrent with processor executing; then processor waits I/O operation concurrent with processor executing; then processor waits © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 28. Device controller or other system hardware issues an interrupt Processor finishes execution of current instruction Processor signals acknowledgment of interrupt Processor pushes PSW and PC onto control stack Processor loads new PC value based on interrupt Save remainder of process state information Process interrupt Restore process state information Restore old PSW and PC Hardware Software Figure 1.10 Simple Interrupt Processing © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 29. Start N + 1 Y + L N Y Y T Return User's Program Main Memory Processor General Registers Program Counter Stack Pointer N + 1 T – M T – M T Control Stack Interrupt Service Routine User's Program Interrupt Service Routine (a) Interrupt occurs after instruction at location N (b) Return from interrupt Figure 1.11 Changes in Memory and Registers for an Interrupt Start N + 1 Y + L N Y T Return Main Memory Processor General Registers Program Counter Stack Pointer Y + L + 1 T – M T – M T Control Stack N + 1 © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 30. Multiple Interrupts An interrupt occurs while another interrupt is being processed • e.g. receiving data from a communications line and printing results at the same time Two approaches: • Disable interrupts while an interrupt is being processed • Use a priority scheme © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 31. User Program Interrupt Handler X Interrupt Handler Y (a) Sequential interrupt processing (b) Nested interrupt processing Figure 1.12 Transfer of Control with Multiple Interrupts User Program Interrupt Handler X Interrupt Handler Y © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 32. User Program Printer interrupt service routine Communication interrupt service routine Disk interrupt service routine Figure 1.13 Example Time Sequence of Multiple Interrupts t = 10 t = 40 t = 15 t = 25 t = 25 t = 35 t = 0 © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 33. Memory Hierarchy  Design constraints on a computer’s memory  How much?  How fast?  How expensive?  If the capacity is there, applications will likely be developed to use it  Memory must be able to keep up with the processor  Cost of memory must be reasonable in relationship to the other components © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 34. Memory Relationships Faster access time = greater cost per bit Greater capacity = smaller cost per bit Greater capacity = slower access speed © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 35. The Memory Hierarchy  Going down the hierarchy:  Decreasing cost per bit  Increasing capacity  Increasing access time  Decreasing frequency of access to the memory by the processor Figure 1.14 The Memory Hierarchy Inboard Memory Outboard Storage Off-line Storage Main Memory Magnetic Disk CD-ROM CD-RW DVD-RW DVD-RAM Blu-Ray Magnetic Tape Cache Reg- isters © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 36. 0 T1 T1 + T2 T2 1 Fraction of accesses involving only Level 1 (Hit ratio) Average access time Figure 1.15 Performance of a Simple Two-Level Memory © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 37.  Memory references by the processor tend to cluster  Data is organized so that the percentage of accesses to each successively lower level is substantially less than that of the level above  Can be applied across more than two levels of memory © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 38. Secondary Memory Also referred to as auxiliary memory • External • Nonvolatile • Used to store program and data files © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 39.  Invisible to the OS  Interacts with other memory management hardware  Processor must access memory at least once per instruction cycle  Processor execution is limited by memory cycle time  Exploit the principle of locality with a small, fast memory © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 40. CPU Word Transfer Fast Fastest Fast Less fast Slow Slow Block Transfer Cache Main Memory Figure 1.16 Cache and Main Memory (a) Single cache (b) Three-level cache organization CPU Level 1 (L1) cache Level 2 (L2) cache Level 3 (L3) cache Main Memory © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 41. Memory address 0 1 2 0 1 2 C - 1 3 2n - 1 Word Length Block Length (K Words) Block 0 (K words) Block M – 1 Line Number Tag Block (b) Main memory (a) Cache Figure 1.17 Cache/Main-Memory Structure © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 42. Receive address RA from CPU Is block containing RA in cache? Fetch RA word and deliver to CPU DONE Access main memory for block containing RA Allocate cache slot for main memory block Deliver RA word to CPU Load main memory block into cache slot Figure 1.18 Cache Read Operation START No RA - read address Yes © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 44. Cache and Block Size Cache Size Small caches have significant impact on performance Block Size The unit of data exchanged between cache and main memory © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 45. Mapping Function Two constraints affect design: When one block is read in, another may have to be replaced The more flexible the mapping function, the more complex is the circuitry required to search the cache  Determines which cache location the block will occupy © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 46. Replacement Algorithm  Chooses which block to replace when a new block is to be loaded into the cache Least Recently Used (LRU) Algorithm  Effective strategy is to replace a block that has been in the cache the longest with no references to it  Hardware mechanisms are needed to identify the least recently used block © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 47. Write Policy • Can occur every time the block is updated • Can occur when the block is replaced • Minimizes write operations • Leaves main memory in an obsolete state Dictates when the memory write operation takes place © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 48. I/O Techniques Three techniques are possible for I/O operations: Programmed I/O Interrupt- Driven I/O Direct Memory Access (DMA)  When the processor encounters an instruction relating to I/O, it executes that instruction by issuing a command to the appropriate I/O module © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 49. Programmed I/O  The I/O module performs the requested action then sets the appropriate bits in the I/O status register  The processor periodically checks the status of the I/O module until it determines the instruction is complete  With programmed I/O the performance level of the entire system is severely degraded © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 50. Interrupt-Driven I/O Processor issues an I/O command to a module and then goes on to do some other useful work The I/O module will then interrupt the processor to request service when it is ready to exchange data with the processor The processor executes the data transfer and then resumes its former processing More efficient than Programmed I/O but still requires active intervention of the processor to transfer data between memory and an I/O module © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 51. Interrupt-Driven I/O Drawbacks  Transfer rate is limited by the speed with which the processor can test and service a device  The processor is tied up in managing an I/O transfer  A number of instructions must be executed for each I/O transfer © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 52. Direct Memory Access (DMA) When the processor wishes to read or write data it issues a command to the DMA module containing: • Whether a read or write is requested • The address of the I/O device involved • The starting location in memory to read/write • The number of words to be read/written  Performed by a separate module on the system bus or incorporated into an I/O module © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 53.  Transfers the entire block of data directly to and from memory without going through the processor  Processor is involved only at the beginning and end of the transfer  Processor executes more slowly during a transfer when processor access to the bus is required  More efficient than interrupt-driven or programmed I/O © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 54. Symmetric Multiprocessors (SMP)  A stand-alone computer system with the following characteristics:  Two or more similar processors of comparable capability  Processors share the same main memory and are interconnected by a bus or other internal connection scheme  Processors share access to I/O devices  All processors can perform the same functions  The system is controlled by an integrated operating system that provides interaction between processors and their programs at the job, task, file, and data element © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 55. Performance • A system with multiple processors will yield greater performance if work can be done in parallel Availability • The failure of a single processor does not halt the machine Incremental Growth • An additional processor can be added to enhance performance Scaling • Vendors can offer a range of products with different price and performance characteristics © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 56. L1 Cache Processor Main Memory I/O Subsystem System Bus I/O Adapter Processor Processor Figure 1.19 Symmetric Multiprocessor Organization L1 Cache L1 Cache L2 Cache L2 Cache L2 Cache I/O Adapter I/O Adapter © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 57. Multicore Computer  Also known as a chip multiprocessor  Combines two or more processors (cores) on a single piece of silicon (die)  Each core consists of all of the components of an independent processor  In addition, multicore chips also include L2 cache and in some cases L3 cache © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 58. © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.
  • 59. Summary  Cache memory  Motivation  Cache principles  Cache design  Direct memory access  Multiprocessor and multicore organization  Symmetric multiprocessors  Multicore computers  Basic Elements  Evolution of the microprocessor  Instruction execution  Interrupts  Interrupts and the instruction cycle  Interrupt processing  Multiple interrupts  The memory hierarchy © 2017 Pearson Education, Inc., Hoboken, NJ. All rights reserved.