Chapter 2 - Cal State LA - Instructional Web Server

advertisement
Systems Architecture, Fourth Edition
Chapter 2
Chapter 2
Introduction to Systems Architecture
Instructor Notes
Automated Computation
Mechanical Implementation
Early mechanical computation devices were designed to perform repetitive mathematical calculations. The
common element in all such computation devices is a mechanical representation of a mathematical calculation.
Computational functions beyond addition also can be implemented mechanically. As the complexity of
computational functions increases, the complexity of the mechanical device increases.
There are inherent limitations and shortcomings of mechanical computation including:
 Complex design and construction
 Wear, breakdown, and maintenance of mechanical parts
 Physical limits on operating speed
1
Systems Architecture, Fourth Edition
Chapter 2
Electrical Implementation
Mechanical computation eventually gave way to electrical computers. In an electrical computing device, the
movement of electrons performs essentially the same functions as gears and wheels in mechanical computers.
Electrical computers were faster due to the relatively high speed at which electrons move.
Optical Implementation
Light can also be used for computations. Light can be transmitted over appropriate conductors, such as laser light
through a fiber-optic cable. Data can be represented as pulses of light.
Technology Focus – Quantum Computing
Current computer technology is based on principles of classical physics including electronics, magnetism.
Quantum physics describes the behavior of matter at the subatomic level. Quantum particles exhibit behaviors that
are not seen in larger units of matter. The data stored in a single quantum particle is called a quantum bit or qubit.
When a quantum computing device operates on a qubit it operates on both values simultaneously, producing two
results. Operating on larger strings of qubits produces exponentially greater numbers of results (e.g., 32 results
from a 5 qubit string, computed as 25).
Computer Capabilities
Computer system capabilities include the processor, storage devices and I/O devices.
2
Systems Architecture, Fourth Edition
Chapter 2
Processor:
The processor is a device that performs data manipulation and/or transformation functions including:
 Computation
 Comparison
 Data movement
Processors function using a program; which is made up of a series of instructions. Processors can be classified
either as general-purpose or special-purpose. A general-purpose processor is capable of executing many different
instructions in many different sequences or combinations. A special-purpose processor is designed to perform only
one specific task.
A processor can solve two basic types of problems:
 Formula
 Algorithm
A formula applies the same sequence of computations or transformations to all data inputs. Solving a formulaic
problem (e.g., Figure 2-3) requires only data movement and computation instructions.
To solve an algorithmic problem (e.g., Figure 2-5), a processor applies different sets of processing rules to
different kinds of data. To determine which rules to apply, the processor must evaluate conditions, such as
whether a numeric input like INCOME falls within a certain range of values. To evaluate a condition and alter
processing accordingly, a processor must execute data comparison and conditional branching instructions.
Storage Capacity:
3
Systems Architecture, Fourth Edition
Chapter 2
Computers store intermediate processing results, data and programs. Programs and data must be stored for current
and future use. When the data and program instructions need to be accessed quickly, they are stored in locations
that can be accessed rapidly by the processor. When the data and program instructions are not currently needed,
they can be stored on secondary storage devices.
Input/Output Capability:
A computer system communicates with users and other computer systems using input/output devices. A typical
computer system has many input and output devices including: keyboard, mouse, printer, network interface card
and modem.
Computer Hardware
Computer hardware has four major components:




