Array

Array

Introduction to Computer Organization Computer Hardware & Software

Administrative Issues – cont.

* The goal of the course
o Promo to my wonderful profession ?
o An overall overview on the IT (Information Technology) field
o Some needed background for the MBA program,
o … and the most important: Enjoying learning about the amazing IT world!

Administrative Issues – cont.

* The course requirements are:
o To be nice and open minded ?
o To submit your solutions to at least 95% of the assignments (there will be 3)
o To pass the exam (there is a boolean result)

The Major Topics (Syllabus)

* Computer Organization (HW&SW)
* Programming with Java
* Algorithms & Data Structures
* Databases Management (SQL, ERD)
* Complex Systems Design at the Conceptual Level with OPM
* Web Based Applications, Service Oriented Architecture (SOA)

Outline

* Computer Architecture
o What is all about?
o A brief architectural history
* Computing Systems
o A typical computer system
o Hardware (HW) & Software – terminology, layered organization…)
* Operating Systems
* Data in the Computer

Computer Architecture – What is it?

“Computer architecture is the computer as seen by the user”

– Amdhal et al, (64)

“…by architecture, we mean the structure of the modules as they are organized in a computer system…”

– Stone, H. (1987)

“The architecture of a computer is the interface between the machine and the software”

– Andris Padges

360/370 Architect

Architecture – the building blocks

* Structure -static arrangement of the parts (plan)
* Organization – dynamic interaction of these parts and their management (design)
* Implementation – the design of specific building blocks (construction)
* Performance evaluation – the behavior study of the system (decorative treatment)

Computer Architecture Disciplines

* Hardware/software structure
* Algorithms and their implementation
* Language Issues and programming models

A

Can we define the date of the computer “invention”?

A Brief Architectural History of the Computer – cont.

* The Abacus – 500 B. C. (Greeks and Romans Civilization)

The Roman Abacus Copy

Modern Abacus

A Brief Architectural History of the Computer – cont.

* Blaice Pascal, a noted French mathematician, invented a calculating machine (without constructing it) by 1642 (at the age of 19)

A Brief Architectural History of the Computer – cont.

In 1801, Joseph Marie Jacquard invented a loom that used punched cards

A Brief Architectural History of the Computer – cont.

* In early 1800s, Charles Babbage and Augusta Ada Byron (“the first computer programmer”) –mechanical calculating machine, called “analytical engine”.

A Brief Architectural History of the Computer – cont.

* In the same time – George Boole developed the binary theory (Boolean Logic).
* Relation of binary arithmetic with this logic made it possible implementing the modern electronic computers

A Brief Architectural History of the Computer – cont.

* In the later 1930, 1940 – “Mark I” was built by Howard H. Aiken (IBM) and another computer by Conrad Zuse (both with decimal numbers)
* In 1939 – ABC (Atanasoff & Berry Computer) a binary-based machine with vacuum tubes for switching
* Finally, between 1943-1946 the first all-electronic digital computer was developed (named ENIAC) by Mauchly & Eckert

The ENIAC

A Typical Computer System

Monitor

Speaker

Hard disk

Printer

CD-Rom

The Building Blocks – CPU

* CPU – consists of:
o ALU – Arithmetic and Logic Unit
o Set of registers (including program counter keeping the address of the next instruction to be performed)
o Control Unit – decoding instructions and controlling internal data movement among different CPU parts
o Interface Unit – moves data between CPU and other hardware components
o And more …

The Building Blocks: Memory

* The main memory – primary storage or RAM –
o Holds data or a piece of a program code (instructions)
o Consists of a large number of cells, each individually addressable.
o Cell is called “byte” and consists of 8 bits (binary elements holding 0 or 1)
o Usually a word consists of 4 bytes.
o In most cases – volatile memory
* The multilevel cash – an intermediate stage between ultra-fast registers (inside CPU) and much slower main memory.
o Most actively used information in the main memory is duplicated in the cache, which is faster, but of much lesser capacity.

CPU – Memory Organization

Levels of Representation

Assembly Language Program

Machine Language Program

Control Signal Specification

Compiler

Assembler

Machine Interpretation

temp = v[k];

