Structure of Computer - Notes
1. Computer Types
- Microcomputers: Personal computers (PCs), laptops, used for general-purpose tasks.
- Minicomputers: Multi-user systems, smaller than mainframes.
- Mainframes: Powerful systems used in enterprise environments for large-scale processing.
- Supercomputers: High-performance machines for complex scientific computations.
- Embedded Systems: Computers built into devices like washing machines, routers, cars, etc.
2. Functional Units
- Input Unit: Accepts data and instructions (e.g., keyboard, mouse).
- Output Unit: Displays results (e.g., monitor, printer).
- Memory Unit:
- Primary Memory (RAM/ROM): Stores data and programs temporarily.
- Secondary Memory (HDD/SSD): Stores data permanently.
- Arithmetic and Logic Unit (ALU): Performs arithmetic and logic operations.
- Control Unit (CU): Directs the operation of the processor.
- Central Processing Unit (CPU): ALU + CU; the brain of the computer.
3. Basic Operational Concepts
- Instructions are stored in memory and fetched, decoded, and executed by the CPU.
- The Program Counter (PC) holds the address of the next instruction.
- Instruction Execution Cycle:
1. Fetch the instruction from memory.
2. Decode the instruction.
3. Execute the instruction.
4. Store the result (if needed).
- Data is transferred between memory, CPU, and I/O devices through buses.
4. Von Neumann Architecture
- Proposed by John von Neumann in 1945.
- Key Features:
- Shared memory for instructions and data.
- Instructions executed sequentially (unless a branch is taken).
- Single set of buses (address, data, control).
- Limitations: The Von Neumann bottleneck due to shared bus between CPU and memory.
5. Bus Structures
- Bus: A communication pathway connecting various components of the computer.
- Types of Buses:
- Data Bus: Carries data between components (bidirectional).
- Address Bus: Carries the address of the memory or I/O location (unidirectional).
- Control Bus: Carries control signals (read/write, interrupt, etc.).
- Single Bus vs. Multiple Bus Structure:
- Single bus: Cheaper but slower.
- Multiple buses: Faster but more complex and costly.
6. Software
- System Software: Controls and manages hardware (e.g., Operating Systems, device drivers).
- Application Software: Programs used by end users (e.g., MS Word, browsers).
- Firmware: Software embedded in hardware (e.g., BIOS).
- Role in COA: Software interacts with hardware via machine instructions and system calls.
7. Performance
- Metrics:
- Clock Speed (GHz): Cycles per second; faster clock = faster processing.
- MIPS (Million Instructions Per Second): Number of instructions executed.
- FLOPS (Floating Point Operations per Second): Used in scientific computing.
- CPI (Cycles per Instruction): Lower CPI indicates better performance.
- Performance Equation:
CPU Time = (Instruction Count × CPI) / Clock Rate
8. Multiprocessors
- Definition: Systems with two or more CPUs that share memory and I/O.
- Types:
- Symmetric Multiprocessing (SMP): All processors share the same memory equally.
- Asymmetric Multiprocessing (AMP): Each processor has specific tasks or responsibilities.
- Advantages:
- Increased throughput.
- Higher reliability.
- Better fault tolerance.
- Challenges:
- Complexity in programming.
- Resource contention and synchronization issues.