2 systems architecture describes structure, interaction, and technology of computer system...

49

Upload: richard-lewis-warner

Post on 28-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

2

Systems Architecture

• Describes structure, interaction, and technology of computer system components

• Capabilities of a computer– Accept numeric inputs

– Perform computational functions

– Communicate results

3

Automated Computation

• Mechanical– Early computers with limited capabilities

• Electronic– Fast, accurate reliable

• Optical– Fast, accurate reliable

4

Mechanical Implementation

• Mechanical representation of a mathematical calculation

• Difference engine - Charles Babbage, 1821• Limitations and shortcomings

– Complex design and construction

– Wear, breakdown, and maintenance of parts

– Limits on operating speed

5

6

Electronic Implementation

• Stores numerical values as magnetic charges or by positioning electrical switches

• Can convert physical movement into electrical signals, or vice versa

• World War II – impetus for change• Faster, more reliable, easier to build than

mechanical counterparts

7

Optical Implementation

• Harnesses energy of a moving photon• Represents data as pulses of light stored directly

or indirectly by materials that reflect or don’t reflect light

• Now common in computer networks that cover large distances

8

Computer Capabilities

• Processing• Storage• Communication

9

Processor

• Device that performs data manipulation and transformation functions– Computation

– Comparison

– Data movement among memory, mass storage, and input/output devices

10

Processor Terminology• Instructions: is a signal or command to a processor to perform one of

its functions. When a processor performs a function in response to an instruction, it is said to be executing that instruction.

• Programs: a stored set of instructions that implement a specific task. Programs can be reused again and again.

• General-purpose and special-purpose processors: GPP can execute many different instructions in many different sequences or combinations. SPP is designed to perform only one specific task. It is a processor with a single internal program, such as microwave ovens.

• Formulas and algorithms: an algorithm is a program in which different sets of instructions are applied to different data input values.

• Comparisons and branching: each numerical comparison is called a condition, and the result of evaluating a condition is either true or false. When a comparison condition is true , the program jumps or branches to the first instruction that implements the corresponding formula.

11

Storage Capacity

• Types of information to be stored– Intermediate processing results

– Data

– Programs

• Characteristics of storage devices vary widely– Cost

– Access speed

– Reliability

12

Input/Output Capability

• Must encompass many communication modes– Sound, text, and graphics (for humans)

– Electronic or optical communication (for other computers)

13

Computer Hardware

14

Computer HW major functions• Processing: executing computation, comparison, and other

instructions to transform data inputs into data outputs.

• Storage: storing program instructions and data for temporary, short term and long term use.

• External communication: communicating with entities outside the computer system, including users, system administrators, and other computer systems.

• Internal communication: transporting data and instructions among internal and peripheral hw components such as processors, disk drives, video displays and printers.

15

16

Central Processing Unit

• General-purpose processor– Executes all instructions (computation and

comparison functions)

– Directs all data movement

17

18

CPU Components

Arithmetic logic unit (ALU)

• Contains electrical circuits that implement each instruction

Registers • Internal storage locations that can each hold a single instruction or data item

Control unit • Controls movement of data to and from CPU

• Accesses program instructions and issues appropriate commands to ALU

19

System Bus

• Internal communication channel that connects all other hardware devices

• Primary pathway for moving data and instructions among hardware components

• Capacity is critical to performance, secondary storage, and I/O device performance

20

Primary Storage(Main Memory)

• Holds program instructions and data for currently executing programs

• Implemented with random access memory (RAM)– Provides access speed and allows CPU to read or

write to specific memory locations

– Volatile; does not provide permanent storage

21

Secondary Storage

• Composed of high-capacity nonvolatile storage devices that hold:– Programs not currently being executed

– Data not needed by currently executing programs

– Data needed by currently executing programs that does not fit within available primary storage

22

23

Input/Output Devices

• Implement external communication functions• Human-oriented communication devices

(e.g., keyboard, mouse, printer)• Computer-oriented communication devices

(e.g., modem, network interface unit)

24

Computer System Classes

Microcomputer • Meets information processing needs of single user

• Examples: PCs, network computers

Midrange computer • Supports many programs and users simultaneously

Mainframe • Handles information processing needs of large number of users and applications

• Designed for large amounts of data storage and access

Supercomputer • Designed for rapid mathematical computation

25

26

