حافظه مجازی
From Wikipedia, the free encyclopedia
در رایانش، حافظه مجازی یا ذخیرهسازی مجازی [persian-alpha 1] یک تکنیک مدیریت حافظه است که «یک فرم انتزاعی ایدهآل از منابع ذخیرهسازی را که در واقع در یک ماشین در دسترس است»[3] فراهم میکند که برای کاربران " یک تصور از یک حافظهٔ بسیار بزرگ (اصلی) ایجاد میکند ".[4]
سیستم عامل رایانه، با استفاده از ترکیبی از سختافزار و نرمافزار، آدرسهای حافظه مورد استفاده یک برنامه را که آدرسهای مجازی نامیده میشوند، به آدرسهای فیزیکی در حافظه کامپیوتر مرتبط میکند. فضای ذخیرهسازی اصلی، همانطور که توسط یک فرایند یا کار مشاهده میشود، به عنوان یک فضای آدرس پشت سر هم یا مجموعه ای از بخش های(segment) کنار هم ظاهر میشود. سیستم عامل فضاهای آدرس مجازی و اختصاص حافظه واقعی به حافظه مجازی را مدیریت میکند. سختافزار ترجمه آدرس در CPU که غالباً به آن واحد مدیریت حافظه (memory management unit) گفته میشود، به صورت خودکار آدرسهای مجازی را به آدرسهای فیزیکی ترجمه میکند. نرمافزارهای موجود در سیستم عامل ممکن است این قابلیتها را گسترش دهند تا فضایی از آدرس مجازی فراهم شود که میتواند از ظرفیت حافظه واقعی فراتر رود و بنابراین حافظه بیشتری را نسبت به آنچه که از نظر فیزیکی در رایانه وجود دارد، آدرس دهی کند.
از مزایای اصلی حافظه مجازی میتوان موارد زیر را نام برد: رفع نیاز برنامهها به مدیریت فضای حافظه مشترک، توانایی به اشتراک گذاری حافظه مورد استفاده کتابخانهها بین فرایندها، افزایش امنیت به دلیل جداسازی حافظه و استفاده مفهومی از حافظه ای بیشتر از آنچه که از نظر فیزیکی در دسترس است با استفاده از تکنیک صفحه بندی یا تقسیمبندی.