ITE 1213 Computer Systems Notes - Semester One

ITE 1213 Computer Systems Notes - Semester One

Asela Pasindu
SID: e2410858


Table of Contents

  • Introduction to Computer Systems

  • Understand what a computer system is

  • Main components of a computer

    • Input Unit

    • Central Processing Unit (CPU)

    • Memory Unit

    • Output Unit

    • Motherboard

  • Identify types of computer systems

    • Supercomputers

    • Mainframe Computers

    • Minicomputers (Mid-range Computers)

    • Microcomputers (Personal Computers)

    • Embedded Computers

  • Components interact via system buses and communication channels

  • Digital Logic Foundations

  • Binary Number Systems and Conversions

  • Understand Logic Gates

  • Build Basic Combinational Logic Circuits

  • Apply Logic to build simple Adders, Multiplexers, etc.

  • Internal Component & Architecture

  • Motherboard Layout and Connections

  • Understand Memory Hierarchy

  • Storage Types

  • Overview of I/O devices and controllers

  • Instruction Set Architecture (ISA)

  • What is IAS and why it’s important

  • Why is ISA Important?

  • Machine code VS Assembly language

    • Machine Code

    • Assembly Language

  • Understand CPU instruction cycle (fetch-decode-execute)

    • Fetch Stage

    • Decode Stage

    • Execute Stage

  • RISC vs CISC Architectures

    • RISC (Reduced Instruction Set Computer)

    • CISC (Complex Instruction Set Computer)

  • Processor Organization

    • Von Neumann architecture

  • Understand CPU internals: ALU, CU, Registers

    • Control Unit (CU)

    • Arithmetic Logic Unit (ALU)

    • Registers

  • How data flows inside the processor

  • More on CPU

    • Pipelining

    • Multi-Core

    • Cache Memory

    • Parallel Processing

    • Processor Performance

  • Memory Addressing

    • Memory Structure

    • Addressing Types

    • Importance of Memory Addressing

  • Overview of clock cycles and performance metrics

  • Performance Metrics?

  • Operating Systems (OS)

  • What is an operating system and its purpose?

  • Purpose of an Operating System

  • Core Functions of an OS

  • Types of OS

    • Batch Operating Systems

    • Time-Sharing Operating Systems

    • Distributed Operating Systems

    • Single-User Operating Systems

    • Multi-User Operating Systems

    • Real-Time Operating Systems (RTOS)

    • Embedded Operating Systems

    • Mobile Operating Systems

  • Computing Environments

  • Understand User vs Kernel mode

    • User Mode

    • Kernel Mode

  • Application Software and Peripherals

  • Difference between system software and Application software

    • System Software

    • Application Software

  • Explore common office suites, browsers, and dev tools

    • Office Suites

    • Browsers

    • Development Tools

  • Study how to choose and connect peripherals (keyboard, printers, etc.)

    • Peripherals

    • Choosing Peripherals

    • Connecting Peripherals

  • Driver Software and Compatibility

    • Driver Software

    • Importance

    • Compatibility

  • Buying a Computer & Online Work

  • Privacy & Security

    • Learn about cybersecurity basics

    • Understand user authentication, encryption, and firewalls

    • Protect your personal data, devices and privacy online

    • Good practices for backups and antivirus

  • Review & Assessment Preparation


Introduction to Computer Systems

Understanding What a Computer System Is

  • A computer system is an integrated combination of hardware, software, and Humanware (Human interaction) designed to process, store, and output information in a meaningful way.

  • Key elements include:

    • Hardware: Physical components of a computer system.

    • Examples: Input Devices, Output Devices, Central Processing Unit (CPU), Memory, Motherboard.

    • Software: Programs and operating systems that direct hardware to perform tasks.

    • Examples: System Software, Application Software.

    • Humanware (Liveware): The user interacts with the computer system, providing input and interpreting output.

Main Components of a Computer

  • A computer consists of several essential components categorized into hardware and functional units:

    1. Input Unit

    • Converts user instructions into binary code for processing.

    • Input Devices: Keyboards, Mice, Scanners, Joysticks, etc.

    1. Central Processing Unit (CPU)

    • Known as the brain of the computer, responsible for executing instructions and processing data.

    • Components:

      • Control Unit (CU): Manages the flow of data within the CPU, coordinating tasks among ALU, registers, and external memory.

      • Arithmetic Logic Unit (ALU): Performs arithmetic (addition, subtraction) and logical (AND, OR) operations.

      • Register Memory: Fastest storage that temporarily holds instructions and data.

      • Cache Memory: Holds frequently accessed data and instructions to speed up processing.

    1. Memory Unit

    • Composed of Random Access Memory (RAM) (volatile) and Hard Disk Drives (HDDs) or Solid-State Drives (SSDs) (non-volatile).

    1. Output Unit

    • Displays or conveys processed information to users.

    • Examples: Monitors, Printers, Speakers.

    1. Motherboard

    • The central circuit board connecting all hardware components, facilitating communication.

