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:
Input Unit
Converts user instructions into binary code for processing.
Input Devices: Keyboards, Mice, Scanners, Joysticks, etc.
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.
Memory Unit
Composed of Random Access Memory (RAM) (volatile) and Hard Disk Drives (HDDs) or Solid-State Drives (SSDs) (non-volatile).
Output Unit
Displays or conveys processed information to users.
Examples: Monitors, Printers, Speakers.
Motherboard
The central circuit board connecting all hardware components, facilitating communication.
Identify Types of Computer Systems
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).
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.
Minicomputers (Mid-range Computers)
Description: Intermediate size and power supporting multiple users.
Uses: Industrial control systems, research labs.
Examples: DEC VAX, IBM AS/400.
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.
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.
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 , where is address bus width.
Control Bus: Transmits control signals to coordinate operations.
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.
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
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.
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.
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).
Decode Stage
Control Unit (CU) interprets the instruction and identifies operations, operands.
Execute Stage
Celcution of specified operation using ALU, storing results back into registers or memory.
RISC vs CISC Architectures
RISC (Reduced Instruction Set Computer)
Small set of simple instructions.
Focused on software optimization.
Examples: ARM processors.
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.