Introduction
जब कोई program run होता है, तो उसे memory की जरूरत होती है।
लेकिन यहाँ एक important बात है:
Program जिस address को use करता है ,
और actual memory (RAM) में जो address होता है
ये दोनों same नहीं होते
इसी difference को समझने के लिए हम पढ़ते हैं:
- Logical Address
- Physical Address
Logical Address क्या होता है
Logical Address वह address होता है जो CPU या program generate करता है।
यह address user program को दिखाई देता है
Physical Address क्या होता है
Physical Address वह actual address होता है जो main memory (RAM) में होता है।
यही address memory hardware use करता है
Simple Definition
Logical Address = CPU द्वारा generate किया गया address
Physical Address = Memory में actual address
Main Difference
| Logical Address | Physical Address |
|---|---|
| CPU generate करता है | Memory में actual होता है |
| Virtual होता है | Real होता है |
| User को दिखता है | User को directly नहीं दिखता |
Address Translation
Logical address को physical address में convert किया जाता है
यह काम करता है: MMU (Memory Management Unit)
Working
- Program logical address generate करता है
- MMU उसे convert करता है
- Physical address मिलता है
- Memory access होती है
Example
मान लो:
- Program address = 100 (logical)
- Base address = 1000
तो:
Physical address = 100 + 1000 = 1100
Important Concept: Address Space
1. Logical Address Space
- सभी logical addresses का set
2. Physical Address Space
- सभी physical addresses का set
Types of Mapping
1. Compile Time Binding
Address पहले ही fix हो जाता है
2. Load Time Binding
Program load होने पर address fix होता है
3. Execution Time Binding
Run time पर address change हो सकता है
सबसे flexible यही होता है
Real Life Analogy
Logical Address = Map में location
Physical Address = Real जगह
Map और real location अलग हो सकते हैं
Why Important
- Memory protection देता है
- Program relocation आसान बनाता है
- Multi-programming possible बनाता है
Key Points
- Logical vs Physical address
- MMU role
- Address translation
- Binding types
Conclusion
Logical और Physical Address Space memory management का base concept है।
यह समझना जरूरी है कि program address और actual memory address अलग होते हैं और MMU उन्हें map करता है।