Agar har Characteristics ke niche 5 sub-points chahiye (exam notes ke
liye), to ye raha:
Multiprocessor System – Characteristics (12 Points, 5 Sub-points Each)
1. Multiple Processors
System me do ya adhik CPUs hote hain.
Sab processors ek saath kaam karte hain.
Har processor independent instruction execute karta hai.
Work processors me divide hota hai.
Overall processing power badh jaati hai.
2. Shared Memory
Sab processors same RAM use karte hain.
Data sharing aasaan hoti hai.
Alag copy banane ki zarurat nahi hoti.
Memory access fast hota hai.
Communication efficient hota hai.
3. Parallel Processing
Multiple tasks ek saath execute hote hain.
Execution time kam ho jata hai.
CPU utilization improve hoti hai.
Large programs jaldi complete hote hain.
Overall performance increase hoti hai.
4. Inter-Processor Communication
Processors aapas me data exchange karte hain.
Coordination maintain hota hai.
Shared memory ke through communicate karte hain.
Information quickly transfer hoti hai.
Cooperative processing possible hoti hai.
5. Synchronization
Processors proper sequence follow karte hain.
Shared data ko safely access karte hain.
Data inconsistency se bachata hai.
Race condition avoid hoti hai.
Lock aur semaphore jaise methods use hote hain.
6. Resource Sharing
RAM sab processors share karte hain.
System bus common hoti hai.
I/O devices bhi share hote hain.
Hardware ka efficient utilization hota hai.
Cost kam hoti hai.
7. High Throughput
Zyada jobs ek saath process hoti hain.
Kam time me zyada output milta hai.
CPU idle time kam hota hai.
Productivity improve hoti hai.
System efficiency badhti hai.
8. Improved Reliability
Ek processor fail ho to dusre kaam karte rehte hain.
System completely shutdown nahi hota.
Fault tolerance improve hoti hai.
Data processing continue reh sakti hai.
Availability badh jaati hai.
9. Scalability
Naye processors add kiye ja sakte hain.
Performance easily increase hoti hai.
Future expansion possible hota hai.
Large workloads handle kiye ja sakte hain.
System flexible hota hai.
10. Better Performance
Complex tasks jaldi complete hote hain.
Response time kam hota hai.
Multi-user performance improve hoti hai.
Heavy applications smoothly chalti hain.
Overall speed badh jaati hai.
11. Load Sharing
Work sab processors me divide hota hai.
Kisi ek CPU par overload nahi hota.
Balanced execution hoti hai.
Resources efficiently use hote hain.
Performance stable rehti hai.
12. Cost Effectiveness
Shared hardware ki wajah se cost kam hoti hai.
Alag systems ki zarurat nahi padti.
Resource utilization better hota hai.
Maintenance cost reduce hoti hai.
Long-term me economical solution hota hai.
Shared Resources in Multiprocessor
Main Memory (RAM) → Sab processors same RAM ko access karte
hain.
System Bus / Interconnect → CPUs aur memory ko connect karta hai.
I/O Devices → Keyboard, Mouse, Disk, Printer jaise devices share
hote hain.
Storage Devices → Hard Disk/SSD sab processors use kar sakte hain.
Operating System → Ek hi OS sab processors ko manage karta hai.
Inter-Processor Communication (IPC) – Detail Explanation (Hinglish)
Inter-Processor Communication (IPC) Kya Hai?
Inter-Processor Communication (IPC) ka matlab hai Multiprocessor
System me do ya adhik CPUs (Processors) ke beech information, data
aur control signals ka exchange (adan-pradan) karna.
Simple words me,
"Jab ek se zyada processors ek hi system me kaam karte hain, to unhe
ek dusre se communicate karna padta hai. Isi communication ko Inter-
Processor Communication (IPC) kehte hain."
Simple Definition
Inter-Processor Communication (IPC) ek process hai jisme multiple
processors aapas me data share, instructions send, aur coordination karte
hain taaki saare processors milkar efficiently kaam kar saken.
IPC ki Zarurat Kyu Padti Hai?
Socho system me 4 CPUs hain.
CPU1
CPU2
CPU3
CPU4
Ab maan lo ek bada task mila:
1000 Students ka Result Calculate Karna
Agar sirf CPU1 kaam karega to bahut time lagega.
Isliye Operating System kaam divide kar deta hai.
CPU1 → Student 1–250
CPU2 → Student 251–500
CPU3 → Student 501–750
CPU4 → Student 751–1000
Ab sab processors parallel me kaam kar rahe hain.
Lekin problem ab shuru hoti hai. g
Sabko ek dusre ko batana padega:
Mera kaam complete ho gaya.
Mere paas ye data hai.
Result ready hai.
Ab final output banao.
Ye sab batane ke process ko hi Inter-Processor Communication (IPC) kehte
hain.
Inter-Processor Communication (IPC) ke Methods (Hinglish - Detail)
Multiprocessor System me multiple CPUs ek saath kaam karte hain. Lekin sirf
kaam karna hi kaafi nahi hai, unhe aapas me communicate bhi karna padta
hai. Isi communication ke liye alag-alag IPC (Inter-Processor
Communication) Methods use hote hain.
Sabse common methods ye hain:
1. Shared Memory Method
2. Message Passing Method
3. Shared Bus Method
4. Interrupt-Based Communication
5. Network / Interconnection Network Method
1. Shared Memory Method
Kya Hai?
Is method me sab processors ek hi Main Memory (RAM) ko share karte hain.
CPU1
CPU2
CPU3
CPU4
│
▼
Shared RAM
Jo data CPU1 RAM me likhta hai, wahi data CPU2, CPU3 aur CPU4 bhi read kar
sakte hain.
Example
RAM me ek variable hai.
Marks = 80
CPU1 update karta hai.
Marks = 90
Ab CPU2 jab RAM padhega to usse bhi
Marks = 90
dikhega.
Advantages
Fast communication
Data sharing easy
Extra copies nahi banani padti
Memory efficiently use hoti hai
Parallel processing fast hoti hai
Disadvantages
Synchronization ki zarurat hoti hai.
Race Condition ho sakti hai.
Bahut processors hone par RAM bottleneck ban sakti hai.
2. Message Passing Method
Kya Hai?
Is method me processors ek dusre ko messages bhejte hain.
Memory directly share nahi karte.
CPU1 -------- Message --------> CPU2
Message me data ya instruction hota hai.
Example
CPU1 calculate karta hai.
Total = 500
Ab CPU2 ko result chahiye.
CPU1 message bhejta hai.
Message
Total = 500
CPU2 message receive karke use karta hai.
Real Life Example
WhatsApp Message
A
"Meeting 10 baje hai."
Message Receive
Yahi processors ke beech bhi hota hai.
Advantages
Data safe rehta hai.
Synchronization easy hoti hai.
Shared memory ki zarurat nahi.
Distributed systems me best hai.
Race condition kam hoti hai.
Disadvantages
Message bhejne me time lagta hai.
Communication overhead badhta hai.
Large data transfer slow ho sakta hai.
3. Shared Bus Method
Kya Hai?
Sab processors ek common Bus use karke communicate karte hain.
CPU1
CPU2
CPU3
CPU4
│
==================
Shared Bus
==================
│
RAM
Bus ek road ki tarah hoti hai.
Sab processors isi road se data bhejte aur receive karte hain.
Example
CPU1 RAM se data lena chahta hai.
Request Bus ke through jayegi.
RAM response bhi Bus ke through bhejegi.
Real Life Example
Ek highway hai.
Sab cars usi road se chalti hain.
Road busy hogi to traffic lagega.
Waise hi Bus busy hogi to processors wait karenge.
Advantages
Simple architecture
Low cost
Easy implementation
Resource sharing easy
Common communication path
Disadvantages
Bus bottleneck ban sakti hai.
Ek time par limited communication hoti hai.
Performance kam ho sakti hai.
4. Interrupt-Based Communication
Kya Hai?
Ek processor dusre processor ko Interrupt Signal bhejta hai.
Interrupt matlab
"Attention! Ek important kaam hai."
Example
CPU1 ka task complete ho gaya.
CPU1 interrupt bhejta hai.
CPU1
Task Complete
Interrupt
CPU2
Agla Task Start
CPU2 interrupt receive karte hi action leta hai.
Real Life Example
Phone Call
Tum kaam kar rahe ho.
Phone bajta hai.
Tum pehle phone receive karte ho.
Fir baad me apna kaam continue karte ho.
Yehi interrupt hai.
Advantages
Fast notification
CPU polling nahi karta.
Time save hota hai.
Immediate response milta hai.
Efficient communication
Disadvantages
Bahut interrupts hone par CPU busy ho sakta hai.
Interrupt handling complex hoti hai.
Priority manage karni padti hai.
5. Network / Interconnection Network Method
Kya Hai?
Is method me processors ek special communication network se connected
hote hain.
CPU1
Network
/|\
CPU2 CPU3 CPU4
Ye network normal bus se jyada fast hota hai.
Isme
Crossbar
Mesh
Ring
Hypercube
Torus
jaise network use hote hain.
Example
CPU1 ko CPU4 ko data bhejna hai.
Data network ke through travel karega.
CPU1
Network
CPU4
Advantages
High speed
Large systems ke liye best
Multiple communication ek saath ho sakti hai.
Scalability achhi hoti hai.
Traffic kam hota hai.
Disadvantages
Cost jyada hoti hai.
Design complex hota hai.
Hardware bhi complex hota hai.
IPC Methods Comparison
Data Share
Method Speed Cost Use Case
Kaise Hota Hai
Same RAM use
Shared Memory ⭐⭐⭐⭐⭐ Low Multiprocessor Systems
karke
Messages send Mediu
Message Passing ⭐⭐⭐ Distributed Systems
karke m
Shared Bus Common Bus ke ⭐⭐⭐ Low Small Multiprocessor
Data Share
Method Speed Cost Use Case
Kaise Hota Hai
through Systems
Interrupt Signals
Interrupt-Based ⭐⭐⭐⭐ Low Event Notification
se
Interconnection Special Network Supercomputers, High-
⭐⭐⭐⭐⭐ High
Network se End Servers
Exam ke liye Yaad Rakhne Wali Line
Shared Memory → Sab processors same RAM share karte hain.
Message Passing → Processors messages bhejkar communicate karte
hain.
Shared Bus → Sab processors common bus ke through data transfer
karte hain.
Interrupt-Based Communication → Ek processor dusre ko interrupt
signal bhejkar turant notify karta hai.
Interconnection Network → Processors special high-speed network
(jaise mesh, ring, crossbar) ke through communicate karte hain.
Ye 5 methods multiprocessor systems me sabse commonly padhe aur samjhaye
jaate hain.
Haan, Multiprocessor System me sirf IPC methods hi nahi hote, balki
architecture ke basis par bhi systems ko classify kiya jata hai. Bahut baar
students IPC methods aur Multiprocessor types ko mix kar dete hain.
Tightly Coupled aur Loosely Coupled IPC methods nahi hain, balki
Multiprocessor Architecture (Organization) ke types hain.
Multiprocessor System ki Classification
Multiprocessor System
│
├── 1. Tightly Coupled Multiprocessor
│
├── 2. Loosely Coupled Multiprocessor
│
├── 3. Symmetric Multiprocessing (SMP)
│
├── 4. Asymmetric Multiprocessing (AMP)
│
├── 5. Shared Memory Architecture
│
├── 6. Distributed Memory Architecture
│
├── 7. NUMA (Non-Uniform Memory Access)
│
└── 8. COMA (Cache Only Memory Architecture)
Inme se [Link] COA/OS me sabse important hain:
Tightly Coupled
Loosely Coupled
SMP
AMP
1. Tightly Coupled Multiprocessor
Kya Hai?
Is system me sab processors ek hi Main Memory (RAM) ko share karte hain.
CPU1
CPU2
CPU3
CPU4
│
▼
Shared RAM
Sab processors ek hi Operating System use karte hain.
Communication bahut fast hota hai.
Features
Shared Memory
Single Operating System
High Speed
Easy Communication
Fast Synchronization
Advantages
Communication fast
Data sharing easy
Performance achhi
Cost kam
Parallel processing efficient
Disadvantages
Memory bottleneck
Scalability limited
Bus congestion
Example
Multi-core Processor
Intel Core i7
AMD Ryzen
Xeon Server
2. Loosely Coupled Multiprocessor
Kya Hai?
Har processor ki apni Memory hoti hai.
Processors memory share nahi karte.
CPU1 ---> RAM1
CPU2 ---> RAM2
CPU3 ---> RAM3
CPU4 ---> RAM4
Communication network ya messages ke through hota hai.
Features
Separate Memory
Separate OS bhi ho sakta hai
Message Passing
Independent processors
Large systems ke liye suitable
Advantages
Easily expand ho sakta hai
Fault tolerance achhi
Memory bottleneck nahi
Large systems ke liye best
Reliable
Disadvantages
Communication slow
Complex design
Cost jyada
Example
Computer Cluster
Google Data Centers
Supercomputers
Tightly vs Loosely Coupled
Tightly
Feature Loosely Coupled
Coupled
Memory Shared Separate
Communicati Shared Message Passing /
on Memory Network
Speed Fast Slow
Cost Low High
Tightly
Feature Loosely Coupled
Coupled
Reliability Medium High
Scalability Limited Excellent
OS Single Single ya Multiple
Multi-core
Example Cluster Computer
CPU
3. SMP (Symmetric Multiprocessing)
Kya Hai?
Sab processors equal (samaan) hote hain.
Koi bhi processor koi bhi task execute kar sakta hai.
CPU1
CPU2
CPU3
CPU4
Shared Memory
Same OS
Sabki priority same hoti hai.
Example
Modern Desktop CPU
Intel Core i7
AMD Ryzen
Features
Equal processors
Shared memory
Single OS
Load balancing
High performance
4. AMP (Asymmetric Multiprocessing)
Kya Hai?
Isme ek Master Processor hota hai.
Baaki processors Slave hote hain.
Master CPU
Task Divide
Slave1
Slave2
Slave3
Master hi decide karta hai kis processor ko kya kaam karna hai.
Example
Embedded Systems
Robots
Industrial Controllers
SMP vs AMP
SMP AMP
Sab processors equal Master-Slave system
Work automatically share Master work assign karta
hota hai hai
Modern Computers Embedded Systems
Flexible Less Flexible
Better Load Balancing Centralized Control
5. Shared Memory Architecture
Isme
CPU1
CPU2
CPU3
Same RAM
Ye basically Tightly Coupled architecture ka hi concept hai.
6. Distributed Memory Architecture
Isme
CPU1 → RAM1
CPU2 → RAM2
CPU3 → RAM3
Ye Loosely Coupled architecture ka concept hai.
7. NUMA (Non-Uniform Memory Access)
Har processor ki apni local memory hoti hai, lekin zarurat padne par dusre
processor ki memory bhi access kar sakta hai.
CPU1 → RAM1
CPU2 → RAM2
CPU1 → RAM2 (Possible)
Local memory fast hoti hai, remote memory comparatively slow hoti hai.
8. COMA (Cache Only Memory Architecture)
Is architecture me memory ko cache ki tarah organize kiya jata hai. Data jahan
required hota hai, wahan move ho jata hai.
Ye advanced architecture hai aur mostly research ya high-performance systems
me discuss hota hai.
Exam ke Liye Sabse Important Terms
Term Ek Line Definition
Tightly Coupled Sab processors same memory share karte hain.
Loosely
Har processor ki alag memory hoti hai.
Coupled
Sab processors equal hote hain aur same OS use
SMP
karte hain.
Ek Master Processor baaki processors ko control
AMP
karta hai.
Shared Memory Sab processors ek hi RAM access karte hain.
Distributed
Har processor ki apni RAM hoti hai.
Memory
Local memory fast, remote memory access bhi
NUMA
possible.
COMA Memory ko cache ki tarah manage kiya jata hai.
Confusion mat rakho:
IPC Methods batate hain processors kaise communicate karte hain
(Shared Memory, Message Passing, Interrupts, etc.).
Tightly Coupled, Loosely Coupled, SMP, AMP batate hain
multiprocessor system ka architecture/organization kaisa hai.
Multiprocessor Inter-Processor Arbitration
Definition:
Inter-Processor Arbitration ek mechanism hai jo decide karta hai ki jab ek se
zyada processors ek hi samay par shared resource (Bus, Memory, I/O) ko access
karna chahte hain, to pehle access kis processor ko milega.
Diagram
CPU1 ----\
\
CPU2 ------> Arbiter ----> Shared Bus ----> RAM
/
CPU3 ----/
Working
1. CPU1, CPU2 aur CPU3 bus use karna chahte hain.
2. Sab request bhejte hain.
3. Arbiter request check karta hai.
4. Ek processor ko bus access deta hai.
5. Kaam complete hone ke baad doosre processor ko chance milta hai.
Need of Arbitration
Bus conflict rokne ke liye.
Data corruption se bachne ke liye.
Shared resources ka fair use karne ke liye.
3 Exam Points
1. Multiple processors shared bus aur memory ko access karte hain.
2. Simultaneous requests hone par conflict ho sakta hai.
3. Arbitration decide karti hai ki pehle kis processor ko resource milega.
4. nter-Processor Communication (IPC) Kya Hai?
5. Inter-Processor Communication (IPC) ka matlab hai:
6. Multiprocessor system me do ya adhik processors (CPUs) ke beech data,
information aur control signals ka adan-pradan (communication) karna.
7. Simple language me:
8. 👉 "CPUs aapas me baat karte hain aur ek dusre ko batate hain ki kya kaam ho
gaya hai, kya data available hai, aur agla kaam kya karna hai."
9. Methods of Inter-Processor Communication (IPC)
10. 1. Shared Memory Method
11. Shared Memory Method me sabhi processors ek hi main memory (RAM) ko share
karte hain. Jab ek processor kisi data ko memory me store karta hai, to doosra
processor usi data ko memory se read kar sakta hai. Is tarah processors ke beech
communication shared memory ke madhyam se hota hai. Yeh method fast hota hai
kyunki data directly shared memory me available rehta hai.
12.
13. CPU1 ----\
\
Shared RAM
/
CPU2 ----/
14.
15. 2. Message Passing Method
16. Message Passing Method me processors aapas me messages bhejkar communication
karte hain. Ek processor data ya information ko message ke roop me doosre processor
ko send karta hai aur doosra processor us message ko receive karta hai. Is method me
processors ko shared memory ki zarurat nahi hoti.
17. CPU1 ---- Message ----> CPU2
Ye sab Multiprocessor Architecture / Multiprocessor Organization ke
concepts hain. Ye batate hain ki processors aur memory aapas me kaise
connected hain.
1. Coupling of Processors
Coupling ka matlab hai processors ke beech connection kitna strong hai.
(a) Tightly Coupled System
CPU1
CPU2 ---> Shared RAM
CPU3
Sab processors same memory share karte hain.
Communication fast hota hai.
Multiprocessor systems me common hai.
(b) Loosely Coupled System
CPU1 + Memory1
CPU2 + Memory2
CPU3 + Memory3
Har processor ki apni memory hoti hai.
Communication network/messages se hota hai.
Distributed systems me use hota hai.
2. Shared Memory
CPU1
CPU2 ---> Shared RAM
CPU3
Sab processors ek hi memory use karte hain.
Data sharing aasaan hoti hai.
SMP systems me common.
3. Distributed Memory
CPU1 + RAM1
CPU2 + RAM2
CPU3 + RAM3
Har processor ki apni memory hoti hai.
Data exchange message passing se hota hai.
Large clusters/supercomputers me use hota hai.
4. Uniform Memory Access (UMA)
CPU1
CPU2 ---> Shared RAM
CPU3
Sab processors ke liye memory access time same hota hai.
Kisi bhi RAM location tak pahunchne me barabar time lagta hai.
Example: Traditional SMP.
5. Non-Uniform Memory Access (NUMA)
CPU1 + Local RAM1
CPU2 + Local RAM2
Har processor ki local memory hoti hai.
Apni memory ko jaldi access karta hai.
Dusre processor ki memory access karne me zyada time lagta hai.
Isliye access time uniform nahi hota.
Ye Sab Kiske Part Hain?
Ye topics Multiprocessor System Architecture ke part hain:
Multiprocessor System
│
├── Coupling
│ ├── Tightly Coupled
│ └── Loosely Coupled
│
├── Memory Organization
│ ├── Shared Memory
│ └── Distributed Memory
│
└── Memory Access Model
├── UMA
└── NUMA
Exam ke liye One-Line Definitions
Coupling: Processors ke beech connection ka level.
Shared Memory: Sab processors ek hi RAM share karte hain.
Distributed Memory: Har processor ki apni memory hoti hai.
UMA: Sab processors ka memory access time same hota hai.
NUMA: Memory access time processor aur memory location par depend
karta hai.
Multiprocessor System
│
├── Coupling
│ ├── Tightly Coupled
│ └── Loosely Coupled
│
├── Memory Organization
│ ├── Shared Memory
│ └── Distributed Memory
│
├── Memory Access Model
│ ├── UMA (Uniform Memory Access)
│ └── NUMA (Non-Uniform Memory Access)
│
├── Processor Organization
│ ├── SMP (Symmetric Multiprocessing)
│ └── AMP (Asymmetric Multiprocessing)
│
├── Inter-Processor Communication
│ ├── Shared Memory Method
│ └── Message Passing Method
│
├── Interconnection Network
│ ├── Shared Bus
│ ├── Crossbar Switch
│ ├── Ring Network
│ └── Mesh Network
│
├── Arbitration
│ ├── Centralized Arbitration
│ └── Distributed Arbitration
│
└── Synchronization
├── Mutex / Lock
├── Semaphore
└── Monitor
Multiprocessor
│
├── Processors ka relation → Coupling
├── Memory ka arrangement → Shared/Distributed
├── Memory access → UMA/NUMA
├── Processor control → SMP/AMP
├── Communication → IPC
├── Resource access → Arbitration
└── Coordination → Synchronization
Synchronization ek technique hai jo multiple processors/processes ko
coordinate karti hai taaki ve shared data aur resources ko sahi order me access
karein aur conflict na ho.
MULTIPROCESSOR SYSTEM
│
├── Definition
│ └── 2 ya usse adhik CPUs milkar kaam karte hain
│
├── Characteristics
│ ├── Multiple Processors
│ ├── Shared Resources
│ ├── Parallel Processing
│ ├── Inter-Processor Communication
│ ├── Synchronization
│ ├── High Throughput
│ ├── Reliability
│ ├── Scalability
│ ├── Load Sharing
│ └── Better Performance
│
├── Coupling of Processors
│ ├── Tightly Coupled
│ │ └── Shared Memory
│ └── Loosely Coupled
│ └── Distributed Memory
│
├── Memory Organization
│ ├── Shared Memory
│ └── Distributed Memory
│
├── Memory Access Models
│ ├── UMA (Uniform Memory Access)
│ └── NUMA (Non-Uniform Memory Access)
│
├── Processor Organization
│ ├── SMP (Symmetric Multiprocessing)
│ └── AMP (Asymmetric Multiprocessing)
│
├── Inter-Processor Communication (IPC)
│ ├── Shared Memory Method
│ └── Message Passing Method
│
├── Inter-Processor Arbitration
│ ├── Centralized Arbitration
│ └── Distributed Arbitration
│
├── Synchronization
│ ├── Mutex (Lock)
│ ├── Semaphore
│ └── Monitor
│
├── Shared Resources
│ ├── Main Memory (RAM)
│ ├── System Bus
│ ├── I/O Devices
│ └── (Kabhi-kabhi Shared L3 Cache)
│
└── Cache Organization
├── L1 Cache (Private)
├── L2 Cache (Usually Private)
└── L3 Cache (Usually Shared)
Memory in Multiprocessor System (Hinglish)
Memory in Multiprocessor System Kya Hai?
Memory multiprocessor system ka woh hissa hai jahan programs, data aur
instructions store hote hain. Multiprocessor system me 2 ya usse adhik CPUs
hote hain, isliye memory ko is tarah organize kiya jata hai ki sab processors
efficiently data access kar saken.
Simple Definition:
Multiprocessor system me memory ek storage unit hoti hai jise
processors data read aur write karne ke liye use karte hain. Memory
shared bhi ho sakti hai aur separate bhi.
Memory Organization
CPU1
│
Cache
│
CPU2
│
Cache
│
========================
Main Memory (RAM)
========================
│
I/O Devices
Ya distributed architecture me:
CPU1 ── RAM1
CPU2 ── RAM2
CPU3 ── RAM3
CPU4 ── RAM4
Types of Memory in Multiprocessor System
1. Cache Memory
Har processor ki apni private cache hoti hai.
Bahut fast memory hoti hai.
Frequently used data store karti hai.
CPU ko RAM se baar-baar data lane ki zarurat nahi padti.
Performance improve hoti hai.
2. Main Memory (RAM)
Programs aur data store karti hai.
Shared Memory Architecture me sab processors ise access karte hain.
Cache se slow hoti hai.
Sab processors ke liye common data available hota hai.
Large capacity hoti hai.
3. Secondary Memory
Hard Disk ya SSD hota hai.
Permanent storage provide karta hai.
Data power off hone par bhi safe rehta hai.
RAM me data load karne ke liye use hota hai.
Capacity bahut zyada hoti hai.
Memory Architectures
1. Shared Memory Architecture
Isme sab processors same RAM ko access karte hain.
CPU1
CPU2
CPU3
CPU4
│
===========
Shared RAM
===========
Features
Ek hi RAM.
Fast communication.
Easy data sharing.
Synchronization required.
Small aur medium systems ke liye suitable.
2. Distributed Memory Architecture
Har processor ki apni RAM hoti hai.
CPU1 ─ RAM1
CPU2 ─ RAM2
CPU3 ─ RAM3
CPU4 ─ RAM4
Features
Separate memory.
Message Passing communication.
High scalability.
Large systems ke liye suitable.
Fault tolerance achhi hoti hai.
3. NUMA (Non-Uniform Memory Access)
Har processor ki local memory hoti hai, lekin zarurat padne par dusre processor
ki memory bhi access kar sakta hai.
CPU1 ─ RAM1
│
└────► RAM2
CPU2 ─ RAM2
Local memory access fast hota hai.
Remote memory access slow hota hai.
High-end servers me use hota hai.
Performance better hoti hai.
Scalability achhi hoti hai.
Memory Hierarchy
Fastest
│
Registers
│
Cache (L1, L2, L3)
│
Main Memory (RAM)
│
SSD / Hard Disk
│
Slowest
Characteristics of Memory in Multiprocessor System (10 Points)
1. Multiple processors memory ko access karte hain.
2. Memory shared ya distributed ho sakti hai.
3. Cache memory access ko fast banati hai.
4. RAM programs aur data store karti hai.
5. Synchronization data consistency maintain karta hai.
6. Cache coherence ensure karta hai ki sab caches me updated data ho.
7. High bandwidth se data transfer fast hota hai.
8. Low latency se memory access time kam hota hai.
9. Scalability ke liye memory architecture important hoti hai.
[Link] memory management se overall system performance improve
hoti hai.
Advantages
Parallel processing fast hoti hai.
Data sharing easy hoti hai.
CPU utilization improve hota hai.
High throughput milta hai.
Complex applications efficiently run karti hain.
Disadvantages
Shared memory me race condition ho sakti hai.
Synchronization ki zarurat padti hai.
Cache coherence maintain karna difficult hota hai.
Memory bottleneck ho sakta hai.
Large systems me hardware cost badh sakti hai.
Exam Definition (2 Marks)
Memory in a Multiprocessor System is the storage area where programs,
data, and instructions are kept. Depending on the architecture, memory can be
shared among all processors or distributed with separate memory for
each processor, enabling multiple CPUs to execute tasks efficiently.
Definition of Pipelining
Pipelining is a CPU execution technique in which the execution of an instruction
is divided into multiple sequential stages, such as Instruction Fetch (IF),
Instruction Decode (ID), Execute (EX), Memory Access (MEM), and Write
Back (WB). Instead of waiting for one instruction to complete all stages before
starting the next, the CPU processes multiple instructions simultaneously, with
each instruction being in a different stage of the pipeline. This overlapping of
instruction execution increases the throughput of the processor, improves CPU
resource utilization, reduces idle time, and significantly enhances the overall
performance and efficiency of the computer system. While pipelining does not
reduce the execution time of a single instruction, it allows the CPU to complete
more instructions in a given amount of time.
Time →
Body Car1 Car2 Car3
Engine Car1 Car2
Paint Car1
Test Car1
Delivery Car1
Characteristics of Pipelining (10 Points)
1. Instruction ko multiple stages me divide karta hai.
2. Multiple instructions ek saath execute hoti hain.
3. CPU throughput increase hota hai.
4. Overall performance improve hoti hai.
5. Clock cycle ka better utilization hota hai.
6. Har stage alag hardware use kar sakti hai.
7. Parallel execution possible hoti hai.
8. Instruction latency same reh sakti hai.
9. Pipeline hazards aa sakte hain.
[Link] processors me widely use hoti hai.
Advantages
CPU performance improve hoti hai.
Throughput increase hota hai.
CPU idle time kam hota hai.
Clock cycles efficiently use hote hain.
Parallel instruction execution hoti hai.
Disadvantages
Pipeline Hazards (Data, Control, Structural) ho sakte hain.
Design complex hota hai.
Branch instructions pipeline ko stall kar sakti hain.
Synchronization difficult ho sakti hai.
Hardware cost badh sakti hai.
Important Formula
Agar pipeline me n stages hain aur m instructions execute karni hain:
Total Clock Cycles = n + m − 1
Example:
Stages = 5
Instructions = 10
Total Cycles = 5 + 10 − 1 = 14
Characteristics of Vector Processing
(10 Points)
What is Vector Processing?
Vector Processing is a processing technique in which the CPU performs the same
operation on multiple data elements simultaneously using a single instruction. It
is specially designed for applications that require repetitive mathematical
calculations on large amounts of data.
Simple Definition
Vector Processing is a technique in which one instruction performs the same
operation on an entire vector (array of data) at the same time, instead of
processing one data element at a time.
Vector Processing is a processing technique in which a single
instruction performs the same operation on multiple data elements
simultaneously. Instead of processing one element at a time, the
processor operates on an entire vector (array) of data, which
significantly improves execution speed, increases throughput, and
enhances the overall performance of applications involving large-scale
numerical computations such as scientific simulations, graphics
processing, artificial intelligence, and supercomputing.
1. Single Instruction
Ek instruction multiple data elements par apply hota hai.
Instruction overhead kam hota hai.
2. Parallel Execution
Multiple data ek saath process hote hain.
Speed increase hoti hai.
3. High Throughput
Kam time me zyada calculations hoti hain.
Performance improve hoti hai.
4. Vector Registers
Data vector registers me store hota hai.
Fast access milta hai.
5. Pipelining Support
Pipeline ke sath efficiently work karta hai.
Execution aur fast hoti hai.
6. Suitable for Large Data
Large arrays aur matrices ke liye best hai.
Scientific calculations me use hota hai.
7. Reduced Instruction Count
Har element ke liye alag instruction nahi likhni padti.
Program chhota hota hai.
8. Better CPU Utilization
CPU idle nahi rehta.
Resources efficiently use hote hain.
9. High Performance
Complex mathematical operations fast execute hoti hain.
HPC (High Performance Computing) me use hota hai.
10. Specialized Hardware
Vector ALU aur Vector Registers ka use hota hai.
General processor se alag architecture hoti hai.
Advantages
High execution speed
Parallel processing
Less instruction overhead
Better throughput
Scientific calculations ke liye best
Matrix operations fast
Image processing fast
Weather forecasting me useful
AI aur Machine Learning me use hota hai
Supercomputers me widely used
Disadvantages
Hardware expensive hota hai.
Design complex hoti hai.
Small programs me fayda kam hota hai.
Scalar operations ke liye efficient nahi.
Specialized compiler ki zarurat ho sakti hai.
Applications of Vector Processing
1. Scientific Computing
2. Weather Forecasting
3. Artificial Intelligence (AI)
4. Machine Learning (ML)
5. Image Processing
6. Video Processing
7. Computer Graphics
8. Medical Imaging (MRI, CT Scan)
9. Supercomputers
[Link] Simulations
11. Sabse Pehle "Instruction" Kya Hota Hai?
[Link] matlab CPU ko diya gaya ek command.
[Link]:
[Link]
SUB
MUL
DIV
[Link] sab instructions hain.
[Link]
[Link] A,B
[Link]
19.A aur B ko add karo.
[Link] 1 instruction hai.
21.
22. Data Kya Hota Hai?
[Link] matlab numbers.
[Link]
25.10
20
30
40
[Link] data hai.
27.
28. Scalar Processing
[Link] lo do arrays hain.
30.A = [10,20,30,40]
B = [5,15,25,35]
[Link] add karna hai.
[Link] hona chahiye
33.15
35
55
75
34.
35. Scalar Processor Kaise Kaam Karega?
[Link] ek baar me sirf ek data process karta hai.
37. Instruction 1
[Link]
10 + 5 =15
39. Instruction 2
[Link]
20+15=35
41. Instruction 3
[Link]
30+25=55
43. Instruction 4
[Link]
40+35=75
[Link] do.
[Link] ne ADD instruction 4 baar chalaya.
[Link]
ADD
ADD
ADD
48.
49. Vector Processing
[Link] wahi example.
51.A
10 20 30 40
5 15 25 35
[Link] CPU bolta hai
[Link] VECTOR
[Link].
[Link] ek instruction.
[Link] khud samajh jata hai
57.10+5
20+15
30+25
40+35
[Link] ek hi vector instruction ke andar ho jata hai.
[Link]
60.15 35 55 75
61. Array Processing – Long Definition
(English)
62. Array Processing is a processing technique in which a computer
performs operations on a collection of data elements stored in an
array. Instead of processing unrelated individual values, the
processor works on the entire array or on multiple elements of the
array to perform repetitive operations such as addition, subtraction,
multiplication, division, sorting, or searching. Array processing
improves the efficiency and speed of computation, especially for
large datasets, and is widely used in scientific computing,
engineering applications, image processing, graphics, artificial
intelligence, and numerical analysis.
63. Difference Between Array
Processing and Vector
Processing
Array Processing Vector Processing
Array Processing is a Vector Processing is a CPU processing
technique in which technique in which a single instruction
operations are performed on performs the same operation on multiple
the elements of an array. data elements simultaneously.
It focuses on processing It focuses on how the processor
array data. executes operations efficiently.
The main objective is to The main objective is to increase execution
Array Processing Vector Processing
perform operations on
speed and throughput.
arrays.
It can be implemented in It requires special vector hardware, such
software as well as as vector registers and vector functional
hardware. units.
Operations may be
Operations are generally performed in
performed sequentially or
parallel.
in parallel.
It works on arrays (collection It works on vectors, which are arrays
of similar data elements). processed by vector instructions.
It does not necessarily It specifically requires a vector processor
require a vector processor. or vector processing capability.
It is a general data It is an advanced processor architecture
processing technique. and execution technique.
It is suitable for general- It is suitable for scientific computing, AI,
purpose applications graphics, image processing, and
involving arrays. supercomputers.
It improves data handling It improves CPU performance, throughput,
efficiency. and execution speed.
64.
65. Simple Difference (Exam
Trick)
Vector
Array Processing
Processing
How is it
processed? →
What is processed? → Array (Data)
By a Vector
Processor
Focuses on
Focuses on data processor
architecture
General concept
RISC (Reduced Instruction Set
Computer) – Long Definition
Vector
Array Processing
Processing
RISC (Reduced Instruction Set Computer) is a
processor architecture that uses a small, simple, and
highly optimized set of instructions. Each instruction
is designed to perform a single operation and is usually
executed in one clock cycle. RISC processors follow the
Load/Store architecture, where only load and store
instructions access memory, while all other operations are
performed using CPU registers. The simple instruction set
allows efficient pipelining, faster execution, lower power
consumption, and improved overall system performance.
RISC architecture is widely used in modern smartphones,
embedded systems, ARM-based processors, and high-
performance computing applications.
CISC (Complex Instruction Set
Computer) – Long Definition
CISC (Complex Instruction Set Computer) is a
processor architecture that uses a large and complex
set of instructions, where a single instruction can
perform multiple low-level operations such as memory
access, arithmetic calculations, logical operations, and
data movement. CISC processors use variable-length
instructions, and many instructions require multiple
clock cycles to execute. The main objective of CISC is to
reduce the number of instructions needed in a program,
making software
Difference Between RISC and CISC
RISC (Reduced
CISC (Complex Instruction
Instruction Set
Set Computer)
Computer)
Uses a small and Uses a large and complex
simple instruction set. instruction set.
Each instruction performs One instruction can perform
one simple operation. multiple operations.
Most instructions execute Many instructions require
in one clock cycle. multiple clock cycles.
Uses fixed-length Uses variable-length
instructions. instructions.
Follows Load/Store Supports memory-to-memory
architecture. operations.
Uses a large number of
general-purpose Uses fewer registers.
registers.
Hardware design is
Hardware design is complex.
simple.
Vector
Array Processing
Processing
Instruction decoding is Instruction decoding is more
easy and fast. difficult and slower.
Provides better Pipelining is less efficient
pipelining because of complex
performance. instructions.
Program size is usually Program size is generally
larger because more smaller because fewer
instructions are needed. instructions are needed.
Consumes less power. Consumes more power.
Execution speed is generally
Execution speed is slower per instruction, but
generally faster. one instruction may perform
more work.
Commonly used in ARM,
Commonly used in Intel x86
RISC-V, MIPS, and
and AMD x86-64 processors.
SPARC processors.
Easier to write compact
Easier to optimize for
programs because of powerful
modern compilers.
instructions.
Widely used in mobile Widely used in desktop
devices, embedded computers, laptops, and
systems, and IoT. servers.
Easy Example
RISC
To add two numbers stored in memory:
LOAD R1, A
LOAD R2, B
ADD R3, R1, R2
STORE R3, C
4 simple instructions
Fast execution
Simple hardware
CISC
ADD A, B
This single instruction internally performs:
Load A from memory
Load B from memory
Add the values
Store the result back
1 complex instruction
More work in one instruction
Complex hardware
Exam Memory Trick
RISC CISC
Reduced Instructions Complex Instructions
Vector
Array Processing
Processing
RISC CISC
More Instructions, Fewer Instructions, More
Faster Execution Complex Execution
Simple Hardware Complex Hardware
Best for ARM & Mobile Best for Intel/AMD PCs
One-Line Difference
RISC uses many simple instructions to complete a
task quickly.
CISC uses fewer but more complex instructions to
complete the same task.
CPU1 CPU2 CPU3 CPU4
| | | |
+---------+---------+---------+
Shared System Bus
+------------------------+
| Shared Main Memory |
+------------------------+
+---------------+
| I/O Devices |
1-Minute Revision (Exam Trick)
Pipelining → IF → ID → EX → MEM → WB
Vector Processing → Single Instruction + Multiple Data
Array Processing → Multiple PEs + Arrays
RISC → Simple Instructions
CISC → Complex Instructions
Multiprocessor → Multiple CPUs
IPC → Shared Memory → Message → Bus → Interrupt → Network
Multiprocessor Keywords → CPU → Memory → Parallel → Throughput → Reliability →
Scalability