v[k] = v[k+1];

v[k+1] = temp;

lw $to, 0($2)

lw $t1, 4($2)

sw $t1, 0($2)

sw $t0, 4($2)

0000 1001 1100 0110 1010 1111 0101 1000

1010 1111 0101 1000 0000 1001 1100 0110

1100 0110 1010 1111 0101 1000 0000 1001

0101 1000 0000 1001 1100 0110 1010 1111

°

°

High Level Language Program (e.g., C)

The Datapath example

Memory

I/O

HW Design Principles

* CISC vs. RISC
* Instructions directly executed by hardware
* Maximize instruction issue rate (ILP)
* Simple instructions (easy to decode)
* Access to memory only via load/store
* Plenty of registers
* Pipelining

Computing System

I/O system

Processor

Compiler

Operating

System

(Windows 98)

Application (Netscape)

Digital Design

Circuit Design

Instruction Set

Architecture

* Coordination of many levels of abstraction

Datapath & Control

transistors

Memory

Hardware

Software

Assembler

(OS)

User Interface (UI)

Application

Application UI

Kernel

File System

I/O drivers

Network

Modules

Operating System

* OS is a “broker” among the computer hw and the user applications
* OS itself is a software
* OS is usually stored on a hard disk
o the bootstrap or IPL (Initial Program Load) is stored within the non-volatile computer memory

Operating System – Multiprogramming

* A multiprogramming OS allows running many programs – each running program is referred as a process.
* The kernel creates a process by allocating
o some memory,
o loading program code from a peripheral storage into the newly allocated space,
o and starting its execution.

Operating System – Multiprogramming

* Each process is identified by its:
o PID,
o memory space allocated to it by the OS,
o location of the program code,
o last values of all the registers, a program counter, a stack
* A process may split itself into multiple ‘daughter’ sub-processes or threads that execute in parallel, running different instructions on much of the same resources and data. This is often done for GUIs (Graphical User Interfaces)

Operating System – Multitasking

* Multitasking – “parallel tasks executing”
* Control – the program access to the CPU and memory
* OS scheduler decides when to pass the control from one task to another
* Context-switch – control is passed to a process by the kernel
* Cooperative multitasking – each program that gets the CPU, runs until it decides to return the control to the kernel
* Preemptive multitasking – all programs are given regular time on the CPU
* A process may be blocked by referring to a peripheral device, then the control is taken from it by the kernel

Interrupts

* Interrupts are central to operating systems as they allow the OS to deal with the unexpected activities of running programs and the world outside the computer (what also?)
* When an interrupt is received, the HW suspends a currently running program by pushing the current state (including registers) on a process stack.
* Interrupts may come from either the computer’s HW, or from the running program. The OS kernel deals with each interrupt.

Operating System – Virtual Memory

* If a program tries to access memory that isn’t in its current range of accessible memory, but has been allocated to it, the kernel will receive an INT.

Operating System – Virtual Memory

* Under UNIX this kind of interrupt is referred to as a “page fault”.
o Then using a special table (“yellow pages”), the OS “finds” from where to load the needed “pages”
o Less recently used pages inside the memory then are thrown, and the needed pages are loaded instead of them – this process is called swapping
o Frequently used pages in the same memory are raised to the cash (the same process is repeated for the multilevel cash)

Operating System – Other Features

* Protected and supervisor modes of tasks executing
* File system management
* Networking
* I/O Drivers
* Users Administration

download form Source

Popularity: 34% [?]

Incoming search terms:

introduction to computer ppt|computer hardware ppt free download|Computer introduction ppt free download|architic hard ware comptr|introduction to computers ppt free download|introduction to mobile hardware parts|memory ppt|operating system software ppt|powerpoint templates free for introduction to computing|ppt of memories in computer organisation||
Share

Tags: , , , , ,

Related News - Computer

Entertainment and Media: Markets and Economics

Language Processing

Mac OS X Security

Phishing ~ An Evolution

Introduction to Computer Organization Computer Hardware & Software

One Response to “Introduction to Computer Organization Computer Hardware & Software”

  1. Good job. I’m definitely going to bookmark you!

Leave a Reply

*