processing (central processing unit)
storage (primary and secondary storage)
external communication (input/output devices)
internal communication (system bus).
The central processing unit executes all instructions and controls all data movement within the computer system.
The central processing unit is made up of the arithmetic and logic unit (ALU), registers and control unit. The
arithmetic and logic unit implements all mathematical and logical operations. Simple arithmetic instructions
include addition, subtraction, multiplication and division. Logical instructions include equal to, greater than, and
less than. The control unit has two primary functions: control the movement of data to and from CPU registers
and other hardware components and access program instructions and issue appropriate commands to the ALU.
4
Systems Architecture, Fourth Edition
Chapter 2
Primary storage holds the data and instructions that are currently needed by the computer system.
Secondary storage holds the data and instructions that are not currently needed by the computer system and data
needed by currently executing programs that does not fit within available primary storage.
Storage type
CPU registers
Implementation
Very-high-speed electrical devices
within the CPU
Primary storage
High-speed electrical devices
(RAM) outside the CPU
Secondary storage
Low-speed electromagnetic or
optical devices (for example,
magnetic and optical disc)
Table 2-1: Comparison of storage types
Contents
Currently executing instruction; a
few dozen items of related data
Programs currently being executed;
hundreds to millions of data items
Programs not currently being
executed; billions to trillions of data
items
External communication devices implement external communication functions. I/O devices can be classified
into human-oriented and computer-oriented communication devices.
Internal communication is performed through the system bus. Each hardware component is connected to the
system bus. The system bus is the primary pathway for data transmission among hardware components.
Computer System Classes

Microcomputer –meets the information processing needs of a single user.

Minicomputer –performs information processing for multiple users and to execute many application
programs simultaneously.

Mainframe –handles the information processing needs of a large number of users and applications.

Supercomputer –quickly performs many mathematical computations. Used for computationally
intensive applications such as simulation, 3-D modeling, weather prediction, computer animation, and
real-time analysis of large databases.
5
Systems Architecture, Fourth Edition

Chapter 2
Server  manages one or more shared resources such as file systems, databases, Web sites, printers, and
high-speed CPUs, and allows users to access those resources over a local- or wide-area network.
The issue of flexible computing platforms may or may not be discussed in depth. The Tech Focus on IBM
POWER-Based computer systems is a case in point. An analogy can also be drawn to automobiles and trucks.
Detroit (or Tokyo) can turn a single car platform into an economy or small luxury car. Similarly, one frame can be
used to build trucks ranging from half-ton pickups to 5-ton delivery vans and recreational vehicles. But no amount
of production magic can turn a Buick into a moving van or a UPS truck into an Indy racing car.
Class
Micro
Typical
Product
IBM PS/2
(Model 70)
Workstation
SUN
SPARC
Station 2
Mini
DEC 5000
Mainframe
IBM 3090
Typical
Specifications
2 million main memory cells
100 million disk storage cells
single user
16 million main memory cells
200 million disk storage cells
high performance video
single user
16 million main memory cells
1 billion disk storage cells
tape drive(s)
4 – 64 users
64 million main memory cells
5 billion disk storage locations
multiple tape drives
high capacity I/O
up to 256 users
1 – 4 CPUs
6
Approximate
Cost
$5,000
$20,000
Processor
Speed
2 million
instructions per
second
20 million
instructions per
second
$40,000
20 million
instructions per
second
$2,000,000
50 million
instructions per
second
Systems Architecture, Fourth Edition
Super
Class
Cray YMP
Typical
Product
Micro
IBM
ValuePoint 486
Workstation
Decstation
5000/133
Mini
DECstation
5000/240
Mainframe
IBM 9120/320
Super
IBM 9076/SP1
Chapter 2
64 million maim memory cells
5 billion disk storage cells
no interactive users
multiple CPUs
$10,000,000
250 million
floating point
operations per
second
Typical
Specifications
8 million main memory cells
120 million disk storage cells
single user
16 million main memory cells
400 million disk storage cells
high performance video
single user
32 million main memory cells
1 billion disk storage cells
1 tape drive
16 interactive users
256 million main memory cells
10 billion disk storage locations
multiple tape drives
16 high capacity I/O channels
512 users
4 CPUs
1 billion main memory cells
10 billion disk storage cells
64 CPUs
Approximate
Cost
$2,000
Processor
Speed
5 million
instructions per
second
20 million
instructions per
second
Table 2-2. Computer classes (1993). Second Edition of Textbook.
7
$12,500
$30,000
25 million
instructions per
second
$1,000,000
50 million
instructions per
second
$2,000,000
2 billion
floating point
operations per
second
Systems Architecture, Fourth Edition
Chapter 2
8
Systems Architecture, Fourth Edition
Class
Micro
Typical
Product
IBM PC 300PL
Workstation
IBM RS/6000 43P
Model 150D
Mini
IBM pSeries 640
Mainframe
IBM S/390 X67
Super
IBM Rs/6000 SP
Chapter 2
Typical
Specifications
128 million main memory cells
20.4 billion disk storage cells
Single CPU
Single user
256 million main memory cells
18 billion disk storage cells
Single CPU
High performance video I/O
Single user
1024 million main memory cells
54 billion disk storage cells
2 CPUs
Tape drive
32 billion main memory cells
100 billion disk storage cells
32 high capacity I/O channels
up to 1000 users
6 CPUs
64 million maim memory cells
5 billion disk storage cells
no interactive users
multiple CPUs
Approximate
Cost
$2,000
Processor
Speed
300 million
instructions per
second
$13,000
750 million
instructions per
second
$25,000
1.5 billion
instructions per
second
$750,000
2.5 billion
instructions per
second
$2,000,000
50 billion
floating point
operations per
second
Table 2-2. Computer classes (2000).
Business Focus – Bigger Isn’t Always Better
In the 1950’s Grosch’s Law could be applied to the relationship of computer cost to computing power. According
to Grosch’s Law, large and powerful computers always will be more cost efficient than smaller ones. This was
true when the only computer systems available were mainframe computers and the cost of hardware exceeded the
cost of software. Today, Grosch’s Law no longer applies. The development of smaller, powerful computers with
the ability to be networked has made the processing power of smaller computer system exceed the power of some
larger computer systems. The entire issue of cost effectiveness of different hardware classes is often
overshadowed by the fact that the cost of software development today exceeds the cost of hardware.
Technology Focus – IBM POWER-Based Computer Systems
The Role of Software
9
Systems Architecture, Fourth Edition
Chapter 2
There are two categories of software: application software and system software. Application software is a stored
set of instructions for responding to a very specific request. For example, assume that a person wants to type a
paper or memo. What type of application software package will they use? System software is a collection of
programs that:



