1 Computer Systems Hardware, Software and Layers of Abstraction.

Slides:



Advertisements
Similar presentations
4/23/2015Engineering Problem Solving with C++ second edition, J. ingber 1 Engineering Problem Solving with C++, Etter/Ingber Chapter 1.
Advertisements

Introduction to Computer Programming Nai-Wei Lin Department of Computer Science and Information Engineering National Chung Cheng University.
The Central Processing Unit: What Goes on Inside the Computer.
HARDWARE AND SOFTWARE DEVELOPMENT By: Pratama Wahyu Purnama ( ) Maulida Yulianti ( )
Chapter 1: Introduction We begin with a brief, introductory look at the components in a computer system We will then consider the evolution of computer.
History of the Micro-Computer. Group Question Get into a pair of two. You have three minutes to come up with two answers and make an educated guess at.
Computer History.
CSCI-235 Micro-Computers in Science Course Information & Introduction.
EECC341 - Shaaban #1 Lec # 1 Winter Introduction to Digital Systems Analog devices and systems process time-varying signals that can take.
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
Chapter 01 Introduction Chapter 0 Introduction. Chapter 02 History of Computing - Early Computers Abacus (ancient orient, still in use) Slide rule (17C,
Chapter 9_3 Following Instructions: Principles of Computer Operation.
Appendix The Continuing Story of the Computer Age.
Introduction to Computers and Programming. Some definitions Algorithm: –A procedure for solving a problem –A sequence of discrete steps that defines such.
CS 104 Introduction to Computer Science and Graphics Problems History of Computer 09/05/2008 Yang Song (Prepared by Yang Song and Suresh Solaimuthu)
Some of these slides are based on material from the ACM Computing Curricula 2005.
Computer Organization and Assembly Language
Prepared by: Jasper Francisco. The Early Years 1  In the early years, before the computer was invented, there were several inventions of counting machine.
Evolution of Computers
Chapter 1 An Introduction to Computer Science
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
 What’s a Computer? What’s a Computer?  Characteristics of a Computer Characteristics of a Computer  Evolution of Computers Evolution of Computers.
Chapter 01 Nell Dale & John Lewis.
© Prentice-Hall, Inc Definition  Computer - An electronic device that has the ability to store, retrieve, and process data and can be programmed with.
BACS 287 Basics of Programming BACS 287.
CREATION OF THE COMPUTER & THE GRAND IDEAS OF COMPUTER SCIENCE
Computer Hardware and Software Chapter 1. Overview Brief History of Computers Hardware of a Computer Binary and Hexadecimal Numbers Compiling vs. Interpreting.
History of Digital Computers
The History of Computers
The History of Computers. People have almost always looked for tools to aid in calculation. The human hand was probably the first tool used to help people.
CCSE251 Introduction to Computer Organization
3 1 3 C H A P T E R Hardware: Input, Processing, and Output Devices.
Technology in Focus: Under the Hood
CS 1410 Intro to Computer Tecnology Computers and History1.
Lecture 1: What is a Modern Computer

© Prentice-Hall, Inc Definition  Computer - An electronic device that has the ability to store, retrieve, and process data and can be programmed with.
Chapter 1 The Big Picture.
1.1 The Computer Revolution. Computer Revolution Early calculating machines Mechanical devices used to add and subtract By Babylonian (Iraq) 5000 years.
Introduction Computer Organization and Architecture: Lesson 1.
1 History of Computers (Excerpts from CMPE3). 2 The History of Computers The history of computers is interesting (or should be if you are in this class)
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
CMSC 120: Visualizing Information 1/29/08 Introduction to Computing.
Computer Science What is Computer Science? Algorithm Design and Analysis Organization and Architecture Artificial Intelligence Databases Operating Systems.
CPIT 201 Introduction to Computing
Chapter 1 Introduction.

Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
Computer Organization & Assembly Language © by DR. M. Amer.
Why build a computer? u Computers were developed to mechanize mathematical computations. u Two definitions:  A computer is “a programmable electronic.
Session One: An Introduction to Computing History of Computers
Evolution of the Computer. Zeroth Generation- Mechanical 1.Blaise Pascal –Mechanical calculator only perform Von Leibiniz –Mechanical.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
CC311 Computer Architecture Chapter 1 Computer Abstraction & Technology.
Computer Organization IS F242. Course Objective It aims at understanding and appreciating the computing system’s functional components, their characteristics,
CHAPTER 1 INTRODUCTION.  Data Processor: ◦ The basic definition of a computer is as a data processor. ◦ A black box that: 1.Accepts input data, 2.Processes.
PRENTATION COMPUTER HISTORY SUBMITTED BY:- BHUVANESH JAISWAL.
Computer Architecture Furkan Rabee
4. History of Computing Technology
Computer Organization and Architecture Lecture 1 : Introduction
Computer Operations Part 2.
Computer Science 2 What’s this course all about?
Computer History.
COMPUTER ORGANZIATION AND ASSEMBLY LANGUAGE
Architecture & Organization 1
Architecture & Organization 1
BIC 10503: COMPUTER ARCHITECTURE
History of Computers - Long, Long Ago
Computer History.
CSCI-100 Introduction to Computing
Presentation transcript:

1 Computer Systems Hardware, Software and Layers of Abstraction

2 Automation & Computers Fundamental question of computer science: What can be automated? Computers automate processing of information Computer is general-purpose machine that can solve different types of problems –Hardware: physical aspects of system –Software: set of programs that instruct hardware to perform problem-solving tasks

3 Computer Organization How components fit together to create working computer system Encompasses physical aspects of computer systems Concerned with how computer hardware works

4 Computer Architecture Structure & behavior of computer system Logical aspects of system implementation as seen by programmer Concerned with how computer is designed Combination of hardware components with instruction set architecture; ISA is interface between software that runs on machine & hardware that executes it

5 Computer Hardware Basic hardware components: CPU, memory, I/O devices Information flows from one component to another via a group of connecting wires called the bus

6 Terminology & Units of Measure Basic unit of data storage in computer is the byte Memory size (both primary and secondary) usually given in multiples of bytes: –1 K = 1 kilobyte = 1024 bytes –1 M = 1 megabyte = 1,048,576 bytes –1 G = 1 gigabyte = 1,073,741,824 bytes –1 T = 1 terabyte = 1,099,511,627,776 bytes

7 Terminology & Units of Measure Processor speed is usually given in terms of cycles per second (hertz) or instructions per second –1 MHz = 1 megahertz, or 1000 hertz –1 gigahertz = 1 million hertz –1 mips = 1 million instructions per second Common units of time: –1 ms = 1 millisecond (1/1000) –1  s = 1 microsecond (1/1,000,000) –1 ns = 1 nanosecond (1/1,000,000,000)

8 Historical Development of Computers Evolution of computing hardware divided into generations Each generation defined by technology used to build machines

9 Generation 0: Mechanical Calculating Machines Seventeenth century: Pascal’s Pascaline and Leibniz’s Stepped Reckoner –Pascal’s design used in adding machines as late as 1920; capable of addition with carry and subtraction –Leibniz’s design more versatile; could do multiplication & division as well as addition & subtraction

10 Generation 0 Nineteenth century: Charles Babbage & Ada Lovelace –Babbage developed calculator he called the Difference Engine for mechanizing solution of polynomial functions –Babbage designed (but never built) the Analytical Engine; general-purpose machine including a mechanical processor, storage, and I/O devices –Ada Lovelace wrote the world’s first computer program, a plan for how the engine would calculate numbers

11 Generation 0 Jacquard’s loom: 19 th century programmable weaving machine Used punched cards to store the patterns to be woven by the loom; Babbage planned to use similar means to store programs for the Analytical Engine Punched cards continued to be media of choice for stored programs well into 20 th century

12 Generation 1: Vacuum Tube Computers ( ) Several contenders for inventor of first electronic computer: –Konrad Zuse: Z1 used electromechanical relays instead of Babbage’s mechanical cranks –John Atanasoff: ABC was first completely electronic computer; built specifically to solve systems of linear equations –John Mauchly and J. Presper Eckert: ENIAC was first general-purpose electronic computer

13 Vacuum Tubes Control flow of electrons in electrical systems like valves control flow of water in plumbing systems –Electrons flow from negatively charged cathode to positively charged anode –A control grid or grids within the tube can reduce or prevent electron flow –Vacuum tube can act as either switch or amplifier

14 Generation 2: Transistors ( ) Vacuum tube technology wasn’t very dependable Transistor: solid-state version of vacuum tube –Transistors smaller, use less power, and more reliable – revolutionized entire electronics industry Computers still large and expensive at this stage, but beginning to be mass produced; many manufacturers emerged at this point

15 Generation 3: Integrated Circuits ( ) Integrated circuit, or microchip, allow many transistors on a single silicon chip Computers became faster, smaller, cheaper, more powerful First time-sharing and multiprogramming systems appeared at this time Computing became more affordable to increasingly smaller organizations

16 Generation 4: VLSI (1980-present) With third generation, multiple transistors were packed onto one chip; current generation features multiple levels of integration: –SSI: small-scale integration; components per chip –MSI: medium-scale integration; 100-1,000 –LSI: large-scale integration; 1,000-10,000 –VLSI: very large-scale integration; more than 10,000 components per chip

17 Generation 4 VLSI allowed Intel to create (in 1971) the world’s first microprocessor –4004 was fully functional, 4-bit system that ran at 108 KHz –Intel also introduced RAM chip, accommodating 4K bits of memory on a single chip VLSI spawned development of microcomputers, increased computing power of all classes of computers

18 Moore’s Law In 1965, Intel founder Gordon Moore stated: “The density of transistors in an integrated circuit will double every year.” Current version of Moore’s Law predicts doubling of density of silicon chips every 18 months Moore originally thought this postulate would hold for 10 years; advances in chip manufacturing processes have allowed the law to hold for 40 years, and it is expected to last for perhaps another 10

19 Principle of Equivalence of Hardware & Software Anything that can be done with software can also be done with hardware, and anything that can be done with hardware can also be done with software Modern computers are implementations of algorithms that execute other algorithms

20 Semantic Gap Open space between the physical components of a computer system and the high-level instructions of an application Semantic gap is bridged at each level of abstraction

21 Abstraction Complete definition of abstraction includes the following: –Suppression of detail –Outline structure –Division of responsibility –Subdivision of system into smaller subsystems

22 Abstraction & computer systems Can look at a computer as being a machine composed of a hierarchy of levels –Each level has specific function –Each level exists as a distinct hypothetical machine (or virtual machine) Each level’s virtual machine executes its own particular set of instructions, calling upon machines at lower levels to carry out tasks as necessary

23 Abstraction & computer systems Text uses the following labels to describe levels of abstraction in a computer system: –App7 –HOL6 –Asmb5 –OS4 –ISA3 –Mc2 –LG1 Each level has its own language to describe tasks performed by computer

24 Level App7 The application level is composed of those programs designed to do specific kinds of tasks for end users An application may have some sort of programming language associated with it (macros or shortcuts, e.g.) Ideally, end users need not be concerned with the actions and language(s) associated with lower levels in the abstraction hierarchy

25 Level HOL6 The high order language layer is the layer of abstraction at which most programmers operate Applications are typically written in high order languages High order languages are characterized by: –Portability across platforms –Relative ease of use –Relatively high level of abstraction, requiring translation of program code prior to execution

26 Level Asmb5 The assembly language level is an intermediate step between high order language and the machine language of a particular processor Programs at the HOL6 level are usually compiled to level Asmb5, then translated (assembled) to machine language Source code can also be written in assembly language

27 Level OS4 The operating system is responsible tasks related to multiprogramming, including: –Memory protection –Process synchronization –Device management Operating systems were originally developed for multiuser systems, but even most single user systems utilize an operating system Compilers and assemblers are also considered systems software

28 Level ISA3 The instruction set architecture, or machine language level, consists of the set of instructions recognized by the particular hardware platform Instructions at this level are directly executable without any translation

29 Level Mc2 The microinstruction or control level is the level at which the computer decodes and executes instructions and moves data in and out of the processor The processor’s control unit interprets machine language instructions, causing required actions to take place

30 Level LG1 The digital logic level consists of the physical components of the computer system, the actual electronic gates and wires Boolean algebra and truth tables can be used to describe the operations at this level