Theory
Classroom Bench ની ગડબડ
કલ્પના કરો કે તમારા professor તમને Roll Number 5 આપે છે અને LabOne server room માં Seat 5 પર બેસવા કહે છે. પણ જ્યારે તમે પહોંચો છો, પહેલી 10 benches તૂટેલી છે, તો lab technician બધાને 10 seats નીચે ખસકાવી દે છે. તમારું મગજ હજુ પણ વિચારે છે કે તમે position 5 પર છો, પણ તમારું ખરું physical શરીર Seat 15 પર ટકેલું છે. જો તમારો program માને છે કે એની પાસે એક ખાસ memory spot છે, શું થાય છે જ્યારે 30 students એક સાથે એ જ RAM chip માં code load કરે?
Theory
Mall Directory Map
logical addresses ને એક પ્રમાણભૂત retail outlet chain ના ભીતરી blueprint ની જેમ વિચારો. તમે ગમે તે શહેરમાં જાઓ, stock room હંમેશા પાછળ હોય છે, અને cash counter આગળ. આ તમારું સુસંગત local layout છે. પણ physical address એ ખાસ દુકાનના એક શહેરના mall ની અંદરના ખરા global GPS coordinates છે. shopping mall directory એક તાત્કાલિક અનુવાદક તરીકે કામ કરે છે, તમારા local layout query ને એક ખરા physical floor સ્થાન સાથે map કરતાં.
Theory
Logical વિરુદ્ધ Physical Address Space
compilation દરમિયાન, CPU શૂન્યથી શરૂ થતા reference locations generate કરે છે, જેને એક logical address કહેવાય છે. આ positions નો આખો સંગ્રહ logical address space છે. પણ, ખરા hardware RAM chips માં raw storage slots હોય છે જેને એક physical address કહેવાય છે. software ક્યારેય raw physical RAM સાથે સીધી વાતચીત કરતું નથી. એને બદલે, એક સમર્પિત hardware circuit જેને Memory Management Unit (MMU) કહેવાય છે, દરેક કાલ્પનિક logical address ને વીજળીની ઝડપે એક ખરા physical coordinate માં અનુવાદિત કરે છે.
At a glance
logical અને physical memory addressing વચ્ચેના મુખ્ય સંરચનાત્મક તફાવત.
| Feature | Logical Address | Physical Address |
|---|---|---|
| કોના દ્વારા Generate થાય છે | program execution દરમિયાન CPU | hardware MMU chip mapping |
| દૃશ્યતા | User program એને જોઈ અને સંશોધિત કરી શકે છે | User programs થી સંપૂર્ણપણે છુપાયેલો |
| Base Value | દરેક process માટે હંમેશા શૂન્યથી શરૂ થાય છે | RAM માં ઉપલબ્ધ મફત blocks પર આધાર રાખે છે |
| વૈકલ્પિક નામ | Virtual Address | Real Address |
Think first
ખરા RAM Address ની ગણતરી
ધારો કે student1 LabOne પર એક program load કરે છે. CPU 342 નો એક logical address generate કરે છે. MMU માં એક base relocation register 20000 પર set છે. ગણતરી કરો કે આ data RAM માં કયા બિલકુલ physical address પર store થશે. જવાબ પ્રગટ કરતાં પહેલાં addition ના પગલાં મનમાં વિચારો.
Show the answer
Step 1: આપેલા મૂલ્યો ઓળખો. Logical Address = 342. Base Relocation Register = 20000.
Step 2: MMU translation formula લાગુ કરો: Physical Address = Logical Address + Relocation Register.
Step 3: સંખ્યાઓ મૂકો: Physical Address = 342 + 20000 = 20342.
Step 4: MMU hardware physical RAM થી byte લાવવા address bus પર 20342 નો binary સમકક્ષ મોકલે છે.
Quiz
જો LabOne પર એક user program crash થાય અને memory address 0x0045 દેખાડતો એક segmentation fault error print કરે, programmer કયા પ્રકારના address ને જોઈ રહ્યો છે?
- એક physical address જે સીધું એક hardware transistor block તરફ ઈશારો કરે છે
- એ અલગ process માટે CPU દ્વારા generate કરાયેલો એક logical address
- motherboard central power supply unit ની અંદર એક core address
- local printer driver દ્વારા generate કરાયેલો એક physical layout map index
Show the answer
એ અલગ process માટે CPU દ્વારા generate કરાયેલો એક logical address
User programs હંમેશા માત્ર logical addresses જુએ અને print કરે છે. operating system અને hardware MMU security જાળવવા physical addresses ને કાળજીપૂર્વક છુપાવે છે, user programs ને બીજા students ના ખરા hardware blocks વાંચવા કે ભ્રષ્ટ કરવાથી અટકાવતાં.
Watch out
Relocation Register Addition ની ભૂલ
એક classic university exam ફાંદો એ ભૂલવું છે કે relocation register value physical memory ના પરમ શરૂઆતી block ને દર્શાવે છે. students ક્યારેક logical address બાદ કરે છે કે translation પ્રશ્નો દરમિયાન મૂલ્યોને ગુણવાનો પ્રયાસ કરે છે. યાદ રાખો, logical address બસ એક offset છે: શરૂઆતી line થી એક entry અંતર. અંતિમ physical ગંતવ્ય શોધવા હંમેશા logical offset ને base register માં ઉમેરો.
Theory
આ Semester 3 માટે કેમ મહત્ત્વનું છે
આ address અલગાવ આધુનિક computing systems ની ગુપ્ત ઢાલ છે. Semester 3 માં, જ્યારે તમે advanced security અને Android application frameworks ભણો છો, તમે જાણશો કે આ બિલકુલ MMU mapping એક દુર્ભાવનાપૂર્ણ download કરેલા game ને તમારા banking application data માં તાકઝાંક કરવાથી અટકાવે છે. કારણ કે દરેક app નું પોતાનું અલગ logical address space શૂન્યથી શરૂ થાય છે, એ કોઈ બીજા app ના memory space ને reference કરી શકતું નથી.
Summary
Key takeaways
- Logical addresses CPU દ્વારા generate થાય છે અને individual program સરળતા માટે હંમેશા શૂન્યથી શરૂ થાય છે.
- Physical addresses physical RAM memory chips પર ખરા electrical slots સાથે મેળ ખાય છે.
- Memory Management Unit real time address translation માટે જવાબદાર hardware ઘટક છે.
- base relocation register OS દ્વારા એક program ને allocate કરાયેલો શરૂઆતી physical address store કરે છે.
- યાદ રાખવાનું formula: Physical Address બરાબર Logical Address વત્તા Relocation Value.
- Memory hook: Logical conceptual છે, Physical actual છે, MMU factual map કરે છે!