Operating System Hardware Components

Download Report

Transcript Operating System Hardware Components

Guide to Operating Systems,
4th ed.
Chapter 3: Operating Systems Hardware
Components
Objectives
• Explain operating system hardware components,
which will include design type, speed, cache,
address bus, data bus, control bus, and CPU
scheduling
• Describe the basic features and system
architecture of popular PC processors
• Understand how hardware components interact
with operating systems
Guide to Operating Systems, 4th ed.
2
Understanding CPUs
• One of the main functions of the OS is to provide
the interface between the various application
programs running on a computer and the hardware
inside.
• The system architecture of the computer is built
around the CPU.
– Includes the number and type of CPUs in the hardware, and
the communications routes (buses) between CPUs and other
hardware components.
• The CPU is the chip that performs the actual
computational and logic work.
– Most modern PCs have one such chip (Single-Core
Processors).
Guide to Operating Systems, 4th ed.
3
Understanding CPUs
• The CPU is the chip that performs the actual
computational and logic work.
– Most modern PCs have one such chip (Single-Core
Processors).
– For complete functionality, the CPU requires several support
chips to help manage communications with devices and device
drivers.
• Core – section of the processor that actually does
the reading and execution of instructions
– Processors originally only had one core
– Multicore processor has two or more cores
Guide to Operating Systems, 4th ed.
4
Understanding CPUs
• A processor is the part of the CPU that reads and
executes very basic instructions.
– Processors were originally created to have only one core to
perform one instruction at a time.
– The core is the section of the processor that actually does the
reading and executing of instructions.
– A multicore processor has two or more cores.
• Dual-core processor – two cores
• Quad-core processor – four cores
• A Multiprocessor computer has multiple physical
CPU chips
Guide to Operating Systems, 4th ed.
5
Understanding CPUs
• CPUs can be classified by hardware elements:
–
–
–
–
–
–
–
Design type
Speed
Cache
Address bus
Data bus
Control bus
CPU scheduling
Guide to Operating Systems, 4th ed.
6
Design Type
• Two general CPU designs are used today:
– Complex Instruction Set Computing (CISC)
– Reduced Instruction Set Computing (RISC)
• Main difference between the two design types is
the number of different instructions the chip can
process
• CPUs can process as many as 20 million (low-end)
to several billion (high-end) operations per second
• Clock speed and CPU design are the factors that
determine how fast operations are executed.
• Instruction set – The list of commands the CPU
can understand and carry out
Guide to Operating Systems, 4th ed.
7
Design Type
• How a CISC CPU operates
– When the CPU gets a command it assigns specific instructions to
different parts of the chip
– When a command is finished and the next command is received, the
CPU uses the same parts of the chip it used before
– CISC-based chips recognize more than 200 different instructions.
– The Intel x86 family of computers is based on the CISC CPU.
• Advantages of CISC:
– Only needs general-purpose hardware to carry out commands versus
hardware designed for a specific purpose
– Chip is driven mainly by software, which is cheaper to produce
Guide to Operating Systems, 4th ed.
8
Design Type
• Disadvantages of CISC:
– The complexity of hardware needed to perform many functions
– The complexity of on-chip software needed to make the hardware do
the right thing.
– The need to continually reprogram the on-chip hardware.
• If you use the same part of the chip to add a number as you use to multiply
a number, you must reconfigure the hardware in between the multiplication
and addition operations.
– CISC chips can be a little slower than RISC chips
– When you use general-purpose hardware to perform specific
functions, the functions won’t always be executed in the most
efficient way.
• Can slow the CPU’s execution of program code.
• Solution – Customize hardware for specific
functions.
Guide to Operating Systems, 4th ed.
9
Design Type
• Disadvantages of CISC CPU
• Example – A math coprocessor can be added in order to help
perform all computational functions
– Increases CPU performance
– Also increases the price
Guide to Operating Systems, 4th ed.
10
Design Type
• How a RISC CPU operates
– Requires very little setup for specific tasks because it has
hardware on the chip that is specially designed and optimized
to perform particular functions.
• Disadvantage - Need more hardware to carry out instructions
which makes the chip more expensive.
• This is the main reason a RISC CPU has so few instructions –
most of the instructions it performs are conducted by hardware on
the chip that is dedicated to perform just that function.
– Because most of the hardware on the RISC CPU is not shared
among many instructions, RISC CPUs typically use a technique
called pipelining
• Allows the processor to operate on one instruction while it is
retrieving one or more instructions from the OS or application
• Approximately 95% of mobile phones worldwide use ARM
(Advanced RISC Machine) chips.
Guide to Operating Systems, 4th ed.
11
Design Type
CISC versus RISC processing
Guide to Operating Systems, 4th ed.
12
Design Type
• The RISC processor design has evolved into a concept
called Explicitly Parallel Instruction Computing
(EPIC)
– Created as a joint project by Intel and Hewlett-Packard (HP)
– Enables the processor to handle massive numbers of
operations simultaneously by implementing large storage areas
and executing parallel instruction sets
• A single processor can execute as many as 20 operations at a
time.
– Chip can predict and speculate which operations are likely in
the future.
• Through prediction and speculation, the chip actually performs
some operations before they are requested.
• It sets up areas of memory (work areas) so that the tools needed
for similar operations are already present, and those operations
are handled one after another.
Guide to Operating Systems, 4th ed.
13
Design Type
• RISC-based EPIC processors (continued)
– EPIC can support up to 256 64-bit registers
• More registers than CISC and RISC processors.
• Reduces or eliminates bottlenecks at the processor, which
enables the processor to work faster.
– Can build three instructions into one “word”
• A word is like a single communication with the processor
• CISC and traditional RISC use one instruction per word.
– Enables the processor to work much faster.
– EPIC instructions can be combined into instruction groups,
consisting of multiple “words”
• It attempts to execute all of the instructions in one group at the
same time, if possible.
• The number of instructions in one instruction group is,
theoretically, unlimited.
Guide to Operating Systems, 4th ed.
14
Speed
• The speed of a CPU defines how fast it can
perform operations
• Most obvious indicator is the internal clock speed
– The clock provides a rigid schedule to make sure all the chips
know what to expect at what time
• The internal clock speed tells you how many clock
pulses (ticks) are available per second
– The CPU performs some action on every tick.
– The more ticks/second, the faster the CPU executes
commands and the harder the electronics on the CPU must
work.
Guide to Operating Systems, 4th ed.
15
Speed
• As more components are needed to make a CPU,
the chip uses more energy to do its work
– Part of this energy is converted to heat.
– CPUs require fans to keep cool.
• The chips must be able to communicate with other
chips in the computer
– Uses the external clock speed of the computer to
communicate with the rest of the computer
– External clock speed runs slower than the internal clock speed
• Typically one-half, on-third, one-fourth, or one-eighth the speed of
the internal CPU clock
• It would be extremely expensive to make every component in the
computer run as fast as the CPU.
• It is common practice to run the other components as a reduced
clock rate.
Guide to Operating Systems, 4th ed.
16
Cache
• Since the internal clock of a CPU is faster than the
external clock the CPU would have to wait on
information to arrive from other parts of the
computer
• Most modern CPUs have cache memory built into
the chip.
– This memory is extremely fast and typically runs at the same
speed as the processor
• Level 1 (L1) cache
– Some CPUs have two or more levels of cache memory, called
level 2 (L2) cache
• Normally runs at the same speed as the external CPU clock
– Some CPUs have level 3 (L3) cache on a separate chip.
Guide to Operating Systems, 4th ed.
17
Cache
• In many cases, up to 90% of data the CPU needs to
transfer to and from memory is present in the L1, L2/L3
cache
– Cache controller – predicts what data will be needed and makes the
data available in cache before it is needed
• Intelligent, fast cache controllers and large amounts of
L1, L2, and L3 help increase the speed of a CPU
Guide to Operating Systems, 4th ed.
18
Address Bus
• Address Bus – An internal communications
pathway that specifies the source and target
addresses for memory reads and writes.
– Typically runs at the external clock speed of the CPU
– The address is conveyed in the form of a series of bits.
– The width of the address bus is the number of bits that can be
used to address memory
• A wider bus means the computer can address more memory and
store more data
– Most PCs use a 32-bit address bus
• Allows them to address 4 billion (4 GB) memory addresses
– Some newer processors use a 64-bit address bus
• Allows them to address 16 terabytes (TB) of memory
Guide to Operating Systems, 4th ed.
19
Data Bus
• The data bus allows computer components, such
as CPU, display adapter, and main memory, to
share information
• The number of bits in the data bus indicates how
many bits of data can be transferred from memory
to the CPU in one clock tick.
– A CPU with an external clock speed of 1 GHz will have 1 billion
ticks per second (1 byte = 8 bits; 1billion X 16 bits (16-bit data
bus) / 8 bits/second = 2 GB/ second)
– A 64-bit data bus could transfer as much as 8 GB per second
• The software must be able to instruct the CPU to use all of the
data bus;
• The rest of the computer must be fast enough to keep up with the
CPU.
Guide to Operating Systems, 4th ed.
20
Data Bus
• Most CPUs work internally with the same number
of bits as on the data bus.
– A CPU with a 64-bit data bus typically can perform operations
on 64 bits of data at a time.
– Almost all CPUs can be instructed to work with chunks of data
narrower than the data bus width, but the CPU is not as
efficient
• The same number of clock cycles is required to perform an
operation, whether or not all bits are used.
• Windows Vista, Windows 7, Windows Server
2003/2008, MAC OS Leopard and Snow Leopard
OSs include a 64-bit version.
Guide to Operating Systems, 4th ed.
21
Control Bus
• Information is transported on the control bus to
keep the CPU informed about the status of
resources and devices connected to the computer
– Whether or not a particular resource is active and can be
accessed.
• Memory read and write status is transported on this
bus, as well as interrupt requests (IRQs)
– A request to the processor to “interrupt” whatever it is doing to
take care of a process, which in turn might be interrupted by
another process
Guide to Operating Systems, 4th ed.
22
CPU Scheduling
• Determines which process to start given the
multiple processes waiting to run.
– During DOS days, most OSs were single threaded.
– They would run just one process until it was completed and
then turn to the next process.
• Beginning with Windows NT, the use of CPU
scheduling algorithms began to evolve allowing
multithreading
– The ability to run two or more processes (threads) at the same
time
Guide to Operating Systems, 4th ed.
23
Popular PC Processors
• Intel – most popular CPU manufacturer today
– 8088 – CPU found in the original IBM PC
– Early Intel processors were identified by model numbers: 8088,
8086, 80286, 386, 486 (sometimes preceded by an i as in i486)
– Pentium family of chips followed 486 and are sometimes
identified by a P and a number (example – P4)
– Intel Itanium and Itanium 2 are newer 64-bit processors for
high-end PCs and server
Guide to Operating Systems, 4th ed.
24
Popular PC Processors
Single-core Intel CPUs
Guide to Operating Systems, 4th ed.
25
Popular PC Processors
Guide to Operating Systems, 4th ed.
26
Popular PC Processors
• Intel Itanium and Itanium 2 processors are different
from previous ones in two respects:
– Built on the RISC-based EPIC architecture
– 64-bit chips
– In order to use the capabilities of 64-bit processing, the
operating system and applications must be rewritten to use 64bit processing
– Windows XP, Windows Server 2003 Enterprise, Windows
Server 2003 Datacenter, and Windows Server 2008 can run on
Itanium 64-bit processors
Guide to Operating Systems, 4th ed.
27
Popular PC Processors
• Initially, processors were developed with one core.
– Where program instructions are executed.
• Today, some computers contain 6, 8, 12, 16, and
even more cores.
Guide to Operating Systems, 4th ed.
28
Popular PC Processors
Multicore Intel CPUs
Guide to Operating Systems, 4th ed.
29
Popular PC Processors
• Advanced Micro Devices, Inc. (AMD) –
manufactures CPU chips that compete with Intel
Single-core AMD processors
Guide to Operating Systems, 4th ed.
30
Popular PC Processors
Multicore AMD processors
Guide to Operating Systems, 4th ed.
31
Popular PC Processors
• Motorola 68xxx – typically found in Macintosh
computers and older UNIX computers (now
discontinued)
• PowerPC – a new line of chips that used different
instructions sets than the Motorola 68xxx line
– Developed jointly by Apple Computer, IBM, and Motorola (AIM)
– In 2005, Apple moved to using Intel chips
• SPARC – Scalable Processor Architecture
– A RISC processor designed by Sun Microsystems
– SPARC T3 is the current version of the SPARC processor
• A 64-bit chip with 64-bit address and data buses
Guide to Operating Systems, 4th ed.
32
Popular PC Processors
• Alpha – CPU originally designed by Digital
Equipment Corporation (DEC), which was
purchased by Compaq, which was purchased by
HP
–
–
–
–
Found in older high-end HP Compaq servers
Has a 64-bit data and address bus
Was the first chip to reach a speed of 1 GHz
Found in computers conducting heavy networking, engineering,
and graphics duties
– There were many proprietary devices (file servers, firewalls,
and routers) that ran custom operating systems based on the
Alpha architecture
Guide to Operating Systems, 4th ed.
33
Chapter Summary
• Hardware and operating systems are interrelated because in many
ways they grew up together. Processor hardware improvements
have marched steadily from the early 8088 chip to the modern 64bit multicore processors. Operating systems paralleled these
changes to take advantage of the capabilities at each stage of
development.
• The early computer operating systems were well suited to the early
processors. As processors became faster and more advanced, so
did operating systems.
• Today, 64-bit processors provide a foundation for operating
systems like Windows 7, Mac OS X Snow Leopard, and
Linux/Fedora to take advantage of high-speed networking and
multimedia capabilities. Multicore processors bring greater
capabilities and functionality to server operating systems.
Guide to Operating Systems, 4th ed.
34