Lecture Notes: Computer System Architecture
Overview
This lecture focuses on categorizing computer systems based on the number of general-purpose processors they use, exploring single processor systems, multiprocessor systems, and clustered systems.
Types of Computer Systems
1. Single Processor Systems
- Main CPU: Executes general-purpose instruction sets and instructions from user processes.
- Special-Purpose Processors: Perform device-specific tasks (e.g., microprocessor in a keyboard for keystroke conversion).
- Definition Rationale: Named 'single processor' due to having only one general-purpose processor, despite the presence of special-purpose processors.
2. Multiprocessor Systems
- Characteristics: Contains two or more processors, also known as parallel or tightly coupled systems.
- Communication: Processors are in close communication, sharing computer resources such as bus, clock, memory, and peripherals.
- Advantages:
- Increased Throughput: Higher performance due to parallel processing.
- Economy of Scale: More economic as resources are shared among processors.
- Increased Reliability: System continues functioning even if one processor fails.
Types of Multiprocessing Systems
- Symmetric Multiprocessing (SMP):
- All CPUs are similar and participate equally in executing tasks.
- Asymmetric Multiprocessing (AMP):
- Master-slave approach where the master CPU assigns tasks to slave CPUs.
- Master monitors the system and assigns tasks to CPUs.
3. Clustered Systems
- Definition: Gather multiple CPUs to perform computational work by coupling two or more individual systems.
- High Availability: Multiple systems ensure continued operation even if one or more systems fail.
Structuring of Clustered Systems
- Asymmetric Structure:
- One machine is on hot standby mode monitoring others, stepping in if a failure occurs.
- Symmetric Structure:
- Multiple hosts run applications and monitor each other, allowing for efficient resource use.
Summary
- Single Processor Systems: Defined by one general-purpose processor with additional special-purpose processors for device-specific tasks.
- Multiprocessor Systems: Involves multiple processors for increased performance, economic benefit, and reliability.
- Clustered Systems: Involves multiple coupled systems with high availability, structured either symmetrically or asymmetrically.
Understanding these architectures provides insights into how computer systems can be optimized for performance, reliability, and economic efficiency.