Identify Types of Computer Systems

  1. Supercomputers

    • Description: Most powerful computers performing quadrillions of calculations per second.

    • Uses: Scientific simulations, weather forecasting, cryptanalysis.

    • Examples: IBM Blue Gene, Cray XT5, Fugaku (Japan).

  2. Mainframe Computers

    • Description: High-performance computers designed for managing large-scale data efficiently.

    • Uses: Transaction processing, census data, enterprise resource planning.

    • Examples: IBM Z Series, Unisys ClearPath.

  3. Minicomputers (Mid-range Computers)

    • Description: Intermediate size and power supporting multiple users.

    • Uses: Industrial control systems, research labs.

    • Examples: DEC VAX, IBM AS/400.

  4. Microcomputers (Personal Computers)

    • Description: Designed for individual use; includes desktops, laptops, tablets.

    • Uses: General-purpose tasks like browsing the internet, gaming.

    • Examples: Desktop PCs, Raspberry Pi.

  5. Embedded Computers

    • Description: Specialized computers embedded within devices for specific tasks.

    • Uses: Appliances like washing machines, car control systems.

    • Types: Analog Computers (continuous data), Digital Computers (discrete binary data), Hybrid Computers (combining features).

Components Interaction via System Buses

  • System Buses serve as pathways for efficient communication among CPU, memory, and peripherals.

  1. Types of System Buses:

    • Data Bus: Transfers actual data, bidirectional width depends on bits (e.g., 8, 32 bits).

    • Address Bus: Carries memory addresses. Unidirectional, determines addressable memory space calculated as 2n2^n, where nn is address bus width.

    • Control Bus: Transmits control signals to coordinate operations.

  2. How System Buses Operate:

    • Bus Access Request: Device signals intent to use the bus.

    • Address Placement: CPU places target address on the address bus.

    • Control Signal Transmission: Control bus sends read/write commands.

    • Data Transfer: Data exchange through data bus.

    • Bus Release: After data transfer, bus becomes available for the next device.

  3. Communication Channels: Uses parallel/serial methods for enhanced speed.

    • Parallel Communication: Transmits multiple bits, high speed for short distances, issues over long distances include signal interference.

    • Serial Communication: Transmits one bit at a time over a single line, best for long distances with reduced interference.

Digital Logic Foundations

  • Binary Number Systems and Conversions: Understanding binary calculations and data representations.

  • Understanding Logic Gates: Fundamental building blocks in digital circuits.

  • Build Basic Combinational Logic Circuits: Foundations for circuit construction.

  • Apply Logic to Build Simple Adders, Multiplexers: Practical examples in circuit design.

Internal Component & Architecture

Motherboard Layout and Connections

  • Essential connections of CPU, memory, and I/O devices.

Understand Memory Hierarchy

  • Distinctions between various memory types and speeds.

Storage Types

  • Differences between HDD and SSD in performance and durability.

Overview of I/O Devices and Controllers

  • Role of devices in user interaction and data management.

Instruction Set Architecture (ISA)

What Is IAS and Why It’s Important

  • Instruction Set Architecture (ISA) refers to the instructions a CPU can understand.

    • Acts as an interface between hardware and software.

    • Specifies operations, data types, and control flow.

Why Is ISA Important?

  • Portability and Compatibility: Allows software to run on different hardware without modification.

  • Efficient Programming: Helps optimize performance by defining the processor’s capabilities.

  • System Performance: Affects efficiency and power consumption.

    • RISC focuses on simple instructions for quicker processing.

    • CISC handles complex operations in fewer cycles.

  • Compatibility Across Architectures: Ensures microarchitectures using the same ISA can work together.

Machine Code VS Assembly Language

  1. Machine Code

    • Lowest-level language directly understood by hardware.

    • Composed of binary digits (hard for humans to read).

    • Hardware-specific, non-portable, and error-prone.

  2. Assembly Language

    • Low-level language using mnemonics representing instructions.

    • Easier to read and write than machine code.

    • Requires translation into machine code using an assembler.

Understand CPU Instruction Cycle (Fetch-Decode-Execute)

  • Critical for processing instructions.

    1. Fetch Stage

    • Retrieves instruction from memory using the Program Counter (PC).

    • Instructions flow from PC to Memory Address Register (MAR) to Memory Data Register (MDR) and finally to Current Instruction Register (CIR).

    1. Decode Stage

    • Control Unit (CU) interprets the instruction and identifies operations, operands.

    1. Execute Stage

    • Celcution of specified operation using ALU, storing results back into registers or memory.

RISC vs CISC Architectures

  1. RISC (Reduced Instruction Set Computer)

    • Small set of simple instructions.

    • Focused on software optimization.

    • Examples: ARM processors.

  2. CISC (Complex Instruction Set Computer)

    • Larger, more complex instructions.

    • Focused on hardware efficiency.

    • Examples: x86 processors.

Processor Organization

Von Neumann Architecture

  • Introduced the shared memory concept, enabling programmability.

Understand CPU Internals: ALU, CU, Registers

  • Control Unit (CU): Directs operations, manages instruction execution.

  • Arithmetic Logic Unit (ALU): Performs mathematical operations and logical operations.

  • Registers: Fast storage within the CPU for immediate processing.

How Data Flows Inside the Processor

  • Through the fetch-execute cycle between CPU components.

More on CPU

  • Pipelining: Divides instruction execution into stages for efficiency.

  • Multi-Core: Multiple cores execute instructions independently.

  • Cache Memory: High-speed memory for fast data retrieval.

  • Parallel Processing: Multiple processors execute tasks concurrently.

  • Processor Performance: Influenced by clock speed and cache size.

Memory Addressing

  • Memory Structure: Includes memory cells and words.

  • Addressing Types: Byte addressed vs word-addressed.

  • Importance of Memory Addressing: For efficient management and execution.

Overview of Clock Cycles and Performance Metrics

  • Clock Cycle: Unit time for CPU operations, impacted by clock frequency.

  • Performance Metrics include Clocks Per Instruction (CPI), Instructions Per Cycle (IPC), and Frequency/Clock Rate.