Multicomputer Configurations

• Any organization of multiple computers to support a specific set of services or applications

• Common configurations– Cluster

– Blade

– Grid

27

Cluster

• Group of similar or identical computers that cooperate to provide services or execute a common application– Connected by high-speed network– Typically located close to one another

• Advantages: scalability and fault tolerance• Disadvantages: complex configuration and

administration• Ex: modern web server

28

Blade

• Circuit board that contains most of a server computer; a specialized cluster

• Has one or more CPUs, memory, network interfaces, it lacks secondary storage, external I/O connections, and a power supply

• Same advantages and disadvantages as a cluster, . It is a specialized cluster. but also:– Concentrate more computing power in less space

– Are simpler to modify a cluster of blades than a cluster of standalone computer systems.

29

Grid

• Group of dissimilar computer systems, connected by high-speed network, that cooperate to provide services or execute a common application

• Computers may be in separate rooms, buildings, or continents

• Computers work cooperatively at some times, independently at others

30

Bigger Isn’t Always Better

• Grosch’s Law (1952) has been rewritten due to:– Multiple classes of computers

– Expanded abilities to configure computers for specific purposes

– Increased software costs relative to hardware costs

– Large computer databases

– Widespread adoption of graphical user interfaces

– Multicomputer configurations

31

The Role of Software

• Translates user requests into machine instructions• Performs complex translation process that bridges

two gaps– Human language to machine language (binary)

– High-level abstraction to low-level detail

32

33

Software TypesApplication program

• Stored set of instructions for responding to a specific information-processing tasks

• Used directly by end users

Utility program

• Contains instructions for performing general-purpose tasks

• Usually operates invisibly in the background

• Used directly by end users

System software

• Implements utility functions needed by many application programs

• Allocates computer resources to application programs

• Manages computer resources

• Does not interact with end users

34

• The most significant distinction between application and system sw is specificity of purpose and use. Application sw is targeted to specific information-processing tasks like generating customer credit card bills. System sw is targeted to general-purpose tasks that support many application programs and users.

35

36

System Software Layers

• System management: utility programs used by end users and system admin to manage and control computer resources.

• System services: utility programs used by system management and application programs to perform common functions

• Resource allocation: utility programs that allocate hw and other resources among multiple users and programs.

• Hardware interface: utility programs that control and interact with individual hw devices.

37

• The principle of sw layers applies not only to the relationship between application and system sw but also to the relationship among various components of system sw. machine independence is achieved by placing all hw interfaces functions within a single system sw layer. In theory system sw can be modified to operate on new computer hw by modifying only hw interface layer. In practice, machine independence is not always that simple.

• Resource allocation is important but relatively invisible, function of system sw. Ex: hundreds users of programs executing simultaneously, under such condition, resources such as I/O devices cannot always be provided to a program or user immediately.

38

39

Operating Systems

• Most important system software component• Collection of utility programs that provides:

– Administrative utilities

– Utility services to application programs

– Resource allocation functions

– Direct control over hardware

40

Operating System Functions

• Program storage, loading, and execution• File manipulation and access• Secondary storage management• Network and interactive user interfaces

41

Application Development Software

• Programs used to develop other programs• Types

– Program translators

– Program editors

– Debugging tools

– System development tools

42

Economics of System and Application Development Software• System software consumes hardware resources• Cost per unit of computing power has rapidly

decreased• Software is more cost-effective when reused many

times

43

44

Computer Networks

• Set of hardware and software components that enable multiple users and computer systems to share information, software, and hardware resources

• Enables many types of personal communication

45

46

External Resources

• Ability to share data, programs, and hardware resources among computers

• Gives modern organizations flexibility to deploy and redeploy computing and information resources to satisfy rapidly changing needs

47

Network Software

• Finds requested resources on the network• Negotiates resource access with distant resource

allocation software• Receives and delivers resources to requesting user

or program• May also listen for and validate resource requests,

and deliver resources via the network

48

Network Communication and the Physical Network

• Network communication devices– Simpler than I/O devices; do not need to convert

data represented electronically into another form

– Must support communication at high speeds

• Physical network– Complex combination of communication

protocols, methods of data transmission, and network hardware devices

49

Summary

• Basic elements of computer system architecture– Hardware

– Software

– Networks

• Importance of knowing how all components of a computer system interrelate as well as their internal workings