حافظه مجازی یکی ازبخش های متداول در اکثر سیستم های عامل کامپیوترهای شخصی است .
سیستم فوق با توجه به مزایای عمده، بسرعت متداول و با استقبال کاربران کامپیوتر مواجه شده است .
اکثر کامپیوترها در حال حاضر از حافظه های محدود با ظرفیت 64 ، 128 و یا 256 مگابایت استفاده می نمایند.
حافظه موجود در اکثر کامپیوترها بمنظور اجرای چندین برنامه بصورت همزمان توسط کاربر ، پاسخگو نبوده و با کمبود حافظه مواجه خواهیم شد.
مثلا در صورتیکه کاربری بطور همزمان ، سیستم عامل ، یک واژه پرداز ، مرورگر وب و یک برنامه برای ارسال نامه الکترونیکی را فعال نماید ، 32 و یا 64 مگابایت حافظه، ظرفیت قابل قبولی نبوده و کاربران قادر به استفاده از خدمات ارائه شده توسط هر یک از نرم افزارهای فوق نخواهند بود.
یکی از راهکارهای غلبه بر مشکل فوق افزایش و ارتقای حافظه موجود است .
با ارتقای حافظه و افزایش آن ممکن است مشکل فوق در محدوده ای دیگر مجددا بروز نماید.
یکی دیگر از راهکارهای موجود در این زمینه ، استفاده از حافظه مجازی است
در تکنولوژی حافظه مجازی از حافظه های جانبی ارزان قیمت نظیر هارد دیسک استفاده می گردد.
در چنین حالتی اطلاعات موجود در حافظه اصلی که کمتر مورد استفاده قرار گرفته اند ، از حافظه خارج و در محلی خاص بر روی هارد دیسک ذخیره می گردند.
بدین ترتیب بخش ی از حافظه اصلی آزاد و زمینه استقرار یک برنامه جدید در حافظه فراهم خواهد شد.
عملیات ارسال اطلاعات از حافظه اصلی بر روی هارد دیسک بصورت خودکار انجام می گیرد.
[ویرایش] مسئله سرعت
سرعت خواندن و نوشتن اطلاعات بر روی هارد دیسک بمراتب کندتر از حافظه اصلی کامپیوتر است .
در صورتیکه سیستم مورد نظر دارای عملیاتی حجیم در رابطه با حافظه مجازی باشد ، کارآئی سیستم بشدت تحت تاثیر قرار خواهد گرفت .
در چنین مواردی لازم است که نسبت به افزایش حافظه موجود در سیستم ، اقدام گردد.
در مواردی که سیستم عامل مجبور به جابجائی اطلاعات موجود بین حافظه اصلی و حافظه مجازی باشد ( هارد دیسک ) ، باتوجه به تفاوت محسوس سرعت بین آنها ، مدت زمان زیادی صرف عملیات جایگزینی می گردد.
در چنین حالتی سرعت سیستم بشدت افت کرده و عملا در برخی حالات غیرقابل استفاده می گردد.
محل نگهداری اطلاعات بر روی هارد دیسک را یک Page file می گویند.
در فایل فوق ، صفحات مربوط به حافظه اصلی ذخیره و سیستم عامل در زمان مورد نظر اطلاعات فوق را مجددا به حافظه اصلی منتقل خواهد کرد.
در ماشین هائی که از سیستم عامل ویندوز استفاده می نمایند ، فایل فوق دارای انشعاب swp است .
[ویرایش] پیکربندی حافظه مجازی
ویندوز 98 دارای یک برنامه هوشمند برای مدیریت حافظه مجازی است .
در زمان نصب ویندوز ، پیکربندی و تنظیمات پیش فرض برای مدیریت حافظه مجازی انجام خواهد شد.
تنظیمات انجام شده در اغلب موارد پاسخگو بوده و نیازی به تغییر آنها وجود نخواهد داشت .
در برخی موارد لازم است که پیکربندی مدیریت حافظه مجازی بصورت دستی انجام گیرد.
برای انجام این کار در ویندوز 98 ، گزینه System را از طریق Control panel انتخاب و در ادامه گزینه Performance را فعال نمائید.
در بخش Advanced setting ، گزینه Virtual memory را انتخاب نمائید.
با نمایش پنجره مربوط به Virtual Memory ، گزینه Let me specify my own virtual memory setting را انتخاب تا زمینه مشخص نمودن مکان و طرفیت حداقل و حداکثر فایل مربوط به حافظه مجازی فراهم گردد..در فیلد Hard disk محل ذخیره نمودن فایل و درفیلد های دیگر حداقل و حداکثر ظرفیت فایل را بر حسب مگابایت مشخص نمائید.
برای مشخص نمودن حداکثر فضای مورد نیاز حافظه مجازی می توان هر اندازه ای را مشخص نمود .
تعریف اندازه ائی به میزان دو برابر حافظه اصلی کامپیوتر برای حداکثر میزان حافظه مجازی توصیه می گردد.
میزان حافظه موجود هارد دیسک که برای حافظه مجازی در نظر گرفته خواهد شد بسیار حائر اهمیت است .
در صورتیکه فضای فوق بسیار ناچیز انتخاب گردد ، همواره با پیام خطائی مطابق Out of Memory ، مواجه خواهیم شد.
پیشنهاد می گردد نسبت حافظه مجازی به حافظه اصلی دو به یک باشد.
یعنی در صورتیکه حافظه اصلی موجود 16 مگابایت باشد ، حداکثر حافظه مجازی را 32 مگابایت در نظر گرفت .
یکی از روش هائی که بمنظور بهبود کارائی حافظه مجاری پیشنهاد شده است ، ( مخصوصا در مواردیکه حجم بالائی از حافظه مجازی مورد نیاز باشد ) در نظر گرفتن ظرفیت یکسان برای حداقل و حداکثر انداره حافظه مجازی است .
در چنین حالتی در زمان راه اندازی کامپیوتر، سیستم عامل تمام فضای مورد نیاز را اختصاص و در ادامه نیازی با افزایش آن همزمان با اجرای سایر برنامه ها نخواهد بود.
در چنین حالتی کارآئی سیستم بهبود پیدا خواهد کرد .
یکی دیگر از فاکتورهای مهم در کارآئی حافظه مجازی ، محل فایل مربوط به حافظه مجازی است .
در صورتیکه سیستم کامپیوتری دارای چندین هارد دیسک فیزیکی باشد ، ( منظور چندین درایو منظقی نیست ) می توان حجم عملیات مربوط به حافظه مجازی را بین هر یک از درایوهای فیزیکی موجود توزیع کرد.
روش فوق در مواردیکه از حافظه مجازی در مقیاس بالائی استفاده می گردد ، کارآئی مطلوبی را بدنبال خواهد داشت.
حافظه مجازی یکی ازبخش های متداول در اکثر سیستم های عامل کامپیوترهای شخصی است .
حافظه مجازی یکی ازبخش های متداول در اکثر سیستم های عامل کامپیوترهای شخصی است .
سیستم فوق با توجه به مزایای عمده، بسرعت متداول و با استقبال کاربران کامپیوتر مواجه شده است .
اکثر کامپیوترها در حال حاضر از حافظه های محدود با ظرفیت 64 ، 128 و یا 256 مگابایت استفاده می نمایند.
مثلا" در صورتیکه کاربری بطور همزمان ، سیستم عامل ، یک واژه پرداز ، مرورگر وب و یک برنامه برای ارسال نامه الکترونیکی را فعال نماید ، 32 و یا 64 مگابایت حافظه، ظرفیت قابل قبولی نبوده و کاربران قادر به استفاده از خدمات ارائه شده توسط هر یک از نرم افزارهای فوق نخواهند بود.
با ارتقای حافظه و افزایش آن ممکن است مشکل فوق در محدوده ای دیگر مجددا" بروز نماید.
یکی دیگر از راهکارهای موجود در این زمینه ، استفاده از حافظه مجازی است در تکنولوژی حافظه مجازی از حافظه های جانبی ارزان قیمت نظیر هارد دیسک استفاده می گردد.
عملیات ارسال اطلاعات از حافظه اصلی بر روی هارد دیسک بصورت خودکار انجام می گیرد.
[ویرایش] مسئله سرعت سرعت خواندن و نوشتن اطلاعات بر روی هارد دیسک بمراتب کندتر از حافظه اصلی کامپیوتر است .
در چنین حالتی سرعت سیستم بشدت افت کرده و عملا" در برخی حالات غیرقابل استفاده می گردد.
محل نگهداری اطلاعات بر روی هارد دیسک را یک Page file می گویند.
در فایل فوق ، صفحات مربوط به حافظه اصلی ذخیره و سیستم عامل در زمان مورد نظر اطلاعات فوق را مجددا" به حافظه اصلی منتقل خواهد کرد.
در ماشین هائی که از سیستم عامل ویندوز استفاده می نمایند ، فایل فوق دارای انشعاب swp است .
[ویرایش] پیکربندی حافظه مجازی ویندوز 98 دارای یک برنامه هوشمند برای مدیریت حافظه مجازی است .
در بخش Advanced setting ، گزینه Virtual memory را انتخاب نمائید.
با نمایش پنجره مربوط به Virtual Memory ، گزینه "Let me specify my own virtual memory setting" را انتخاب تا زمینه مشخص نمودن مکان و طرفیت حداقل و حداکثر فایل مربوط به حافظه مجازی فراهم گردد..در فیلد Hard disk محل ذخیره نمودن فایل و درفیلد های دیگر حداقل و حداکثر ظرفیت فایل را بر حسب مگابایت مشخص نمائید.
تعریف اندازه ائی به میزان دو برابر حافظه اصلی کامپیوتر برای حداکثر میزان حافظه مجازی توصیه می گردد.
میزان حافظه موجود هارد دیسک که برای حافظه مجازی در نظر گرفته خواهد شد بسیار حائر اهمیت است .
در صورتیکه فضای فوق بسیار ناچیز انتخاب گردد ، همواره با پیام خطائی مطابق "Out of Memory" ، مواجه خواهیم شد.
یعنی در صورتیکه حافظه اصلی موجود 16 مگابایت باشد ، حداکثر حافظه مجازی را 32 مگابایت در نظر گرفت .
یکی از روش هائی که بمنظور بهبود کارائی حافظه مجاری پیشنهاد شده است ، ( مخصوصا" در مواردیکه حجم بالائی از حافظه مجازی مورد نیاز باشد ) در نظر گرفتن ظرفیت یکسان برای حداقل و حداکثر انداره حافظه مجازی است .
در چنین حالتی کارآئی سیستم بهبود پیدا خواهد کرد .
یکی دیگر از فاکتورهای مهم در کارآئی حافظه مجازی ، محل فایل مربوط به حافظه مجازی است .
روش فوق در مواردیکه از حافظه مجازی در مقیاس بالائی استفاده می گردد ، کارآئی مطلوبی را بدنبال خواهد داشت.
سیستم فوق با توجه به مزایای عمده، بهسرعت متداول و با استقبال کاربران کامپیوتر مواجه شده است .
اکثر کامپیوترها در حال حاضر از حافظه های محدود با ظرفیت 64 ، 128 و یا 256 مگابایت استفاده میکنید.
حافظه موجود در اکثر کامپیوترها بمنظور اجرای چندین برنامه بهصورت همزمان توسط کاربر ، پاسخگو نبوده و با کمبود حافظه مواجه خواهیم شد.
مثلا" در صورتیکه کاربری بهطور همزمان ، سیستم عامل ، یک واژه پرداز ، مرورگر وب و یک برنامه برای ارسال نامه الکترونیکی را فعال کنید ، 32 و یا 64 مگابایت حافظه، ظرفیت قابل قبولی نبوده و کاربران قادر به استفاده از خدمات ارایه شده توسط هر یک از نرم افزارهای فوق نخواهند بود.
با ارتقای حافظه و افزایش آن ممکن است مشکل فوق در محدوده ای دیگر مجددا" بروز کند.
یکی دیگر از راهکارهای موجود در این زمینه ، استفاده از حافظه مجازی است .
در تکنولوژی حافظه مجازی از حافظه های جانبی ارزان قیمت نظیر هارد دیسک استفاده میشود.
در چنین حالتی اطلاعات موجود در حافظه اصلی که کمتر مورد استفاده قرار گرفته اند ، از حافظه خارج و در محلی خاص بر روی هارد دیسک ذخیره میگردند.
عملیات ارسال اطلاعات از حافظه اصلی بر روی هارد دیسک بهصورت خودکار انجام میگیرد.
مساله سرعت سرعت خواندن و نوشتن اطلاعات بر روی هارد دیسک بهمراتب کندتر از حافظه اصلی کامپیوتر است.
در صورتیکه سیستم مورد نظر دارای عملیاتی حجیم در رابطه با حافظه مجازی باشد ، کارآیی سیستم بهشدت تحت تاثیر قرار خواهد گرفت .
در چنین مواردی لازم است که نسبت به افزایش حافظه موجود در سیستم ، اقدام شود.
در مواردی که سیستم عامل مجبور به جابهجایی اطلاعات موجود بین حافظه اصلی و حافظه مجازی باشد ( هارد دیسک ) ، باتوجه به تفاوت محسوس سرعت بین آنها ، مدت زمان زیادی صرف عملیات جایگزینی میشود.
در چنین حالتی سرعت سیستم بهشدت افت کرده و عملا" در برخی حالات غیرقابل استفاده میشود.
محل نگهداری اطلاعات بر روی هارد دیسک را یک Page file میگویند.
در ماشین هائی که از سیستم عامل ویندوز استفاده میکند ، فایل فوق دارای انشعاب swp است .
پیکربندی حافظه مجازی ویندوز 98 دارای یک برنامه هوشمند برای مدیریت حافظه مجازی است .
در برخی موارد لازم است که پیکربندی مدیریت حافظه مجازی بهصورت دستی انجام گیرد.
برای انجام این کار در ویندوز 98 ، گزینه System را از طریق Control panel انتخاب و در ادامه گزینه Performance را فعال کنید.
در بخش Advanced setting ، گزینه Virtual memory را انتخاب کنید.
با نمایش پنجره مربوط به Virtual Memory ، گزینه "Let me specify my own virtual memory setting" را انتخاب تا زمینه مشخص کردن مکان و طرفیت حداقل و حداکثر فایل مربوط به حافظه مجازی فراهم شود.
در فیلد Hard disk محل ذخیره کردن فایل و درفیلد های دیگر حداقل و حداکثر ظرفیت فایل را بر حسب مگابایت مشخص کنید.
برای مشخص کردن حداکثر فضای مورد نیاز حافظه مجازی میتوان هر اندازه ای را مشخص کرد .
تعریف اندازهایی به میزان دو برابر حافظه اصلی کامپیوتر برای حداکثر میزان حافظه مجازی توصیه میشود.
میزان حافظه موجود هارد دیسک که برای حافظه مجازی در نظر گرفته خواهد شد بسیار حایز اهمیت است .
در صورتیکه فضای فوق بسیار ناچیز انتخاب شود ، همواره با پیام خطائی مطابق "Out of Memory" ، مواجه خواهیم شد.
پیشنهاد میشود نسبت حافظه مجازی به حافظه اصلی دو به یک باشد.
یعنی در صورتیکه حافظه اصلی موجود 16 مگابایت باشد ، حداکثر حافظه مجازی را 32 مگابایت در نظر گرفت .
یکی از روشهایی که بهمنظور بهبود کارایی حافظه مجاری پیشنهاد شده است ، ( مخصوصا" در مواردیکه حجم بالایی از حافظه مجازی مورد نیاز باشد ) در نظر گرفتن ظرفیت یکسان برای حداقل و حداکثر انداره حافظه مجازی است .
در چنین حالتی در زمان راه اندازی کامپیوتر، سیستم عامل تمام فضای مورد نیاز را اختصاص و در ادامه نیازی با افزایش آن همزمان با اجرای سایر برنامهها نخواهد بود.
در چنین حالتی کارآیی سیستم بهبود پیدا خواهد کرد .
یکی دیگر از فاکتورهای مهم در کارآیی حافظه مجازی ، محل فایل مربوط به حافظه مجازی است .
در صورتیکه سیستم کامپیوتری دارای چندین هارد دیسک فیزیکی باشد ، ( منظور چندین درایو منظقی نیست ) میتوان حجم عملیات مربوط به حافظه مجازی را بین هر یک از درایوهای فیزیکی موجود توزیع کرد.
روش فوق در مواردیکه از حافظه مجازی در مقیاس بالایی استفاده میشود ، کارآیی مطلوبی را بهدنبال خواهد داشت .
حافظه مجازی حافظه مجازی یکی ازبخش های متداول در اکثر سیستم های عامل کامپیوترهای شخصی است .
سیستم فوق با توجه به مزایای عمده، بهسرعت متداول شده و با استقبال کاربران کامپیوتر مواجه شده است .
حافظه موجود در اکثر کامپیوترها به منظور اجرای چندین برنامه بصورت همزمان توسط کاربر ، پاسخگو نبوده و با کمبود حافظه مواجه خواهیم شد.
مثلا" در صورتیکه کاربری بطور همزمان ، سیستم عامل ، یک واژه پرداز ، مرورگر وب و یک برنامه برای ارسال نامه الکترونیکی را فعال نماید ، 32 یا 64 مگابایت حافظه، ظرفیت قابل قبولی نبوده و کاربران قادر به استفاده از خدمات ارائه شده توسط هر یک از نرم افزارهای فوق نخواهند بود.
در تکنولوژی حافظه مجازی از حافظه های جانبی ارزان قیمت نظیر هارد دیسک استفاده می گردد.
بدین ترتیب بخشی از حافظه اصلی آزاد و زمینه استقرار یک برنامه جدید در حافظه فراهم خواهد شد.
مسئله سرعت سرعت خواندن و نوشتن اطلاعات بر روی هارد دیسک به مراتب کندتر از حافظه اصلی کامپیوتر است .
در صورتیکه سیستم مورد نظر دارای عملیاتی حجیم در رابطه با حافظه مجازی باشد ، کارآئی سیستم به شدت تحت تاثیر قرار خواهد گرفت .
در چنین حالتی سرعت سیستم به شدت افت کرده و عملا" در برخی حالات غیرقابل استفاده می گردد.
محل نگهداری اطلاعات بر روی هارد دیسک را یکPage file می گویند.
در ماشین هائی که از سیستم عامل ویندوز استفاده می نمایند ، فایل فوق دارای انشعابswp است .
پیکربندی حافظه مجازی ویندوز 98وXP دارای برنامه هوشمند مدیریت حافظه مجازیهستند .
برای انجام این کار در ویندوز 98 ، گزینهSystem را از طریقControl panel انتخاب و در ادامه گزینهPerformance را فعال نمائید.
در بخشAdvanced setting ، گزینهmemoryVirtual را انتخاب نمائید.
با نمایش پنجره مربوط بهMemoryVirtual ، گزینه "Let me specify my own virtual memorysetting" را انتخاب تا زمینه مشخص نمودن مکان و ظرفیت حداقل و حداکثر فایل مربوط به حافظه مجازی فراهم گردد.
در فیلدdiskHard محل ذخیره نمودن فایل و درفیلد های دیگر حداقل و حداکثر ظرفیت فایل را بر حسب مگابایت مشخص نمائید.
تعریف اندازه ای به میزان دو برابر حافظه اصلی کامپیوتر(RAM) برای حداکثر میزان حافظه مجازی توصیه می گردد.
در ویندوزXP شما می توانید در ابتدا بر رویMy Computer راست کلیک کنید و سپس گزینه Properties را انتخاب کنید.
شکلxp_right_click_my_computer.jpg سپس در پنجرهAdvancedو در قسمتPerformance گزینه Setting را انتخاب کنید.
شکلxp_system_properties.jpg در پنجره ای که نمایان می شود مجدداً گزینهAdvanced را انتخاب کرده و در این صفحه نیز بر روی دکمهchange کلیک کنید تا صفحه تنظیماتVirtual memory نمایان شود .
شکلxp_performance_options.jpg در صورتی که می خواهید درایوی غیر از درایو پیش فرض که معمولاً درایوC کامپیوتر است به عنوان درایو حافظه مجازی انتخاب شود بر روی نام آن کلیک کرده و در قسمت پائین پنجره گزینهCustom size را انتخاب کنید.
و مقادیر مورد نظر تان را در قسمت هایInitial size وMaximum size وارد کنید.
سپس گزینهSet را برای ثبت اطلاعات انتخاب کنید.
در صورتی که می خواهید درایو جاری شما که از آن به عنوان حافظه مجازی استفاده می کنید غیر فعال شود می توانید گزینه no paging file را انتخاب کرده و سپس دکمهSet را انتخاب کنید.
xp_set_virtual_memory_system_managed.jpg البته توجه داشته باشید که باید یکی از درایو های دیگر را برای استفاده در این قسمت تعیین کنید .
بهتر است برای دستیابی به سرعت بالاتر از درایوی استفاده کنید که فضای خالی بیشتری در اختیار دارد.
xp_set_virtual_memory_manual.jpg میزان حافظه موجود هارد دیسک که برای حافظه مجازی در نظر گرفته خواهد شد بسیار حائز اهمیت است .
یکی از روش هائی که به منظور بهبود کارآیی حافظه مجازی پیشنهاد شده است ، ( مخصوصا" در مواردیکه حجم بالائی از حافظه مجازی مورد نیاز باشد ) در نظر گرفتن ظرفیت یکسان برای حداقل و حداکثر اندازه حافظه مجازی است .
روش فوق در مواردیکه از حافظه مجازی در مقیاس بالائی استفاده می گردد ، کارآئی مطلوبی را بدنبال خواهد داشت .
تاثیر حافظه اصلی بر کارآئی سیستم در هر کامپیوتر از مجموعه ای منابع سخت افزاری و نرم افزاری استفاده می گردد که هر یک دارای جایگاه مختص به خود می باشند .
سیستم عامل ، مسئولیت مدیریت منابع موجود در یک کامپیوتر را برعهده دارد .
مجموعه پتانسیل های سخت افزاری و نرم افزاری موجود و نحوه مدیریت آنان توسط سیستم عامل ، میزان مفید بودن و کارآئی یک کامپیوتر را مشخص می نماید.
حافظه اصلی ( RAM ) یکی از مهمترین منابع سخت افزاری موجود در کامپیوتر است که با توجه به نقش محوری آن در اجرای برنامه های کامپیوتری ، همواره در معرض پرسش های فراوانی از جانب کاربران کامپیوتر است.
به عنوان نمونه ، شاید این سوال برای شما نیز مطرح شده باشد که تاثیر افزایش حافظه اصلی بر سرعت کامپیوتر چیست و در صورت افزایش حافظه اصلی ، آیا کارائی سیستم نیز به همان میزان افزایش خواهد یافت ؟
در این مطلب به بررسی این موضوع خواهیم پرداخت که چرا حافظه اصلی دارای یک نقش مهم و غیرقابل انکار در کارائی سیستم است .
ادامه بحث را با در نظر گرفتن دو فرضیه دنبال می نمائیم .
اول این که بر روی کامپیوتر از یکی از نسخه های سیستم عامل ویندوز 2000 ، XP و یا 2003 سی و دو بیتی استفاده می گردد و دوم این که از یک کامیپوتر مدل جدید با پتانسیل های سخت افزاری مناسب ، استفاده می شود .
هر سیستم عامل از یک مدل خاص برای مدیریت منبع ارزشمند حافظه اصلی استفاده می نماید .
نحوه مدیریت حافظه توسط سیستم عامل ، یکی از شاخص های مهم ارزیابی موفقیت یک سیستم عامل محسوب می گردد .
ویندوز نیز به عنوان یک سیستم عامل از این قاعده مستثنی نمی باشد.
ویندوز و مدیریت حافظه زمانی که اولین نسخه ویندوز ارائه شده بود ، امکان مدیریت حافظه اندکی توسط آن وجود داشت .
در آن زمان ، حافظه گران بود و حتی در صورتی که استفاده کنندگان توان مالی تهیه آن را داشتند ، کامپیوترهای آن دوره قادر به استفاده از آن نبودند .
این وضعیت تا اواسط دهه 90 میلادی ادامه داشت و بسیاری از افرادی که دارای کامپیوتر بودند ، صرفا" از 8 مگابایت حافظه اصلی استفاده می کردند که امکان ارتقاء آن به حداکثر 64 مگابایت وجود داشت .
قیمت بالا و ظرفیت بردهای اصلی سیستم ( مادر برد ) ، از جمله محدودیت های اساسی کامپیوترها در گذشته ای نه چندان دور است که قطعا" هم اینک این وضعیت بهبود یافته است و استفاده کنندگان کامپیوتر از این بایت کمتر دچار مشکل می گردند.
در اکثر نسخه های ویندوز امکان استفاده از حافظه مجازی وجود دارد .
با توجه به این که قیمت حافظه هارد دیسک نسبت به حافظه اصلی بمراتب کمتر است ، ویندوز از فضای ذخیره سازی هارد دیسک به منظور جبران کمبود حافظه اصلی سیستم استفاده می نماید .
حافظه مجازی ، یک راه حل مناسب به منظور غلبه بر محدودیت حافظه اصلی است که دارای چالش های مختص به خود نیز می باشد : کند بودن سرعت هارد دیسک نسبت به حافظه اصلی : هارد دیسک دارای سرعتی بمراتب پائین تر ( کندتر ) نسبت به حافظه اصلی است .
دستیابی به حافظه اصلی بر اساس نانوثانیه و سرعت هارد دیسک بر اساس میلی ثانیه اندازه گیری می شود .
عدم امکان استفاده مستقیم از حافظه مجازی : یکی دیگر از مسائل در ارتباط با حافظه مجازی ، عدم امکان استفاده مستقیم از آن است .
مثلا" فرض کنید که یک صفحه اطلاعات از حافظه اصلی بر روی هارد دیسک ( حافظه مجازی ) نوشته گردد .
در صورتی که در ادامه به اطلاعات موجود در این صفحه نیاز باشد ، کامپیوتر نمی تواند مستقیما" به آن دستیابی داشته باشد .
در چنین مواردی ، می بایست قبل از این که کامپیوتر بتواند از داده استفاده نماید ، داده درون حافظه اصلی مستقر گردد .
به فرآیند فوق paging گفته می شود .
Paging باعث کند شدن یک سیستم می گردد چراکه کامپیوتر مجبور است در زمانی که داده از هارد دیسک به درون حافظه اصلی منتقل می گردد ، عملیات جاری خود را متوقف و منتظر بماند .
در واقع ، علت اصلی استفاده از حافظه مجازی نیاز کامپیوتر به حافظه و عدم وجود ظرفیت لازم برای تامین خواسته های سیستم عامل است .
در صورتی که حافظه سیستم تکمیل شده باشد ، کامپیوتر نمی تواند یک نسخه از صفحه داده را از هارد دیسک به درون حافظه اصلی منتقل نماید .
در چنین مواردی فضائی برای استقرار داده در حافظه اصلی وجود نداشته و سیستم عامل می بایست یک صفحه داده موجود در حافظه اصلی را به حافظه مجازی منتقل نماید تا فضای لازم برای داده ئی که به وجود آن نیاز است ، ایجاد گردد .
( داده ئی که می بایست از هارد دیسک به درون حافظه اصلی کامپیوتر منتقل شود ) paging ، فرآیندی است که می بایست مدیریت گردد .
کامپیوتر می بایست از مکانی در حافظه اصلی به منظور ثبت وضعیت استفاده از حافظه استفاده نماید .
بنابراین ، سیستم می بایست قسمتی از حافظه خود را برای ثبت وضعیت صفحات و این که کدام صفحه در حافظه اصلی و کدام صفحه در حافظه مجازی است ، در نظر بگیرد.
علاوه بر این ، سیستم از سیکل های متعدد پردازنده ( CPU ) به منظور انتقال داده بین حافظه اصلی و حافظه مجازی استفاده می نماید .
در صورتی که نگرانی خاصی در شاید بهترین گزینه این باشد که به اندازه ای حافظه به سیستم اضافه گردد تا درصد استفاده از حافظه مجازی به حداقل مقدار ممکن کاهش یابد .
با این که گزینه فوق ممکن است به عنوان یک راه حل عملی باشد ، ولی نمی توان زمینه استفاده از حافظه مجازی را از ویندوز سلب نمود .
ویندوز بگونه ای طراحی شده است که بتواند از حافظه مجازی استفاده نماید و سیستم عامل این انتظار را دارد که حافظه مجازی موجود و برای وی در دسترس باشد .
هر اندازه که به سیستم حافظه فیزیکی اضافه گردد ، وابستگی آن به حافظه مجازی کمتر خواهد شد.
شاید از بحث فوق اینگونه برداشت شود که علت اصلی استفاده از حافظه مجازی ، جبران کمبود حافظه اصلی است .
برداشت فوق با این که درست است ولی بیانگر تمامی ابعاد موضوع نمی باشد و تنها نیمی از حقیقت را شامل می شود .
به عنوان یک قانون ، شرکت مایکروسافت توصیه می نماید که پیکربندی حافظه مجازی بر اساس میزان حافظه فیزیکی ( RAM ) نصب شده بر روی ماشین ، انجام شود و حداقل ، حافظه مجازی 5 / 1 برابر حافظه اصلی باشد .
این بدان معنی است که اگر ماشینی دارای 512 مگابایت حافظه اصلی باشد ، ویندوز انتظار دارد که بتواند به حداقل 768 مگابایت حافظه مجازی دستیابی داشته باشد .
فرض کنید که به این نتیجه رسیده اید که 512 مگابایت حافظه اصلی نیاز شما را تامین نمی نماید و تصمیم می گیرید حافظه ماشین خود را به یک گیگابایت ارتقاء دهید.با این کار شما نیاز ویندوز به حافظه مجازی را هم افزایش داده اید.در چنین شرایطی ویندوز این انتظار را دارد که بتواند به حافظه مجازی با ظرفیتی معادل 5 / 1 گیگابایت دستیابی داشته باشد .
علیرغم این که ظرفیت Pagefile ماشین ( فایلی که از آن به عنوان حافظه مجازی استفاده می شود ) افزایش می یابد، این بدان معنی نخواهد بود که ماشین از pagefile به سختی استفاده می نماید .
عموما" عکس این موضوع صادق است .
نصب حافظه بیشتر ، باعث می شود که ویندوز کمتر مجبور به paging گردد .
حتی اگر ویندوز همچنان مجبور به استفاده از حافظه مجازی باشد ، حافظه اضافه نصب شده این اطمینان را ایجاد می نماید که page مرتبط با برنامه در حال اجراء ، در حافظه اصلی موجود است و سیستم عامل به دلیل کمبود حافظه مجبور نخواهد بود که آن را بر روی فضای ذخیره سازی حافظه جانبی منتقل نماید .
بدین ترتیب برنامه ها با سرعت بیشتری اجراء شده و در زمانی مطلوب نیاز کاربران را تامین و در نهایت کارآئی سیستم افزایش خواهد یافت .
آیا محدودیتی در ارتباط با حافظه وجود دارد ؟
در ابتدای بحث اشاره گردید که اطلاعات موجود در این مقاله صرفا" برای سیستم های 32 بیتی مفید بوده و در ارتباط با سیستم های 64 بیتی نمی باشد .
حقیقت این است که حتی سیستم های 64 بیتی نیز در ارتباط با حافظه مجازی می باشند ولی نسخه های 32 بیتی و 64 بیتی بطور کامل از مدل های حافظه مختلفی استفاده می نمایند .
سیستم های 32 بیتی صرفا" دارای 32 بیت بوده و می توانند حداکثر 4 گیگابایت حافظه اصلی را آدرس دهی نمایند .
یک سیستم 64 بیتی از لحاظ تئوری قادر به آدرس دهی 16 اگزابایت ( بیش از 16،000،000 گیگابایت حافظه RAM ) می باشد.
تولید یک ماشین که بتواند از این میزان حافظه حمایت نماید در حال حاضر هزینه بالائی داشته و مقرون به صرفه نمی باشد .
اکثر سیستم های 64 بیتی موجود میزان حافظه اصلی را محدود بین 8 گیگابایت و 256 ترابایت نموده اند .
محدودیت فضای آدرس دهی 4 گیگابایتی برای ماشین های 32 بیتی که برروی آنان ویندوز نصب شده است ، چه پیامدهائی را به دنبال دارد ؟
ویندوز بگونه ای طراحی شده است تا بتواند بطور کامل 4 گیگابایت حافظه را آدرس دهی نماید .
ویندوز فضای چهار گیگابایتی را به دو بخش مساوی تقسیم می نماید .
یکی از بخش ها توسط سیستم عامل و از بخش دیگر به منظور User mode ( یا برنامه ها ) استفاده می گردد .
در صورت نیاز می توان پیکربندی پیش فرض فوق را تغییر داد .
بدین منظور از فایل Boot.ini استفاده می گردد .
به عنوان نمونه می توان در فایل فوق از سوئیچ 3GB / استفاده نمود .
بدین ترتیب ویندوز پیکربندی پیش فرض خود را تغییر و از یک فضای یک گیگابایتی برای خود و از یک فضای 3 گیگاباتیی برای user mode استفاده می نماید .
بدین ترتیب ویندوز می تواند مدیریت بهتری را به منظور تامین خواسته برنامه های بزرگی نظیر Exchange server انجام دهد(هر گز از سوئیچ اشاره شده بر روی Small Business Server و یا یک کنترل کننده domain استفاده نگردد) .