provide utility functions needed by many application programs
allocate computer resources to application programs
manage computer resources.
Economics of System and Application Development Software
Three economic factors of hardware and software account for the advancement of modern software:



System software requires hardware resources.
The cost per unit of computing power has decreased at nearly an exponential rate.
Software is more cost effective when it is reused many times.
As the cost of computer hardware decreased, the economic balance between labor (users and programmers) and
computer hardware resources shifted. Hardware typically is the cheapest component of current information
systems, and system and application software are nearly equal to components in the total cost (see Figure 2-12).
10
Systems Architecture, Fourth Edition
Chapter 2
Technology Focus – Intel CPUs and Microsoft Operating Systems
Computer Networks
A computer network is a set of hardware and software components that allows information, software and hardware
resources to be shared among multiple users and computer systems. Through the network, the user can either
access data that is stored locally or data that is stored on the network at a distance. Allocating and accessing
resources at a distance is very complex. The software must:



find the requested resources on the network
negotiate resource access with distant resource allocation software
receive and deliver the resources to the requesting user or program.
Further Readings or Resources
See http://averia.mgt.unm.edu for an up-to-date list of reference materials.
Key Terms
algorithm, 28
(1) Series of processing steps that describes the solution to a problem. (2) Sequence of instructions within a
computer program that implements a complex processing operation. direct access and potential security breaches.
application development software, 48
Software tools such as compilers and CASE tools used to develop application software.
application program, 44
Program that addresses a single specific need of a user or a specific class of information processing tasks.
application software, 44
Software class consisting of all application programs.
arithmetic logic unit (ALU), 33
Circuitry within a central processing unit that performs computation, comparison, and Boolean logic operations.
BRANCH, 29
11
Systems Architecture, Fourth Edition
Chapter 2
Processor operation that causes an instruction other than the next sequential instruction to be fetched and executed.
(2) Processor instruction that implements a branch operation by overwriting the current value of the instruction
pointer.
central processing unit (CPU), 32
Computer system hardware component that fetches and executes instructions.
computer network, 54
Hardware and software that enables multiple users and computer systems to share information, software, and other
resources.
condition, 29
A comparison or other logical operation that produces a Boolean result.
control unit, 33
Subset of a central processing unit responsible for moving data, accessing instructions, and controlling the
arithmetic logic unit.
debugging tool, 49
Type of application development software that simulates program execution and traces errors.
execute, 27
Process of carrying out an instruction within the central processing unit.
formula, 28
Processing problem that can be solved by executing a fixed sequence of instructions.
general-purpose processor, 27
Processor that can be directed to perform a wide variety of specific processing tasks.
Grosch’s Law, 37
Outdated mathematical relationship between computer size and cost per unit of instruction execution that states that
cost per executed instruction decreases as computer system size increases.
hardware independence, 46
Independence of a program or processing method from the physical details of computer system hardware.
input output (I/O) unit, 32
Device that enables communication between a user and software or among computer systems or their components.
instruction, 27
Bit string containing an operation code and zero or more operands that cause a processor to perform a processing
operation.
JUMP, 29
Synonym of BRANCH operation.
logic instruction, 29
Instruction that implements a boolean comparison operation.
machine independence, 46
Synonym of hardware independence.
main memory, 34
(1) Synonym of primary storage. (2) Set of devices that implement primary storage excluding cache.
mainframe, 37
High-capacity computer system designed to support hundreds of interactive users and processes simultaneously.
memory, 34
(1) Synonym of primary storage. (2) Random access memory devices used anywhere within a computer system,
peripheral device, or device controller.
12
Systems Architecture, Fourth Edition
Chapter 2
microcomputer, 36
Computer system that can meet low-intensity processing needs of a single user.
minicomputer, 37
Computer system that meets the processing needs of a small- to medium-sized group of interactive users.
network computer, 36
Personal computer or workstation with no locally stored operating software, application software, or configuration
information.
operating system, 47
Set of software programs that manage and control access to computer resources.
personal computer (PC), 36
Synonym of microcomputer.
primary storage, 32
High-speed storage within a computer system, accessed directly by the central processing unit, used to hold
currently active programs and data immediately needed by those programs.
processor, 27
Any device capable of performing data transformation operations.
program, 27
Sequence of processing instructions.
program editor, 49
Software that assists programmers in creating valid source code.
program translator, 49
Program that translates instructions in one programming language or instruction set into equivalent instructions in
another programming language or instruction access storage locations directly, or in any
desired order.
programming language, 49
Any language in which computer-processing functions or instructions can be expressed.
quantum measurement problem, 25
Behavior where the multiple states of a qubit are disturbed by any attempt to measure their value.
qubit, 25
Data stored in a single quantum particle.
random access memory (RAM), 34
(1) Generic description of semiconductor devices used to implement primary storage. (2) Device used to implement
primary storage that provides direct access to stored data.
register, 33
High-speed storage location within a central processing unit that can hold a single word.
secondary storage, 32
Set of computer system devices that provide large-capacity and long-term data storage.
server, 39
Computer system or process that manages hardware or software resources and makes those resources available to
clients.
special-purpose processor, 27
(1) Processor with a limited set of processing functions. (2) Processor capable of executing only a single program.
13
Systems Architecture, Fourth Edition
Chapter 2
supercomputer, 39
Computer designed for very fast processing of real numbers, typically implemented with some form of parallel
processing.
system bus, 32
Bus shared by most or all devices in a computer system.
system development tool, 49
(1) Software tool designed to aid in creating groups of programs constituting an entire system. (2) Approximate
synonym of computer assisted software engineering tool.
system software, 45
Software programs that perform hardware interface, resource management, or application support functions.
systems architecture, 22
Structure, interaction, and technology of computer system components.
utility program, 45
Program that performs a commonly used function, such as printing a text file or copying a file, typically provided
by the operating system either as separate tool or as part of the service layer.
volatility, 34
(1) Rate of change in a set of data items. (2) Lack of ability to permanently store data content.
workstation, 3
(1) Powerful microcomputer designed to support demanding numerical or graphical processing tasks. (2) A
synonym of personal computer or microcomputer.
14
Download