यह मुख्य मेमोरी और बैकिंग स्टोर के बीच स्वैप-इन / आउट में बहुत अधिक समय खर्च नहीं करेगा?
नहीं, क्योंकि प्रक्रियाओं के लिए मेमोरी को "पेज" के रूप में डिस्क पर धकेल दिया जाता है जो आमतौर पर आकार में 4KB होते हैं। हम एक बार में एक प्रक्रिया के पूरे पता स्थान को बाहर नहीं धकेलते हैं। आप यह मानने में सही हैं कि ऐसा करना बोझिल होगा और जल्दी से भारी मात्रा में डेटा डिस्क पर लिखा जा सकता है।
अधिकांश प्रक्रियाएँ अपने आवंटित 4GB पता स्थान को आवंटित नहीं करती हैं, वे केवल आवश्यकतानुसार कम मात्रा में मेमोरी का अनुरोध करती हैं। फिर से पूरे पते की जगह लिखना एक बेकार होगा क्योंकि इसमें से अधिकांश खाली होगा।
यदि किसी एकल प्रक्रिया में 4GB पता स्थान आवंटित किया गया है, तो अन्य प्रक्रिया में कितनी जगह हो सकती है?
प्रत्येक प्रक्रिया का अपना पता स्थान होता है जो हर दूसरी प्रक्रिया के लिए अलग होता है। ओएस अपने स्वयं के पते के स्थान में प्रक्रियाओं को अलग करता है और सीपीयू की सहायता से वर्चुअल पते को भौतिक मेमोरी पते में अनुवाद करता है। वास्तव में हर प्रक्रिया एक नई "वर्चुअल" एड्रेस स्पेस है जिसमें आवंटित मेमोरी को भौतिक रैम द्वारा समर्थित किया जाता है।
भौतिक मेमोरी को कभी भी किसी प्रोग्राम द्वारा संबोधित नहीं किया जाता है, डेटा को निश्चित रूप से मेमोरी में लिखा जाता है, लेकिन वास्तविक पता जो एक प्रक्रिया लिखता है वह एक वर्चुअल एड्रेस होता है जिसका भौतिक पते में अनुवाद किया जाता है।